Ich habe ein großes Problem mit meinen Interruptfunktionen. Wenn ich von meinem "externen Interrupt 3" aus in meine SIGNAL (SIG_OUTPUT_COMPARE3A) Schleife springe, dann wird die dort drin stehende "Wartezeit" beachtet, springt der Controller hingegen vom "externen Iterrupt 0" aus in die selbe Schleife, dann wird die Wartezeit einfach ignoriert. Weiß jemand weiter?? Anbei der relevante Codeauszug in c. Danke im Voraus René
Achja, demnächst bitte einen kürzeren Betreff eintippen, dann bekommst du vermutlich auch mehr Antworten. 8-P ...
Hallo Hannes, kannst du mir da weiterhelfen? Ich verstehe den thread nicht so ganz. Es geht hier ja nur um die Auswahl des externen Interrupts. Wenn ich die Zeile SIGNAL (SIG_INTERRUPT3) in SIGNAL (SIG_INTERRUPT0) ändere, dann wird die Wartezeit einfach ignoriert. Kann das sein?? Vielen Dank im Voraus Ciao René
Ich werde dir bei deinem kryptischen Bezeichnern in BASCOM nicht helfen können. Ich schreibe in Assembler, das ist einfacher und übersichtlicher, da gelten nur die Informationen des Datenblattes des Controllers. Im Datenblatt sind die AVR-Architektur und alle I/O-Features incl. I/O-Register und deren Bits ausführlich und eindeutig beschrieben. Auch eine für den jeweiligen Typ gültige Liste der ASM-Befehle mit Kurzbeschreibung ist im Datenblatt enthalten. Es gibt also (für mich) keinen Grund, mich auch noch mit kryptischen Bezeichnungen und Config-Anweisungen von BASCOM zu befassen. Die Interrupts wähle ich durch den Aufruf in der Interrupt-Vektortabelle aus. Den Namen der ISR darf ich selbst bestimmen, der Aufruf muss nur exakt in der richtigen Speicheradresse stehen. Und die sind im Datenblatt unter interrupt-sources genau aufgelistet. ...
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.