Portachiavi POV

Questo progetto, la mia prima esperienza in smd, è un portachiavi che se agitato in aria fa apparire un messaggio. Utilizza il fenomeno della persistenza della visione (POV – Persistence Of Vision – su wikipedia maggiori informazioni su questo fenomeno)

Per farvi capire meglio di cosa parlo, qui di seguito ho realizzato velocemente un video per illustrarne il funzionamento:

Non tenete conto degli sfarfallii visibili nel video: ad occhio nudo si vede benissimo e l’immagine è molto stabile.

Il circuito utilizza un PIC16F1827 e il codice è scritto in Hitech-C. Il messaggio viene mostrato grazie a 8 led (in formato SMD 0805) collegati sulla PORTB. Il tutto è alimentato tramite una batteria a bottone tipo CR2032 alloggiata in un portabatterie sul retro del circuito:


Come avete visto nel video bisogna muovere il circuito con un movimento destra/sinistra per poter visualizzare il messaggio. Per fare in modo che le scritte vengano visualizzate correttamente, quindi, è necessario rilevare la direzione del movimento. Per fare questo ho utilizzato un semplice sensore di tilt a sfera (va bene anche questo). Muovendo il sensore in una direzione, la sfera chiude un contatto, muovendo il sensore nella direzione opposta, la sfera si allontana e il contatto si apre. Rilevando l’apertura/chiusura del contatto posso capire in che direzione il circuito si sta muovendo e quindi eseguire la scansione del led normalmente o a specchio per fare in modo da visualizzare sempre il messaggio dritto.

Quindi: non va assolutamente bene un sensore di tilt a molla del tipo che abbiamo già visto qui.

Sulla scheda sono presenti due pulsanti: il reset e un altro per entrare nella modalità POV. Il circuito difatti è sempre alimentato e va in modalità sleep quando non utilizzato per evitare di consumare la batteria. Appena viene premuto il pulsante di reset il pic esce dalla modalità sleep e fa alcuni effetti con i led, se entro un certo tempo non viene premuto il secondo pulsante, ritorna in sleep.

Il codice è scritto per utilizzare l’oscillatore interno a 32MHz, è comunque consigliabile provare ad abbassare la frequenza in maniera da ottenere un minor consumo della batteria. Per cambiare il messaggio da visualizzare basta cambiare le stringhe messaggio1 e messaggio2.

Nel download sono inclusi il sorgente in formato Eagle, il sorgente in C, il progetto MPLAB, il file HEX già compilato e un PDF già pronto per la stampa del master.

Download

 

Se questo articolo ti è piaciuto, condividilo su un social:
Se l'articolo ti è piaciuto o ti è stato utile, potresti dedicare un minuto a leggere questa pagina, dove ho elencato alcune cose che potrebbero farmi contento? Grazie :)