Drehgeber per Interrupt auslesen, wieviele Interrupteingänge muss ich belegen bei Atmega64

OP #1073656
Lesenswert?

Hey,

Bin gerade dabei meine Schaltung zu optimieren,
im moment habe ich einen Drehgeber wie im Bild zu sehen an 3 Ports 
meines Atmega64 angeschlossen, doch ist es zu "suboptimal" die Zustände 
in der Hauptschleife stets auszulesen.

Meine idee wäre jetzt einen Teil der eingänge auf die INT Ports zu legen 
und das ganze per Interrupt lösen,
reicht wenn ich 2 Eingänge auf PC0/1 lasse und nur einen (den Port A) 
auf z.B. INT0 der dann den Interrupt triggert um dann auszuwerten?

Ich denke schon, doch habe ich gerade nicht die möglichkeit es zu testen 
bevor das Board in produktion geht.

PS: PC ist ja ein analoger port, kann ich das ding trotzdem daran 
betreiben?
OP #1073922
Lesenswert?

Sven Pauli wrote:
> Hm, das ist Target? Die Schriftarten gewürfelt, der Bus grauenhaft und
> die Pins am AVR nicht getroffen? SCNR :-)
>
> Ne, Drehgeber --> Pollen.

Was meinst du mit "Pollen" :)

Und ja, das ist die Target 3001 v13 version, die kostet zwar in der 
Professional Version über 1000 Euro aber wenn man die PCB Pool version 
nimmt (also die Leiterplatten nur bei PCB Pool entwickeln lässt) bekommt 
man die version kostenlos.
Gast #1073933
Lesenswert?

> Was meinst du mit "Pollen" :)

Er meint zyklisches Einlesen des Ports in regelmäßigen Zeitabständen 
(z.B. durch Timer-Interrupt synchronisiert).

Verfolge einfach die Links von Peter, etwas Besseres wirst Du nicht 
finden. Die Routinen sind sooo gut, dass Du sogar auf Deine 
Hardware-Entprellung (RC-Glieder) verzichten kannst.

Mit externen Interrupts wirst Du Schiffbruch erleiden wenn Du laberige 
Drehgeber einsetzt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren