Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Îți amintești de Stephen Hawking? El a fost profesorul Cambridge și faimosul matematician în scaunul cu rotile cu o voce generată de computer. A suferit de boala neuronului motor și, spre sfârșitul vieții, după ce și-a pierdut vorbirea, a reușit să comunice printr-un dispozitiv generator de vorbire - inițial prin utilizarea unui comutator portabil și, în cele din urmă, prin utilizarea unui singur mușchi obraz.
M-am gândit să încerc să creez un singur dispozitiv de scriere a textului. Doar un comutator - PORNIT sau OPRIT. Ce poți face cu asta?
Trebuie să luăm în considerare timpul. Dacă închideți un comutator și îl deschideți câteva momente mai târziu, aveți controlul unei alte variabile. Putem folosi întârzierea dintre închiderea și deschiderea comutatorului pentru a genera intrări diferite și a le transforma în șiruri de text sau mesaje. Vreau să pot scrie "BUNĂ, LUME!" și trimiteți-l la Serial Monitor - totul dintr-un singur buton.
Există un timer de milisecundă care rulează în Arduino. Face clic pe 1 la fiecare 0,001 secunde. Puteți citi valoarea acestuia cu declarația
int t = milis ();
// Fă ceva
int tt = milis ();
int timeDiff = tt - t;
Provizii
Voi folosi articole pe care majoritatea utilizatorilor Arduino le vor avea și sunt destul de ieftine de achiziționat:
- Arduino UNO
- 16 x 2 LCD
- Rezistențe de 220 Ohm și 10K Ohm
- Potențiometru 10K Ohm
- Buton comutator
- Pană sau panou de tăiere
- Conectarea firelor
Pasul 1: Metoda
Aici avem o grilă care conține toate literele, cifrele de la 0 la 9 și vin semne de punctuație. Litera „A” este în rândul 1 și coloana 2. Cifra „9” se află în rândul 7 și coloana 1. (Este posibil să doriți să imprimați acest ecran pentru a avea în față în timp ce rulați scriptul mai târziu.)
Instrucțiunile vă arată cum să utilizați comutatorul. Dacă țineți apăsat butonul, valoarea rândului va conta încet de la zero. Ridicați degetul de pe buton când valoarea rândului este 1.
Țineți apăsat butonul din nou și numărul coloanei va începe să se numere de la zero. Ridicați degetul când apare 2 și ați ales „A” din rândul: 1 și coloana: 2.
Acum trebuie să transferăm „A” în mesajul din rândul de jos. Țineți apăsat butonul și ridicați degetul pe acțiunea 1 - adăugați caracterul.
Pentru a insera „9”, alegem rândul 9 și coloana 1, apoi îl adăugăm cu acțiunea 1.
Acțiunea 2 șterge întregul mesaj.
Acțiunea 3 Renunță la un personaj ales greșit fără a-l adăuga la șirul de mesaje. (Greșelile sunt frecvente!)
Acțiunea 4 trimite mesajul de pe ecranul LCD către monitorul serial.
Pasul 2: conectarea lucrurilor
Dacă aveți un ecran de afișare cu cristale lichide, probabil îl veți folosi tot timpul. Este o idee bună să construiți o mică placă de conexiune care să țină ecranul LCD, potențiometrul (pentru reglarea luminozității ecranului) și rezistorul de protecție cu fire simple pentru 5 volți și GND. Pista este tăiată pe spatele plăcii, sub rezistorul de 220 Ohm. Ulterior am adăugat prize de ieșire pe placă pentru 5V și GND deoarece Arduino are doar o singură priză de 5V. Acest lucru economisește timp, fire și teste data viitoare când aveți nevoie de ecranul LCD într-un alt proiect. „Metoda oficială” este aici:
www.arduino.cc/en/Tutorial/HelloWorld
Butonul a fost conectat la pinul 8 cu un rezistor de tracțiune de 10K și la GND.
Pasul 3: Iată configurarea mea
În pagina următoare este un link către versiunea Tinkercad pentru a încerca.
Folosiți indicatorul și butonul mouse-ului pentru a închide și deschide butonul din centrul diagramei. Trebuie să deschideți fereastra de cod și apoi monitorul Serial din partea de jos a paginii pentru a permite trimiterea unui mesaj de pe ecranul LCD către monitorul Serial. Butonul „Start Simulation” începe executarea codului.
Probabil veți găsi destul de greu la început. Gândește-te cât de frustrant ar fi dacă aceasta ar fi singura ta metodă de comunicare.
Pasul 4: Versiunea Tinkercad
Am încorporat o versiune Tinkercad aici, dar au existat prea multe probleme de tamponare și sincronizare pentru a oferi o experiență bună. Fereastra era, de asemenea, prea mică pentru a permite afișarea corectă a circuitului, a codului și a ferestrei esențiale Serial Monitor.
www.tinkercad.com/things/daSgRAOl0g1-oneke…
Iată linkul către originalul Tinkercad, care este probabil mult mai mare și mult mai ușor să aveți fereastra de cod deschisă în timpul simulării, astfel încât să puteți vedea monitorul serial. Momentele esențiale funcționează corect.
Sper că v-ați bucurat de acest instructabil și ați învățat ceva pe parcurs.
Am înscris acest Instructable în Concursul Arduino și aș fi recunoscător pentru votul dvs. dacă v-ar plăcea.