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

Re: AbfrageSenderEmpfänger Kategorie: Programmierung (von CTC - 25.08.2003 16:30)
Als Antwort auf AbfrageSenderEmpfänger von JensD - 25.08.2003 14:14

Hallo

Kommentar ist im Programm eingefügt.
Ciao....



>
> 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 läuft 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
>                        sleep 5000;
>                        }
>           }
>           else
>           {

Hier sendet dein Programm permanent die Sendeaufforderung an 133
Wenn 133 überhaupt antwortet (was nicht sicher ist da er ja permanet Daten empfängt), dann hört
ihn 100 nicht, weil er ja dauernd sendet. Es fehlt also ein Delay.
Würde ich mal sagen wenn ich so kurz drübersehe


>             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:

Re: AbfrageSenderEmpfänger (von JensD - 26.08.2003 11:08)