Zitat Zitat von Steffix Beitrag anzeigen
Ok ich habe mit 4 Tasten eine Analoge Tastatur gebaut, benötigt nur einen Pin (RA0).

Den ADC Konfiguriert Interrupt eingeschaltet, zum Testen dachte ich mir ein Register Inkrementieren und an PortC Ausgeben, egal welche Taste ich drücke, soll das Register um 1 erhöhen werden.
Ich kann da einen Sinn für die Verwendung eines Interrupts nicht erkennen, es macht alles nur komplizierter. Der Ablauf müßte eigentlich so sein:
Code:
Pseudocde

Init ADC

Los:
    Falls nötig, richtigen Analogeingang anwählen
    ADC starten
    warten bis der ADC fertig ist
    Wert auslesen und weiterverarbeiten
weiter bei Los
Um festzustellen, ob der ADC fertig ist, gibt es ein Statusbit. Man kann aber auch das Interruptflag auswerten, ohne den Interrupt zu enablen. Beispiele gibts im Datenblatt oder in den App-Notes.

MfG Klebwax