» electronică » Arduino »Ceas de mână pe Attiny85 cu ecran Oled

Ceas de mână pe Attiny85 cu ecran OLED

Ceas de mână pe Attiny85 cu ecran OLED


Bună după-amiaza, astăzi vreau să împărtășesc instrucțiuni despre realizarea ceasurilor pe baza Attiny 85 cu un display Oled. Caracteristicile ceasului meu nu sunt limitate la ceas. De asemenea, pot fi folosite ca desktop și puteți zdrobi și un senzor digital de temperatură.

Pentru realizare de casă vom avea nevoie de:

- curea sintetică (orice culoare)
- Velcro pentru haine
- Digispark Attiny85
- Display Oled cu o rezoluție de 128x64, I2C
- ds18b20 - senzor digital de temperatură (opțional)
- Rezistor 4,7 Kom 0,25 W
- Arduino Placă de firmware Digispark Attiny85 (programator ISP)
- Foaie de plastic subțire
- Firuri colorate
- Conectori Dupont 2,54 mm „femele”
- Butoane 2 buc.
- Placă de circuit mică sau o bucată mică de placă de circuit
- fier de lipit, lipit, colofon
- Fir, ac, foarfece
- cutit clerical
- pistol cu ​​clei fierbinte
- Adeziv fierbinte
- bandă cu două fețe

Pasul 1 Pregătirea centurii.
Puteți cumpăra o curea de la orice magazin de lucrări cu ac. Alegeți o curea lată de 25 mm. Orice culoare. Avem nevoie de o bandă de aproximativ 50 cm. Îndoaie cureaua pe jumătate și coase de-a lungul marginilor. Apoi în mijlocul curelei facem un slot, dar numai într-una din părți. Coase Velcro din capetele curelei.

Puneți firul cu acul în lateral și luați fierul de lipit.

Pasul 2 Pregătiți placa și afișajul OLED.
„Creierul” ceasului nostru va fi controlorul Digispark Attiny85. Sunt disponibile în mai multe versiuni. Ar trebui să cumpărați o placă cu conector Micro USB. Alte versiuni ale plăcii nu se încadrează în carcasă.

Dacă ați cumpărat o placă cu contacte lipite, ar trebui mai întâi să le dezvăluiți. Apoi luăm fire de culori diferite, avem nevoie de 9 culori diferite. Tăiați aproximativ 15 cm din fiecare sârmă, dezlipiți-l și lipiți-l la Attiny85. Imediat merită notat ce fir la care se lipeste știftul pentru a nu se confunda ulterior.

În cazul meu, firele după culori arată astfel:

PB0 MOSI - Galben
PB1 MISO - Albastru
PB2 CSK - Albastru
PB3 - Violet
PB4 - Alb
PB5 NRES - Gri
GND - negru
+5 - roșu
Vin - Portocaliu

Culorile dvs. de fire pot varia, principalul lucru este să le scrieți.

Să trecem la ecran. Vom folosi un afișaj oled. Rezoluția ecranului 128x64, funcționează pe magistrala I2C. La vânzare există ecrane de diferite culori: alb, albastru, albastru cu galben. Fii atent! Cuvântul „în două culori” din descrierea și titlul acestui ecran indică prezența unei benzi de culoare diferită de cea principală din partea de sus a ecranului și nu capacitatea de a afișa două culori cu acest ecran! Toate ecranele de acest tip afișează o singură culoare sau în partea superioară o bandă de o culoare, în partea de jos a alteia. Mi-a plăcut ecranul albastru, cu o bară galbenă în partea de sus. Culoarea nu joacă un rol special, alegeți care vă place. Ca și în cazul Attiny85, dacă ați cumpărat un ecran cu contacte lipite, ar trebui mai întâi să le dezvăluiți.


Pe partea din spate a ecranului ar trebui să lipiți fire mici. Este mai bine să folosiți fire de aceleași culori ca și cu Attiny85, pentru a nu le confunda ulterior. În cazul meu, am soldat firul galben către SDA a ecranului, către SCL - albastru, GND - negru, VCC - roșu.


Pe o bandă cu două fețe, atașăm Attiny85 pe partea din spate a ecranului Oled. Attiny85 nu trebuie să depășească ecranul Oled.


Am lipit Attiny85 și Oled împreună.

PB0 MOSI Attiny85 - Galben - SDA Oled
PB2 CSK Attiny85 - Albastru - SCL Oled
GND Attiny85 - Negru - GND Oled
+5 Attiny85 - Roșu - VCC Oled

Colectăm toate firele într-un rând, astfel încât să obținem o buclă. Îl lichidăm cu bandă electrică în mai multe locuri, astfel încât să nu se desprindă.


Mergeți la puterea ceasurilor noastre. Pentru a face acest lucru, luați o baterie mică de litiu. Se lipește firele la ea.


Dacă nu există baterie, puteți utiliza o baterie A27 sau A23.


Punem acumulatorul sau bateria în cel mai îndepărtat colț al buzunarului format de cureaua pliată la jumătate. Dacă utilizați o baterie, furnizați un slot pentru a o înlocui.
În gaura făcută în mijlocul curelei, ne lipim cablul de fire.


Și le întindem până la capătul curelei, astfel încât acestea să rămână afară, iar ceasul să fie exact deasupra slotului, astfel încât slotul să se închidă ore întregi.


Îi tăiem excesele și încordăm toate firele conectoarelor „mamă” Dupont 2,54 mm. Îl introducem în cutii de plastic și îl învelim cu bandă electrică, astfel încât să obținem un conector îngrijit, cu toate cablurile Attiny85. Aici merită să scrii, sau chiar să schițezi mai bine, toate contactele conectorului rezultat. GND Attiny, GND Oled și minusul bateriei pot fi conectate imediat și încovoiate într-un singur contact. Pentru completarea ulterioară a schiței și conectarea suplimentelor, este mai convenabil să aranjați contactele după cum urmează:

PB0 | PB1 | PB2 | PB5 | +5 ATENTIE | GND ATTINY

PB3 | PB4 | VCC OLED | GND OLED | Vin ATTINY | + BAT



Acum este timpul să treci la coca.

Pasul 3 Crearea cazului.
Pentru corp, veți avea nevoie de plastic subțire. Poate fi cumpărat din magazinul online. Sau puteți cumpăra un folder cu o capacă groasă de plastic din magazinul de papetărie și să faceți o carcasă din copertă. Pe plastic marcăm măturatul ceasului. Liniile solide sunt linii tăiate, linii punctate - îndoiți.


Cu un cuțit clerical, tăiați cu atenție fereastra din mijloc. Îndoiți toate liniile punctate. Ar trebui să fie așa:


Și pe partea flip:


Punem o fanta pe ecranul nostru, îndoim marginile și, folosind adeziv topit la cald, ne asamblăm corpul. De asemenea, merită să lipiți carcasa pe curea, de preferință în interior, pentru ca lipiciul să nu se stingă.


Pasul 4 Pregătirea mediului de programare.
Pentru a lucra cu firmware-ul (sau schița) vom folosi IDE-ul Arduino. Descărcați arhiva sau instalatorul de pe site-ul oficial Arduino IDE.

În plus, trebuie să adăugăm suport Attiny la IDE Arduino. Pentru a face acest lucru, rulați ID-ul Arduino, apoi Fișier - Setări - în câmpul „Adresa URL-urilor Managerului suplimentar”, introduceți linkul:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Faceți clic pe OK (puteți introduce mai multe linkuri separate printr-o virgulă în acest câmp). Apoi accesați Instrumente - Board - Boards Manager în câmpul de filtrare, introduceți Attiny și selectați „attiny by David A. Mellis”. Faceți clic pe Instalare și așteptați finalizarea descărcării.

De asemenea, veți avea nevoie de o bibliotecă pentru a funcționa cu ecranul Oled. Există multe dintre ele, mi-a plăcut și vă recomand să folosiți TinyOzOLED. Este convenabil și, cel mai important, se încadrează în memorie:
tinyozoled-master.rar [15.99 Kb] (descărcări: 100)


În viitor, puteți extinde funcționalitatea ceasului prin adăugarea unui senzor de temperatură. Adăugați imediat o bibliotecă pentru acest senzor. OneWire Library.
onewire.rar [16.75 Kb] (descărcări: 71)


Instalați aceste biblioteci. Pentru a face acest lucru, puteți direct în mediul de programare Arduino IDE, fără a despacheta arhivele descărcate, selectați meniul Sketch - Connect Library. În partea de sus a listei derulante, selectați elementul „Adăugați biblioteca .Zip”. În fereastra de dialog care apare, selectați biblioteca pe care doriți să o adăugați, în acest caz două descărcate. Acum deschideți din nou meniul Sketch - Connect Library. În partea de jos a listei derulante, ar trebui să vedeți biblioteci noi. De acum, bibliotecile pot fi utilizate în programe. După toate acestea, reporniți ID-ul Arduino. Puteți, de asemenea, să o dezarhivați în folderul „biblioteci” situat în folderul cu Arduino IDE instalat.

Pasul 5 Pregătirea programatorului.
Digispark Attiny85 poate fi programat prin intermediul conectorului micro USB de pe placă folosind Arduino IDE. Cu toate acestea, trebuie să sacrifici 2 KB de memorie Flash de 8 KB pentru bootloader.Schița de ceas nu se potrivește cu încărcătorul, deci trebuie să utilizați programatorul ISP, ștergând astfel bootloader-ul. Dacă nu aveți la îndemână un programator ISP (ca al meu), puteți utiliza placa Arduino. Voi folosi Arduino Uno. Dar puteți folosi orice altă placă. Deci, conectăm Arduino Uno la computer. Lansați Arduino IDE, deschideți fișierul - exemple - ISP Arduino. Selectați în meniu Instrumente - Placă - Arduino Uno. Selectăm portul la care este conectat, Arduino și facem clic pe descărcare. Schița începe cu un indiciu despre conectarea Arduino la controlerul programabil.

// 10: resetare sclav
// 11: MOSI
// 12: MISO
// 13: SCK

Schema de conectare la Digispark Attiny85:
Arduino UNO - Digispark Attiny85

D11 - P0
D12 - P1
D13 - P2
D10 - P5


Pasul 6 Pregătiți firul pentru încărcarea schiței.
Există mai multe opțiuni pentru schiță, și doar pentru comoditatea descărcării, vom produce un fir care conectează Arduino Uno (ca programator ISP) și ceasul nostru. Aici vă recomand, de asemenea, să folosiți fire colorate care să se potrivească cu culoarea pe care am folosit-o deja. Pe de o parte, ar trebui să existe un bloc:

PB0 Galben | PB1 albastru | PB2 albastru | PB5 Gri | +5 Roșu | GND Negru

Acest bloc se conectează la ceas, în partea de sus a blocului de ceas.
Pe de altă parte, există două plăcuțe pentru conectarea la Arduino Uno:

Pin 10 gri | Pinul 11 ​​Galben | Pin 12 albastru | Pin 13 albastru

+5 Roșu | GND Negru

Ar trebui să arate așa:


Pasul 7 Firmware.
Așadar, am scris câteva opțiuni de schiță pentru ceasurile noastre. Voi scrie mai târziu care sunt diferențele și voi prezenta totul. Pentru a completa schița, rulați ID-ul Arduino, selectați meniul Instrumente, setați următorii parametri:

Board - Attiny 25/45/85
Procesor - Attiny 85
Ceas - interior 16

Selectați portul serial la care este conectat programatorul ISP sau Arduino ca programator. De asemenea, în meniul Instrumente - Programator, selectați „Arduino ca ISP”. Acum selectați Sketch - Descărcați prin programator. Rămâne să aștepți finalizarea descărcării.

Pasul 8 Schițe.
Prima opțiune este un ceas cu o întâlnire. Pentru a seta ora, va trebui să conectați butoane, ceva de genul:


Pentru pinii PB1, PB3, PB4.
attiny85_oled_spi.rar [1.9 Kb] (descărcări: 110)


A doua opțiune este doar un ceas. Pentru a seta ora necesară pentru a utiliza USB-TTL.
attiny85_oled_spi_softwareserial_nodata.rar [1.45 Kb] (descărcări: 89)


Și a treia opțiune, un ceas de birou cu o dată și un termometru.
attiny85_oled_spi_term_2.rar [2,78 Kb] (descărcări: 101)


Pasul 9 Lansare
Pentru a porni ceasul, dacă utilizați o baterie cu litiu, trebuie să instalați un jumper în blocul dintre contactele BAT, +5 și VCC. Puteți folosi o bucată mică de sârmă subțire. Dacă aveți o baterie, veți avea nevoie de două jumpers, puneți primul între BAT și Vin, al doilea - + 5 și VCC.
8.8
8.9
7.3

Adaugă un comentariu

    • zâmbetzâmbetexaxabinedontknowYahooNea
      șefzgârieturăpăcălidada-daagresivsecret
      scuzedansdance2dance3iertareajutorbăuturi
      oprireprietenibungoodgoodfluiersincopălimbă
      fumaplauzeCrayvestimbatjocoritorDon-t_mentiondescărcare
      căldurămânioslaugh1mdaîntâlniremoskingnegativ
      not_ifloricele de porumbpedepsicititsperiasperiecăutare
      batjocurăthank_youacestto_clueUmnikacutconveni
      răubeeeblack_eyeblum3roșilăudăroșenieplictiseală
      cenzuratpleasantrysecret2amenințavictorieyusun_bespectacled
      ShokRespektlolprevedbun venitKrutoyya_za
      ya_dobryiajutorne_huliganne_othodifludinterdicțieînchide

Vă sfătuim să citiți:

Înmânează-l pentru smartphone ...