Hallo, aus irgendeinem Grund werden Frequenzen aus meiner Tabelle übersprungen und kann mir einfach nicht erklären, wo der Fehler liegt.
So ganz bin ich noch nicht durchgestiegen, aber die Warteschleife um Prellen entgegenzuwirken sieht irgendwie verdächtig aus. So die Ziele der bedingten Sprünge meine ich.
Wie wäre dein Vorschlag, weil habe es so gelernt eine Warteschleife zu erstellen.
Im Init sollten für die Interrupts wichtige Register schon vor dem Freigeben der Interrupts initialisiert sein. Mag sein, dass das gut geht, weil der Timer noch etwas braucht, bis der erste Interrupt kommt, trotzdem irgendwie unschön.
Sowas wie
1 | warte1: djnz R3,warte1 ;Warteschleife um Prellen entgegenzuwirken |
2 | djnz R4,warte1 ;Warteschleife um Prellen entgegenzuwirken |
hat man versucht mir beizubringen ;-)
Habde eine Tipps berücksichtigt, aber leider werden immer noch nicht alle Werte hineingeladen. Aber beim Hochzählen des Registers ist aber eigentlich auch kein Fehler.
Wieso rufst Du bei einem Index von 6 schon nicht mehr das Auslesen aus der Tabelle auf ? So dürfte die 64 am Ende nie genutzt werden.
Ja stimmt, aber dennoch werden die Werte davor ebenso nicht berücksichtigt.
Wenns die Tools inzwischen nicht für lau geben würde, müsste man echt mal jammern... Such mal nach "8051 Simulator" und du findest sowas: https://www.edsim51.com/ BTW muss das eigentlich sein, mit dem neuen Namen jeden Tag wie im Beitrag "Look-up Table nächsten Wert laden für 8051 Assembler" Das verwirrt doch nur unnötig....
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.