Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > > Hallo pocolocos, > > > > > Ich bilde mir ein, irgendwo etwas über ein Threading-Problem im Zusammenhang mit dem TRX433 > > > gelesen zu haben - habe das Forum auch durchsucht - bin nur leider nicht fündig geworden. > > > > > > Zu meiner Frage: > > > Ist es notwendig während, bzw. vor TRX.RECEIVE() oder TRX.SEND() andere Threads zu stoppen? > > > > Es ist kein Threadingproblem, sondern eher ein Timing-Problem, wenn viele Threads laufen. > > Das Modul trx.c2 ist nämlich komplett in C2 geschrieben. > > Jedoch kann dies für das Tranceivermodul zu langsam sein, da es ein sehr enges > > Timeout wegen seines 120ms Watchdogs besitzt. > > Wenn Du den Thread jedoch kurzzeitig mit Prio 255 laufen lässt, > > sollte es zu keinen Problemen kommen. > > Also z.B. so: > > <code>... > > run255; > > yield; > > // TRX-Zugriff > > //... > > resume; > > ...</code> > > > > Das einzige, was man hier bei Multithreading beachten muß, ist, daß > > man das Modul nur aus einem Thread ansteuert. > > Ansonsten sollte man ein explizites Capture verwenden. > > > > MfG André H. > > > > hmmm.. > > yield? > lt. Handbuch gibt der aktuelle Thread mit yield die Programmausführung sofort an den nächsten > Thread ab... (?) > > Nachdem die anderen Threads nicht wirklich zeitkritisch sind, hab ich sie für die Dauer der > trx.send / receive gestoppt -> tut auch wunderbar > > Danke für den Hinweis > > mfg > > pocolocos