AbfrageSenderEmpfänger Kategorie: Programmierung (von JensD - 25.08.2003 14:14) | |
Als Antwort auf Re: Geräteadresse TRX433 von CTC - 22.08.2003 21:53
| |
Hallo 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 { 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 CTC - 25.08.2003 16:30) Re: AbfrageSenderEmpfänger (von JensD - 26.08.2003 11:08) |