Hallo.
Ich versuche nun schon seit Wochen Daten mit meinen PIC zu senden. Aber
es läuft einfach nicht.
Ich habe zwei Taster über die ich jeweils ein langes Datenpaket
versenden möchte. Ob ich das Paket so zerstückeln darf, weiß ich zwar
auch noch nicht, aber das ist erst mal nebensächlich. Es soll ein
serielles Datenpaket für ein XBee Funkmodul sein.
Zur Zeit sieht es noch so aus:
Wenn ich einen Taster betätige, fängt der Versand an.
0x7E und 0x00 wird versendet, doch dann wird PIR1 nicht gelöscht. Und
ich hänge in der senden Schleife fest.
Kann mir vielleicht jemand einen Tipp geben und sich ggf meinen Code mal
anschauen, ob das so überhaupt funktioniert.
MfG
Das mit call sowie goto ist nicht weiter schlimm, das passt schon.
Was mir aufgefallen ist, weiß aber nicht, ob das der Grund ist,
Status, RP1 ist undefiniert, also könntest du in die falschen Register
schreiben, probier mal das Statusregister, goto init, oder auch da,
mit einem clrf status zu löschen. Sonst müsste man die Initialisierung
genauer nachschauen. Mir sind da schon kleine Fehler aufgefallen, wie
z.B. TX als Input declarieren, aber eins nach dem anderen.
Danke für eure Tipps!
Habe ich gleich mal umgesetzt. Nun werden alle Daten gesendet. Aber ich
glaube die werden nur so rausgeschleudert. Denn, wenn ich dies im MPLAB
simuliere bleibt das Bit TRMT nach dem ersten senden auf low gesetzt.
Dann dürfte eigentlich nicht weitergesendet werden. Merkwürdig.
Habe ich das, mit dem call und dem return, richtig umgesetzt?
Schon klar, daß es den Stack-Überlauf gibt, bloß mit dieser
Programmierung ist es egal, ob ein Stack-Überlauf passiert oder nicht,
das programm macht das identische, gleich ob ein return oder goto
verwendet wird. Das in
der realen HW, im Simulator kann das ein Unterschied sein.