Forum: Mikrocontroller und Digitale Elektronik LPC936 - SPI


von Michael_W (Gast)


Lesenswert?

Servus,

Muss gerade für die Schule ein SPI Programm schreiben. Ich hab mir 
überlegt das ich einfach nen Wert von einem Controller zu nem anderen 
rüberschicke und je nachden wird eine LED ein bzw. ausgeschaltet. Befehl 
wird bei Tastendruck (Interrupt) gesendet.
Verwenden tue ich das Humer-Board-LPC936 (http://www.humerboard.at/)

Hab jetzt die 2 Programme geschrieben aber bringe es nicht zu laufen. 
Außerdem weiß ich nicht ob das Empfängerprogramm überhaupt richtig ist. 
Das Senderprogramm sollte eigentlich passen.


Sender:

.
.
.
  _SS = 0;   //Steuerleitung auf Signal "0"

  if(LEDon == 0)
  {
    LEDon = 1;
    SPDAT = 0xFE;   //Werd der gesendet wird

    while((SPSTAT & 0x80) == 0x00);   //Übertragung abgeschlossen

    SPSTAT = 0xFF; // SPIF zuruecksetzen
  }
  else
  {
    LEDon = 0;
      SPDAT = 0x01;  //Werd der gesendet wird

    while((SPSTAT & 0x80) == 0x00);   //Übertragung abgeschlossen

    SPSTAT = 0xFF; // SPIF zuruecksetzen
  }
  _SS = 1; //Steuerleitung auf Signal "1"
.
.
.


Empfänger:

.
.
.
        while(1)
  {
    if(_SS == 0)
    {
      while((SPSTAT & 0x80) == 0x00);   // Warten bis die Übertragung 
abgeschlossen
      SPSTAT = 0xFF; // SPIF zuruecksetzen

      recData = SPDAT;

      if(LED == LEDoff)
      {
        P2 &= recData;
      }
      else
      {
         P2 |= recData;
      }
    }
  }
.
.
.


Kann mir jemand nen Tipp geben oder sagen warum es nicht funktioniert?
Danke im voraus.


mfg Michael

von Michael_W (Gast)


Lesenswert?

Hab gerade gesehen das ich mich oben verschrieben habe. Meinte natürlich 
"//Wert der gesendet wird" is mir beim runterkopieren des Kommentars 
garnicht aufgefallen. :S

lg Michael

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.