Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Synchronisation Kategorie: Programmierung (von JensD - 25.08.2003 13:59)
Als Antwort auf Re: Synchronisation von André H. - 22.08.2003 12:19

Hallo Andre`

Habe für meine TRX433 Sender/Empfänger folgende Routinen geschrieben. Gewollt ist, das der Sender
nur sendet nach Aufforderung durch den Empfänger welcher wiederum kontrolliert ob die korrekte
Senderadresse(133) verwendet wurde. Der Sender bekommt auch die Sendeaufforderung(LCD Anzeige)
allerdings sendet er nicht zurück bzw. der Empfänger gibt mir keine Ausgabe auf LCD. Die Syntax ist
laut Compiler soweit ok. Was ist falsch....?

Schon ma Danke im voraus

Empfängerseite TRX433:

thread main
{
.........
........
..........

loop
        {
          if ports.get(trx.DATA) == HI    //Frame da?
          {
            trx.TRX_RECEIVE();  //Hol dir den Frame

                       if trx.ADDR == 133      //Sender hat TRX Adresse 133
                       {
                       s = "";

                       B=trx.ADDR;
                       str.putint(s,B);
                       str.putstring(s,"/");

                       B=trx.DB6;
                       str.putint(s,B);
                       str.putstring(s,"/");

                       lcd.clear();
                       lcd.print(s, str.length(s));   //hier sollte Ausgabe 133/6/ auf LCD stehen
                       sleep 5000;
                       }
          }
          else
          {
            trx.ADDR=133;           // Sendeaufforderung an Sender mit trx.ADDR 133
            trx.DB0=trx.DB0+1;
            trx.TRX_SEND();
          }
        }
}


Senderseite TRX433:

thread main
{
..............
...........
.................

loop
        {
          if ports.get(trx.DATA) == HI    //Frame angekommen?
          {
//          Hol dir den Frame
            trx.TRX_RECEIVE();
             
            if trx.ADDR == 100     //Empfängeradresse 100
              {
              s = "";
//            Anzeige TXADDR (zur Kontrolle)
              B=trx.ADDR;
              str.putint(s,B);
              str.putstring(s,"/");

              lcd.clear();
              lcd.print(s, str.length(s));     //Ausgabe 100/ auf LCD

// Jetzt soll Sender seine Daten abschicken
              trx.ADDR=100;           //Adresse des Empfängers(immer 100)
              trx.DB0=trx.DB0+1;
              trx.DB6=6;
              trx.TRX_SEND();
              sleep 500;
              }
           }
           else
           {
           wait ports.get(trx.DATA) == HI;    //Warte auf Sendeaufforderung
           }
         }
}


    Antwort schreiben


Antworten: