Fourstroker
15.06.2009, 11:57
Hallo,
ich habe eine Frage zur Software-Interrupt-Programmierung beim Atmega 128 und hoffe, dass ihr mir die Fragen beantworten könnt.
Erst mal mein Verständnis, wie ein Interrupt per SW ausgelöst werden kann:
- Interrupt initialisieren (fallende oder steigende Flanke)
- Pin als Ausgang deklarieren
- Ausgang von Null auf Eins bzw. anders rum setzen
Stimmt das soweit?
Kann man das beim Atmega 128 mit allen Externen Interrupts durchführen also auch mit dem INT06?
Hat mir einer ein Programmbeispiel für diese Anwendung?
In meiner Anwendung löse ich den INT 6 per fallender Flanke durch einen Taster aus. Bei Problemen muss ich aber diese Funktion auch ohne Taster, also per SW auslösen können. Hierfür initialisiere ich den Eingang in einer Funktion zum Ausgang um, erzeuge die Flanke per SW und initialisiere den PORT PE6 wieder als Eingang um. Leider funktioniert das im Moment so nicht, daher meine oben stehenden Fragen.
MFG
Fourstroker
ich habe eine Frage zur Software-Interrupt-Programmierung beim Atmega 128 und hoffe, dass ihr mir die Fragen beantworten könnt.
Erst mal mein Verständnis, wie ein Interrupt per SW ausgelöst werden kann:
- Interrupt initialisieren (fallende oder steigende Flanke)
- Pin als Ausgang deklarieren
- Ausgang von Null auf Eins bzw. anders rum setzen
Stimmt das soweit?
Kann man das beim Atmega 128 mit allen Externen Interrupts durchführen also auch mit dem INT06?
Hat mir einer ein Programmbeispiel für diese Anwendung?
In meiner Anwendung löse ich den INT 6 per fallender Flanke durch einen Taster aus. Bei Problemen muss ich aber diese Funktion auch ohne Taster, also per SW auslösen können. Hierfür initialisiere ich den Eingang in einer Funktion zum Ausgang um, erzeuge die Flanke per SW und initialisiere den PORT PE6 wieder als Eingang um. Leider funktioniert das im Moment so nicht, daher meine oben stehenden Fragen.
MFG
Fourstroker