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