Arduino ed Encoder Rotativo Alps!

Salve a tutti, sono nuovissimo del Forum e anche alle prime armi con Arduino! Quindi ringrazio tutti in anticipo e mi scuso se magari farò qualche richiesta che per molti di voi può essere scontata!!!

Io ho questo problema se così possiamo dire...

Per quanto ci abbia provato, io e gli encoder mi sa che siamo due cose opposte...hahaha!
Quindi chiedo a voi che sicuramente siete molto più esperti!

Avrei bisogno di configurare arduino con un encoder rotativo, nel mio cosa uno semplicissimo della Alps a 5 contatti di cui, tre sono per l'encoder con la massa al centro e due sono per il pulsante!
A me servirebbe questo: quando giro l'encoder ad esempio a destra, ad ogni scatto dello stesso, mi si deve accendere un led collegato ad un uscita del micro, quindi faccio uno scatto e si accende per un breve istante il led, mi fermo e il led resta spento. Stessa cosa se giro a sinistra ma su di un'altra uscita e con un altro led...Se invece premo il pulsante dell'encoder, mi si deve accendere un terzo led che rimane acceso fin quando non premo nuovamente per spegnerlo! Tutto qui, in pratica ad ogni tocco dell'encoder ho bisogno di un impulso su di una uscita del micro! Qualche anima pia che mi possa aiutare con un semplice programmino e schemino??? :slight_smile:

Buonasera,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

matrixmorfeus:
Avrei bisogno di configurare arduino con un encoder rotativo, nel mio cosa uno semplicissimo della Alps a 5 contatti di cui, tre sono per l'encoder con la massa al centro e due sono per il pulsante!

I dubbi specifici quali sono? Hai verificato la sequenza delle fasi con due LED e due resistenze? Da quanto ho capito ci sono diversi encoder, qualcuno da mezzo impulso (un fronte) a scatto, altri da un impulso completo (due fronti) a scatto.

Lo switch invece è semplicemente uno switch. Che dubbi ci sono sulla sua lettura?

Se sono i soliti da 12 o 18 impulsi al giro (o simili), in genere danno sempre due impulsi completi per scatto, sfasati di mezzo impulso ... per cui per leggerli in modo semplice, basta usare un'interrupt su un pin (ad esempio, colegati con resistenze di pull-down, basta leggere con l'interrupt in "rising" un'ingresso, se invece collegati con pull-up leggere in "falling"), e nella ISR leggere lo stato dell'altro ... se gira in un senso, sara' sempre alto, se gira nell'altro sara' sempre basso ... :wink: