Buon pomeriggio, oggi voglio condividere le istruzioni per realizzare orologi basati su Attiny 85 con display Oled. Le funzioni del mio orologio non si limitano al mio orologio. Possono anche essere usati come desktop e puoi anche schiacciare un sensore di temperatura digitale.
Per fare fatto in casa avremo bisogno di:
- Cinturino sintetico (qualsiasi colore)
- Velcro per i vestiti
- Digispark Attiny85
- Display Oled con una risoluzione di 128x64, I2C
- ds18b20 - sensore di temperatura digitale (opzionale)
- Resistenza 4.7 Kom 0.25 W.
- Arduino Scheda firmware Digispark Attiny85 (programmatore ISP)
- Foglio di plastica sottile
- Fili colorati
- Connettori Dupont “femmina” da 2,54 mm
- Pulsanti 2 pezzi
- Piccolo circuito stampato o un piccolo pezzo di circuito stampato
- Saldatore, saldatura, colofonia
- Filo, ago, forbici
- coltello clericale
- Pistola per colla a caldo
- Colla a caldo
- Nastro biadesivo
Passaggio 1 Preparazione della cintura.
Puoi acquistare un cinturino in qualsiasi negozio di ricamo. Scegli un cinturino largo 25 mm. Qualsiasi colore. Abbiamo bisogno di una striscia di circa 50 cm, piega il cinturino a metà e cuci lungo i bordi. Quindi nel mezzo del cinturino facciamo una fessura, ma solo in una delle parti. Cucire il velcro dalle estremità del cinturino.
Metti il filo con l'ago di lato e prendi il saldatore.
Passaggio 2 Preparare la scheda e il display OLED.
Il "cervello" del nostro orologio sarà il controller Digispark Attiny85. Sono disponibili in diverse versioni. È necessario acquistare una scheda con un connettore Micro USB. Altre versioni della scheda non si adattano alla cassa dell'orologio.
Se hai acquistato una scheda con contatti saldati, dovresti prima dissaldarli. Quindi prendiamo fili di diversi colori, abbiamo bisogno di 9 colori diversi. Tagliare circa 15 cm da ciascun filo, tagliarlo e saldare ad Attiny85. Immediatamente vale la pena annotare quale filo a quale perno è saldato per non confondersi in seguito.
Nel mio caso, i fili per colore assomigliano a questo:
PB0 MOSI - Giallo
PB1 MISO - Blu
PB2 CSK - Blu
PB3 - Viola
PB4 - Bianco
PB5 NRES - Grigio
GND - nero
+5 - rosso
Vin - Arancia
I colori dei fili possono variare, l'importante è scriverli.
Passiamo allo schermo. Useremo un display oled. Risoluzione dello schermo 128x64, funziona sul bus I2C. In vendita ci sono schermi di diversi colori: bianco, blu, blu con giallo. Stai attento! La parola "bicolore" nella descrizione e nel titolo di questa schermata indica la presenza di una striscia di colore diversa da quella principale nella parte superiore dello schermo e non la possibilità di visualizzare due colori con questa schermata! Tutte le schermate di questo tipo visualizzano solo un colore, o nella parte superiore una striscia di un colore, nella parte inferiore di un altro. Mi è piaciuta la schermata blu, con una barra gialla in alto. Il colore non ha un ruolo speciale, scegli quale ti piace. Come con Attiny85, se hai acquistato uno schermo con contatti saldati, dovresti prima dissaldarli.
Sul retro dello schermo dovresti saldare piccoli fili. È meglio usare fili degli stessi colori di Attiny85, per non confonderli in seguito. Nel mio caso, ho saldato il filo giallo all'SDA dello schermo, allo SCL - blu, GND - nero, VCC - rosso.
Su un nastro biadesivo attacciamo Attiny85 sul retro dello schermo Oled. Attiny85 non dovrebbe andare oltre la scheda dello schermo di Oled.
Abbiamo saldato insieme Attiny85 e Oled.
PB0 MOSI Attiny85 - Giallo - SDA Oled
PB2 CSK Attiny85 - Blu - SCL Oled
GND Attiny85 - Nero - GND Oled
+5 Attiny85 - Rosso - VCC Oled
Raccogliamo tutti i fili in una fila, in modo da ottenere un ciclo. Lo avvolgiamo con del nastro isolante in diversi punti in modo che non cada a pezzi.
Vai al potere dei nostri orologi. Per fare questo, prendi una piccola batteria al litio. Saldare i fili ad esso.
Se non c'è batteria, è possibile utilizzare una batteria di tipo A27 o A23.
Mettiamo l'accumulatore o la batteria nell'angolo più lontano della tasca formato dalla cinghia piegata a metà. Se si utilizza una batteria, fornire uno slot per sostituirla.
Nel foro praticato nel mezzo del cinturino, attacciamo il cavo dai fili.
E li allunghiamo fino all'estremità del cinturino, in modo che sporgano, e l'orologio è esattamente sopra lo slot, in modo che lo slot si chiuda per ore.
Tagliamo quelli in eccesso e pieghiamo tutti i fili dei connettori “madre” Dupont da 2,54 mm. Lo inseriamo in custodie di plastica e lo avvolgiamo con del nastro isolante, in modo da ottenere un connettore pulito, con tutti i cavi Attiny85. Qui vale anche la pena scrivere, o anche meglio disegnare, tutti i contatti del connettore risultante. GND Attiny, GND Oled e il meno della batteria possono essere immediatamente collegati e aggraffati in un unico contatto. Per compilare ulteriormente lo schizzo e collegare i componenti aggiuntivi, è più conveniente disporre i contatti come segue:
PB0 | PB1 | PB2 | PB5 | +5 ATTINY | GND ATTINY
PB3 | PB4 | VCC OLED | GND OLED | Vin ATTINY | + BAT
Ora è il momento di passare allo scafo.
Passaggio 3 Creare il caso.
Per il corpo avrai bisogno di plastica sottile. Può essere acquistato nel negozio online. Oppure puoi acquistare una cartella con una spessa copertina di plastica nel negozio di cartoleria e ricavare una custodia dalla copertina. Sulla plastica segniamo lo sweep dell'orologio. Le linee continue sono linee di taglio, linee tratteggiate - piega.
Usando un coltello clericale, ritaglia con attenzione la finestra nel mezzo. Pieghiamo tutte le linee tratteggiate. Dovrebbe essere così:
E il rovescio della medaglia:
Mettiamo una fessura sul nostro schermo, pieghiamo i bordi e, usando l'adesivo hot-melt, assembliamo il nostro corpo. Vale anche la pena incollare la custodia al cinturino, preferibilmente all'interno, in modo che la colla non fuoriesca.
Passaggio 4 Preparazione dell'ambiente di programmazione.
Per lavorare con il firmware (o schizzo) useremo l'IDE di Arduino. Scarica l'archivio o il programma di installazione dal sito ufficiale Arduino IDE.
Inoltre, è necessario aggiungere il supporto Attiny all'IDE di Arduino. Per fare ciò, esegui l'IDE Arduino, quindi File - Impostazioni - nel campo "URL di Gestione schede aggiuntive", inserisci il link:
https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
Fai clic su OK (puoi inserire diversi collegamenti separati da una virgola in questo campo). Quindi vai su Strumenti - Scheda - Gestione schede nel campo filtro, inserisci Attiny e seleziona "attiny di David A. Mellis". Fai clic su Installa e attendi il completamento del download.
Avrai anche bisogno di una libreria per lavorare con lo schermo Oled. Ce ne sono molti, mi è piaciuto e consiglio di usare TinyOzOLED. È conveniente e, soprattutto, si adatta alla memoria:
In futuro, è possibile espandere la funzionalità dell'orologio aggiungendo un sensore di temperatura. Aggiungi immediatamente una libreria per questo sensore. Libreria OneWire.
Installa queste librerie. Per fare ciò, è possibile direttamente nell'ambiente di programmazione IDE di Arduino, senza decomprimere gli archivi scaricati, selezionare il menu Sketch - Connect Library. Nella parte superiore dell'elenco a discesa, seleziona la voce "Aggiungi libreria .Zip". Nella finestra di dialogo che appare, seleziona la libreria che desideri aggiungere, in questo caso due scaricate. Ora apri di nuovo il menu Sketch - Connect Library. In fondo all'elenco a discesa dovresti vedere nuove librerie. D'ora in poi, le librerie possono essere utilizzate nei programmi. Dopo tutto questo, riavvia l'IDE di Arduino. Puoi anche decomprimerlo semplicemente nella cartella "librerie" situata nella cartella con l'IDE Arduino installato.
Passaggio 5 Preparazione del programmatore.
Digispark Attiny85 può essere programmato tramite il connettore micro USB sulla scheda utilizzando l'IDE Arduino. Tuttavia, devi sacrificare 2 KB di memoria flash da 8 KB per il bootloader.Lo schizzo dell'orologio non si adatta al bootloader, quindi è necessario utilizzare il programmatore ISP, cancellando così il bootloader. Se non hai un programmatore ISP a portata di mano (come il mio), puoi invece usare la scheda Arduino. Userò Arduino Uno. Ma puoi usare qualsiasi altra scheda. Quindi, colleghiamo Arduino Uno al computer. Avviare Arduino IDE, aprire File - Esempi - Arduino ISP. Selezionare nel menu Strumenti - Scheda - Arduino Uno. Selezioniamo la porta a cui è connessa, Arduino e il download dei clic. Lo schizzo inizia con un suggerimento su come collegare Arduino al controller programmabile.
// 10: ripristino slave
// 11: MOSI
// 12: MISO
// 13: SCK
Schema di collegamento a Digispark Attiny85:
Arduino UNO - Digispark Attiny85
D11 - P0
D12 - P1
D13 - P2
D10 - P5
Passaggio 6 Preparare il filo per il caricamento dello schizzo.
Esistono diverse opzioni per lo schizzo e, solo per comodità del download, realizzeremo un filo che collega Arduino Uno (come programmatore ISP) e il nostro orologio. Qui consiglio anche di usare fili colorati che corrispondono al colore che abbiamo già usato. Da un lato, dovrebbe esserci un blocco:
PB0 Giallo | PB1 Blu | PB2 Blue | PB5 Grigio | +5 Rosso | GND nero
Questo blocco si collega all'orologio, nella parte superiore del blocco dell'orologio.
D'altra parte, ci sono due pad per il collegamento ad Arduino Uno:
Pin 10 Grigio | Pin 11 Giallo | Pin 12 Blu | Pin 13 Blu
+5 Rosso | GND nero
Dovrebbe assomigliare a questo:
Passo 7 Firmware.
Quindi, ho scritto alcune opzioni di schizzo per i nostri orologi. Scriverò più avanti quali sono le differenze e traccerò tutto. Per riempire lo schizzo, eseguire l'IDE Arduino, selezionare il menu Strumenti, impostare i seguenti parametri:
Consiglio di amministrazione - Attiny 25/45/85
Processore - Attiny 85
Orologio - interno 16
Selezionare la porta seriale a cui il programmatore ISP o Arduino è collegato come programmatore. Inoltre, nel menu Strumenti - Programmatore, selezionare "Arduino come ISP". Ora seleziona Sketch - Scarica tramite il programmatore. Resta da attendere il completamento del download.
Step 8 Schizzi.
La prima opzione è un orologio con una data. Per impostare l'ora, dovrai collegare i pulsanti, in questo modo:
Ai pin PB1, PB3, PB4.
La seconda opzione è solo un orologio. Per impostare l'ora è necessario utilizzare USB-TTL.
E la terza opzione, un orologio da scrivania con una data e un termometro.
Passaggio 9 Avvio.
Per avviare l'orologio, se si utilizza una batteria al litio, è necessario installare un ponticello nel blocco tra i contatti BAT, +5 e VCC. Puoi usare un pezzettino di filo sottile. Se hai una batteria, avrai bisogno di due jumper, metti il primo tra BAT e Vin, il secondo - + 5 e VCC.