Cum să resetați placa Arduino

Cum Sa Resetati Placa Arduino



Placa Arduino este o placă utilă de dezvoltare a microcontrollerului folosită de pasionați și profesioniști pentru a-și crea proiecte. Puteți folosi placa Arduino pentru a crea mai multe proiecte, de la simpla clipire a LED-urilor până la controlul roboților sau mașinilor grele. Pentru a lucra cu plăci Arduino, trebuie să încărcați o schiță, care este un program care informează placa ce trebuie să facă. Cu toate acestea, poate fi necesar să resetați placa Arduino uneori din orice motiv.

Acest ghid acoperă următoarea schiță:

De ce este util să resetați placa Arduino







Cum să resetați placa Arduino



Concluzie



De ce este util să resetați placa Arduino

Resetarea unei plăci Arduino este utilă în diferite scenarii, cum ar fi:





  • Puteți reseta placa Arduino dacă întâmpinați probleme la încărcarea schiței.
  • Uneori, schița încărcată nu funcționează corect, în acest caz este util să resetați placa Arduino.
  • Resetarea plăcii Arduino poate, de asemenea, să deblocheze placa dacă este blocată sau nu răspunde.

Cum să resetați placa Arduino

Puteți reseta placa Arduino:

  • Folosind butonul de resetare
  • Folosind Resetare PIN
  • Folosind funcția reset().
  • Folosind metoda Watchdog Timer
  • Prin resetarea schiței din memorie
  • Prin resetarea memoriei EEPROM

Cum să resetați placa Arduino folosind butonul de resetare

Placa Arduino include o placă încorporată Butonul de resetare pe care îl puteți folosi pentru a vă reseta placa. Acest buton este plasat chiar înaintea portului USB folosit pentru sursa de alimentare. Prin apăsarea acestui buton, fiecare activitate de pe această placă va fi oprită și va duce execuția înapoi la prima linie a codului.



Cum să resetați placa Arduino folosind pinul de resetare

Dacă te uiți la placa Arduino cu atenție, vei observa că are și un pin Reset, care poate fi programat în așa fel încât să poată reseta placa în câteva secunde. Acest lucru poate fi util în cazul în care butonul de resetare nu funcționează corect. Pentru a utiliza acest Pin de resetare pentru a reseta placa Arduino, trebuie să utilizați următorii pași:

Pasul 1: Descărcați și instalați Arduino IDE

Mai întâi, descărcați și instalați Arduino IDE pe sistemul dvs., deoarece îl vom folosi pentru a încărca codul. Puteți descărca și instala Arduino IDE pe sistemul dvs. de la Aici .

Pasul 2: Conectați placa Arduino cu sistemul

Acum utilizați cablul USB, introduceți un capăt al USB tip B în interiorul plăcii Arduino și cealaltă parte a USB tip A în computer.

Pasul 3: Selectați placa Arduino

Deschideți Arduino IDE, accesați Instrumente secțiunea și selectați placa Arduino de acolo. Ar trebui să selectați și Portul după ce ați selectat placa:

Pasul 4: Adăugați codul la Arduino IDE

Acum, adăugați următorul cod în Arduino IDE :

int Resetați = 4 ;

vid înființat ( ) {
digitalWrite ( Resetare, HIGH ) ;
întârziere ( 200 ) ;
pinMode ( Resetare, IEȘIRE ) ;
Serial. ÎNCEPE ( 9600 ) ;
Serial. println ( „Resetarea Arduino în mod programat” ) ;
Serial. println ( „www.linuxhint.com” ) ;
întârziere ( 200 ) ;
}
vid buclă ( )
{
Serial. println ( 'A' ) ;
întârziere ( 1000 ) ;
Serial. println ( 'B' ) ;
întârziere ( 1000 ) ;
Serial. println ( „Să resetam Arduino prin programare” ) ;
Serial. println ( ) ;
întârziere ( 1000 ) ;
digitalWrite ( Resetare, LOW ) ;
Serial. println ( „Arduino nu va ajunge acolo”. ) ;

}

Pasul 5: Conectați un fir

Luați un fir de conectare cu ambele capete deschise și conectați un capăt al firului la Pinul 4 , în timp ce un alt capăt la Resetați pin pe Arduino UNO, după cum se arată mai jos:

Pasul 6: Încărcați Codul

Încărcați codul folosind Încărcați buton:

Pasul 7: Deschideți Monitor serial

Navigați la Monitor serial opțiune:

Acolo veți putea vedea următoarea ieșire:

Ieșirea de mai sus arată că Arduino nu afișează „ Arduino nu va ajunge acolo” și a fost resetat, apoi afișați rezultatul de la început. Acest lucru asigură că metoda a resetat cu succes placa Arduino.

Cum să resetați placa Arduino folosind funcția reset().

De asemenea, puteți utiliza reset() funcția din codul dvs. Arduino pentru a reseta placa Arduino în câteva secunde. Această metodă este destul de simplă de atunci reset() funcția este inclusă în bibliotecile IDE Arduino. Puteți reseta placa Arduino folosind reset() functioneaza din urmatorii pasi:

Pasul 1: Deschideți Arduino IDE și scrieți-vă codul. Ca exemplu, adaug următorul cod:

vid ( * resetFunc ) ( vid ) = 0 ;

vid înființat ( ) {
Serial. ÎNCEPE ( 9600 ) ;
}
vid buclă ( )
{
Serial. println ( '1..' ) ;
întârziere ( 1000 ) ;
Serial. println ( '2..' ) ;
întârziere ( 1000 ) ;
Serial. println ( '3..' ) ;
întârziere ( 1000 ) ;
Serial. println ( „Placa Arduino se resetează acum” ) ;
Serial. println ( ) ;
întârziere ( 1000 ) ;
resetFunc ( ) ;
Serial. println ( „Dacă funcția de resetare() a funcționat, Arduino nu va afișa această ieșire!” ) ;
}

Pasul 2: Urma Pasul 4 la Pasul 7 (exclude Pasul 5) furnizate în metodele furnizate mai sus, care includ încărcarea codului, apoi utilizarea codului Monitor serial pentru a verifica ieșirea.

Ieșirea de mai sus confirmă că placa Arduino a fost resetată cu succes folosind reset() de când a fost resetat, apoi afișează rezultatul de la început.

Cum să resetați placa Arduino folosind metoda Watchdog Timer

The Timer Watchdog este un alt mod eficient de a reseta placa Arduino din codul dvs. Vă permite să resetați microprocesorul după un anumit interval de timp. Este util în cazul în care programul dumneavoastră se oprește în timpul execuției și nu aveți altă cale în afară de resetarea plăcii. Pentru a reseta placa Arduino folosind Metoda Watchdog Timer , urmați pașii de mai jos:

Pasul 1: Deschideți Arduino IDE și inserați următorul cod:

#include < avr / wdt. h >
gol înființat ( ) {
Serial. ÎNCEPE ( 9600 ) ;
wdt_disable ( ) ; //Dezactivați WDT-ul
întârziere ( 2000 ) ;
wdt_enable ( WDTO_2S ) ; //Activarea WDT 2 secunde Timeout
Serial. println ( „WDT este activat” ) ;
}
gol buclă ( ) {
pentru ( int i = 0 ; i < 5 ; i ++ )
{
Serial. println ( 'Continuare' ) ;
întârziere ( 500 ) ;
wdt_reset ( ) ; //Resetarea câinelui de pază
}
in timp ce ( 1 ) ; //Cronometrul Watchdog se va declanșa aici
}

În codul de mai sus, inițializam mai întâi biblioteca pentru Timer Watchdog metodă. Apoi, în interiorul codului, inițializam serialul și dezactivăm Câine de pază la inceput. După o întârziere, activăm Timer Watchdog de 2 secunde, ceea ce înseamnă că Watchdog ar trebui să fie declanșat și reporniți microcontrolerul cu un timeout de 2 secunde. Codul intră apoi în buclă și execută instrucțiunea în timp ce resetează Timer Watchdog fiecare secunda. Apoi intră într-o buclă while infinită care declanșează Watchdog și resetează placa Arduino.

Pasul 2: Acum repetați Pasul 4 până la Pasul 6 (exclude Pasul 5) furnizate în prima metodă pentru a încărca codul, apoi utilizați Monitor serial opțiunea de a verifica rezultatul:

Rezultatul de mai sus arată că o dată Timer Watchdog este activat, va continua bucla, apoi va reseta placa Arduino și va repeta din nou aceiași pași.

Cum să resetați placa Arduino prin resetarea schiței din memorie

Placa Arduino are două tipuri de memorie: memorie flash și RAM. Memoria flash reține conținutul când dispozitivul este oprit, în timp ce conținutul din RAM se pierde când dispozitivul este oprit. Schița care rulează pe placa Arduino este stocată în memoria flash și odată ce încărcați o nouă schiță, aceasta suprascrie schița existentă în memoria flash. Astfel, puteți reseta cu ușurință placa Arduino prin resetarea schiței din memorie, ceea ce înseamnă suprascrierea acesteia cu o nouă schiță. Acest lucru se poate face folosind următorii pași:

Pasul 1: Mai întâi conectați placa Arduino la sistemul dvs., așa cum am menționat mai devreme.

Pasul 2: Mergi la Exemple de la Fişier secțiune, apoi alegeți Minimul strict de la Bazele categorie:

Pasul 3: Asigurați-vă că placa dvs. Arduino este selectată pentru acest exemplu, lucru pe care îl puteți confirma din Instrumente>Placă secțiune:

Notă: Ar trebui să verificați Portul pentru Arduino UNO din Port opțiune folosind același meniu.

Pasul 4: Acum, puteți utiliza Încărcați opțiunea de a încărca codul și a reseta placa Arduino:

Cum să resetați placa Arduino prin resetarea memoriei EEPROM

Plăcile bazate pe AVR au EEPROM, memorie flash nevolatilă care păstrează valorile chiar dacă placa este oprită. Puteți reseta EEPROM utilizând EEPROM.write() funcția care setează octeți la zero, resetând placa Arduino. Următorul cod ar trebui să fie încărcat pe IDE-ul dvs. Arduino conectând mai întâi Arduino UNO la sistemul dvs. Apoi, folosind Încărcați opțiunea de a reseta placa Arduino pe Arduino IDE.

#include < EEPROM. h >

gol înființat ( ) {
// inițializează pinul LED-ului Arduino ca ieșire
pinMode ( 13 , IEȘIRE ) ;

pentru ( int i = 0 ; i < EEPROM. lungime ( ) ; i ++ ) {
EEPROM. scrie ( eu, 0 ) ;
}

// aprinde LED-ul Arduino când ați terminat
digitalWrite ( 13 , ÎNALT ) ;
}

gol buclă ( ) {

}

Concluzie

Resetarea plăcii Arduino este o sarcină de bază și utilizată pe scară largă pentru utilizatorii care lucrează la proiectele lor. Este util în cazul în care codul lor este blocat și singura modalitate rămasă este să resetați placa. Puteți reseta placa Arduino prin placa încorporată butonul de resetare sau folosind resetați pinul . De asemenea, puteți reseta placa Arduino folosind funcția de resetare , metoda timer-ului watchdog , resetarea schitei din memorie sau memorie EEPROM în codul dvs. Ghidul pentru toate metodele este furnizat în secțiunea de mai sus a acestui ghid, alegeți metoda care funcționează cel mai bine pentru dvs. și începeți să codificați cu Arduino Board fără probleme.