Cuprins:
- Pasul 1: autobuzul de prototipare
- Pasul 2: Prima asamblare: afișajul LCD în I2C
- Pasul 3: Programare
- Pasul 4: Diverse funcții
- Pasul 5: Exemple de utilizare BUS, program și exemple
Video: Laboratorul de kit ELEGOO sau Cum să-mi ușurez viața de dezvoltator: 5 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Obiectivele proiectului
Mulți dintre noi avem probleme cu macheta în jurul controlerelor UNO. Adesea cablarea componentelor devine dificilă cu multe componente. Pe de altă parte, programarea sub Arduino poate fi complexă și poate necesita multe linii de cod. Proiectul descris aici ar trebui să ușureze macheta. Acest proiect se bazează pe și folosește aproape 80% din componentele „ELEGOO Super Starter Kit UNO R3”.
Obiectivele acestui proiect sunt:
- Crearea unui autobuz tehnic care să permită utilizarea simultană a până la patru panouri.
- Crearea unui program de referință utilizat ca bază pentru numeroase ansambluri.
- Crearea de funcții care facilitează lizibilitatea programării.
- Asamblarea afișajului LCD în I2C.
Toate fișierele proiectului pot fi descărcate de aici.
Pasul 1: autobuzul de prototipare
Componentele:
- Cablu panglică multi-catenar de 40 de conductori (35cm).
- Conectori pentru cablu plat cu 40 de pini (5).
- Conector PCB de 40 pini tată-tată.
- Panouri opționale de dimensiuni opționale (2).
Din kitul ELEGOO:
- Placa controlerului.
- Placa de extensie.
- Panouri (2).
Asamblarea este ușor de realizat:
Montați cei cinci conectori pe cablul plat. Patru conectori vor fi fixați cu partea conectorului orientată în sus și un conector cu partea conectorului orientat în jos. Acest conector va fi ulterior conectat la placa de expansiune.
Montați cei doi conectori PCB în paralel pe placa de expansiune pentru a primi conectorul cablului cu bandă.
Lipiți pinii de pe partea inferioară a plăcii cu pinii de intrare / ieșire ai conectorilor de extensie UNO.
Conectați placa de expansiune la controlerul UNO și apoi conectați conectorul cablului panglică.
După montare, toate semnalele de pe placa de control vor fi disponibile pe cei patru conectori ai cablului plat.
Rezultatul este o magistrală de extensie care poate găzdui până la patru panouri de măsurare așa cum se arată în imagine.
Un anumit număr de pini nu va fi deconectat pe placa de extensie (i-am notat cu litere mici) și sunt disponibili. Ele pot fi utilizate pentru a conecta circuite între panourile de măsurare.
Pasul 2: Prima asamblare: afișajul LCD în I2C
Afișajul LCD LCM1602 / HD44780 are multe legături. Conexiunea sa directă la controlerul UNO reduce posibilitatea conectării altor componente.
De aceea am adăugat un cip PCF8574 pentru a reduce numărul de legături la 2 folosind protocolul I2C.
Componentele:
- Un conector PCB de la 16 pini, de la tată la tată.
- O placă de lipit ELEGOO de 2x8cm
- Un cip PCF8574.
- Un conector cu 4 pini cu partea sa PCB.
Componentele kitului ELGOO:
- Afișajul LCD
- Potențiometrul de 10k
Adunarea:
Ansamblul este testat pe magistrala de prototipare și apoi sudat pe placa de lipit. Acest afișaj poate fi ușor adăugat pentru o utilizare simplă în alte proiecte.
Pasul 3: Programare
Obiectivul programului este simplificarea activității atunci când se dezvoltă noi proiecte.
Programul este compus din mai multe părți:
- Partea declarativă cu includerea de biblioteci și constante. Această parte fixă va fi comună tuturor testelor diferitelor componente. (B, C)
- Partea de dezvoltare care conține secvențele „setup” și „loop”. (D)
- Partea de funcții care grupează trei dintre ele (A). Aceste funcții sunt descrise mai jos.
Directorul „0-My_ELEGOO_soft_build” conține cinci fișiere care ar trebui păstrate împreună în același folder:
- „0-My_ELEGOO_soft_build.ino”.
- „1-My_LCD_function.ino”.
- "2-My_IR_function.ino".
- „3-My_Output_port_extension.ino”.
- „Unele samples.rtf”
Prin deschiderea fișierului „0-My_ELEGOO_soft_build.ino”, Arduino va deschide și celelalte fișiere (.ino). Toate fișierele sunt afișate și pot fi modificate.
Fișierul „Some samples.rtf” conține câteva exemple de programe simple care utilizează funcțiile.
Pasul 4: Diverse funcții
Comanda LCD
Scopul acestei funcții este de a facilita afișarea informațiilor pe ecranul LCD cu o singură comandă. Această comandă va fi utilizată în secțiunile de configurare și de buclă de golire. De asemenea, arată cum să construiți o funcție.
Această funcție este numită de lcdw (par1, par2, par3, par4, par5);
- par1 indică subfuncția dorită.
- par2 indică numărul de linie de pe afișaj (0 sau 1).
- par3 indică numărul coloanei de pe linia de afișare (de la 0 la 15).
- par4 conține textul care trebuie afișat.
- par5 conține o valoare numerică care trebuie afișată.
Exemple sunt:
lcdw (0, 0, 0, "", 0); inițializează afișajul. Numai acest apel va trebui plasat în elementul de configurare nul.
lcdw (1, 1, 5, "HELLO WORLD", 0); afișează textul pe a doua linie din poziția 6.
lcdw (1, 1, 5, "HELLO WORLD", 25); afișează textul "HELLO WORLD 25" pe a doua linie din poziția 6. lcdw (1, 0, 0, "" ", 25); afișează" 25 "în prima linie din poziția 1.
lcdw (2, 0, 0, "", 0); șterge afișajul.
Această funcție este destul de simplă și poate fi completată în funcție de nevoile dumneavoastră.
Interfața cu infraroșu și telecomanda sa
Scopul acestei funcții este de a facilita utilizarea senzorului infraroșu cu telecomanda sa. Această funcție este numită de tst = IRrec (par1);
par1 indică subfuncția dorită. 0 pentru a inițializa senzorul, 1 pentru a primi și decoda tasta apăsată pe telecomandă. Un text corespunzător numelui cheii este returnat în variabila tst
Creșterea numărului de uși digitale
Obiectivul este de a folosi cipul 74hc595 pentru a crește numărul de pini de ieșire digitale. Circuitul folosește 3 pini UNO ca intrare și oferă 8 porți binare ca ieșire. Vom folosi două funcții. Diagrama conexiunii fizice va fi descrisă în secțiunea următoare.
Circuitul este format din două registre cu 8 poziții (un registru intern al programului ino și altul conținut în circuit). Actualizarea se face în doi pași. În primul rând, valorile din registrul intern pot fi modificate (folosind funcția setExtPin). Apoi, registrul intern este copiat în circuit (folosind funcția Expin).
Expin (par1);
Par1: 0 pentru inițializarea cipului. 1 pentru a seta toate porțile de ieșire la LOW. 2 pentru a copia registrul intern pe cipul 74hc595
setExtPin (par1, par2);
- par1: numărul ușii care trebuie modificată (0-7).
- par2: starea dorită a ușii (LOW sau HIGH).
Pasul 5: Exemple de utilizare BUS, program și exemple
Pentru a armoniza elementele descrise în acest proiect, vă propun câteva exemple.
Aceste exemple pot fi găsite în fișierul „Some samples.rtf”.
Cablarea componentelor este dată de diagramele de mai sus. Proiectul a fost conceput pentru a permite utilizarea simultană a mai multor componente.
Pentru a utiliza un model, trebuie doar:
- Conectați componentele dorite pe panoul de comanda.
- Copiați partea relevantă a fișierului „Some samples.rtf” în partea de program (D) și compilați-o / încărcați-o în controler.
Veți descoperi că aceste șabloane nu au multe linii de cod. Aceasta este pentru a face programarea mai ușoară.
Când este compilat, programul va încărca doar funcțiile utilizate. Codul de ieșire este optimizat.
Pe de altă parte, magistrala hardware, cu capacitatea sa de a utiliza mai multe panouri, facilitează foarte mult asamblarea.
Pentru acest proiect, toate componentele au fost conectate împreună pe mai multe panouri. Afișajul LCD a fost conectat la placa de expansiune UNO.
Acest lucru permite o combinație ușoară și o asamblare rapidă a componentelor. Datorită firelor scurte de cablare, întreaga unitate este atrăgătoare din punct de vedere vizual.
Acum poți da frâu liber imaginației tale pentru modelarea proiectelor tale.
Bucură de ea!
Recomandat:
Cum se folosește Neopixel Ws2812 LED sau LED STRIP sau LED Ring cu Arduino: 4 pași
Cum se folosește Neopixel Ws2812 LED sau LED STRIP sau LED Ring cu Arduino: Bună băieți, deoarece Neopixel led Strip sunt foarte populare și este, de asemenea, numit și ws2812 led strip. Acestea sunt foarte populare, deoarece în aceste benzi cu leduri ne putem adresa fiecărui led separat, ceea ce înseamnă că dacă doriți câteva leduri să lumineze într-o singură culoare
Automatizare vocală controlată la domiciliu (cum ar fi Alexa sau Google Home, nu este necesar Wifi sau Ethernet): 4 pași
Automatizare casnică controlată prin voce (cum ar fi Alexa sau Google Home, nu este nevoie de Wifi sau Ethernet): este vorba în principal de relee controlate prin arduino bazate pe SMS cu configurarea asistentului google pentru a trimite mesaje pe instrucțiuni vocale. Este foarte ușor și ieftin și funcționează ca reclamele Alexa cu aparate electrice existente (dacă aveți Moto -X smartp
Cum să creați un sistem JARVIS sau JARVIS din viața reală / asistență AI proprie: 8 pași
Cum să creați un sistem JARVIS sau JARVIS din viața reală / asistență AI proprie: v-ați uitat vreodată la un computer vorbind ca JARVIS cu Tony Stark în filmul Iron Man? Ați dorit vreodată să aveți un astfel de computer? Am dreptate? Nu vă faceți griji … Puteți îndeplini această dorință cu propriul computer. Puteți avea un computer JARVIS și
Laboratorul de rețea: 9 pași (cu imagini)
Laboratorul de rețea: acest instructable este cam lung și implicat. Există mai multe proiecte realizate într-unul pentru a-mi oferi un laborator portabil de testare a rețelei, permițându-mi să diagnostichez problemele de rețea, pachetele de rechini din rețelele cu fir și fără fir, să testez cablurile de patch-uri și hel
Cum să vă închideți Jailbreak-ul 1.1.4 sau IPhone-ul inferior sau iPod-ul Touch: 4 pași
Cum să vă închideți iPhone-ul 1.1.4 sau inferior sau IPod Touch: Cum să jailbreak-ul dvs. 1.1.4 sau inferior iPhone sau iPod Touch și să instalați aplicații de la terți. AVERTISMENT: Nu voi fi responsabil pentru daunele produse iPhone-ului, iPod Touch-ului sau computerului. Cu toate acestea, ZiPhone nu a deteriorat niciodată un iPhone sau iPod Pentru