Ako resetovať dosku Arduino

Ako Resetovat Dosku Arduino



Arduino Board je užitočná vývojová doska mikrokontroléra, ktorú používajú fanúšikovia a profesionáli na vytváranie svojich projektov. Dosku Arduino môžete použiť na vytvorenie niekoľkých projektov od jednoduchého blikania LED až po ovládanie robotov alebo ťažkých strojov. Ak chcete pracovať s doskami Arduino, musíte nahrať skicu, čo je program, ktorý informuje dosku, čo má robiť. Niekedy však z akéhokoľvek dôvodu možno budete musieť resetovať dosku Arduino.

Táto príručka obsahuje nasledujúci prehľad:

Prečo je užitočné resetovať dosku Arduino







Ako resetovať dosku Arduino



Záver



Prečo je užitočné resetovať dosku Arduino

Resetovanie dosky Arduino je užitočné v rôznych scenároch, ako napríklad:





  • Ak máte problémy s nahrávaním skice, môžete svoju dosku Arduino resetovať.
  • Niekedy nahraný náčrt nefunguje správne, v takom prípade je užitočné resetovať dosku Arduino.
  • Resetovanie dosky Arduino môže tiež odomknúť dosku, ak je zablokovaná alebo nereaguje.

Ako resetovať dosku Arduino

Dosku Arduino môžete resetovať:

  • Pomocou tlačidla Reset
  • Pomocou Reset Pin
  • Pomocou funkcie reset().
  • Použitie metódy Watchdog Timer
  • Resetovaním náčrtu v pamäti
  • Resetovaním pamäte EEPROM

Ako resetovať dosku Arduino pomocou tlačidla Reset

Arduino Board obsahuje vstavaný Tlačidlo reštart ktoré môžete použiť na resetovanie dosky. Toto tlačidlo je umiestnené tesne pred portom USB používaným na napájanie. Stlačením tohto tlačidla sa zastaví každá aktivita na tejto doske a vykoná sa späť na prvý riadok kódu.



Ako resetovať dosku Arduino pomocou resetovacieho kolíka

Ak sa na dosku Arduino pozriete pozorne, všimnete si, že má aj resetovací kolík, ktorý je možné naprogramovať tak, že dosku dokáže resetovať v priebehu niekoľkých sekúnd. To môže byť užitočné v prípade, že tlačidlo Reset nefunguje správne. Ak chcete použiť tento resetovací kolík na resetovanie dosky Arduino, musíte použiť nasledujúce kroky:

Krok 1: Stiahnite si a nainštalujte Arduino IDE

Najprv si stiahnite a nainštalujte Arduino IDE do svojho systému, pretože ho použijeme na nahranie kódu. Arduino IDE si môžete stiahnuť a nainštalovať do svojho systému z tu .

Krok 2: Pripojte dosku Arduino so systémom

Teraz použite kábel USB, vložte jeden koniec USB typu B do dosky Arduino a druhú stranu USB typu A do počítača.

Krok 3: Vyberte dosku Arduino

Otvorte Arduino IDE, prejdite na Nástroje sekciu a odtiaľ vyberte dosku Arduino. Po výbere dosky by ste tiež mali vybrať Port:

Krok 4: Pridajte kód do Arduino IDE

Teraz pridajte nasledujúci kód do Arduino IDE :

int Resetovať = 4 ;

neplatné nastaviť ( ) {
digitalWrite ( Resetovať, VYSOKÉ ) ;
meškanie ( 200 ) ;
pinMode ( Resetovať, VÝSTUP ) ;
Serial. začať ( 9600 ) ;
Serial. println ( 'Programové resetovanie Arduina' ) ;
Serial. println ( 'www.linuxhint.com' ) ;
meškanie ( 200 ) ;
}
neplatné slučka ( )
{
Serial. println ( 'A' ) ;
meškanie ( 1000 ) ;
Serial. println ( 'B' ) ;
meškanie ( 1000 ) ;
Serial. println ( 'Poďme programovo resetovať Arduino' ) ;
Serial. println ( ) ;
meškanie ( 1000 ) ;
digitalWrite ( Resetovať, NÍZKA ) ;
Serial. println ( 'Arduino tam nedosiahne.' ) ;

}

Krok 5: Pripojte drôt

Vezmite spojovací drôt s otvorenými oboma koncami a pripojte jeden koniec drôtu Pin 4 , zatiaľ čo iný koniec Resetovať kolík na Arduino UNO, ako je znázornené nižšie:

Krok 6: Nahrajte kód

Nahrajte kód pomocou Nahrať tlačidlo:

Krok 7: Otvorte Serial Monitor

Prejdite na Sériový monitor možnosť:

Tam budete môcť vidieť nasledujúci výstup:

Vyššie uvedený výstup ukazuje, že Arduino nezobrazuje „ Arduino tam nedosiahne“ a resetovali sa, potom zobrazte výsledok od začiatku. To zaisťuje, že metóda úspešne resetovala dosku Arduino.

Ako resetovať dosku Arduino pomocou funkcie reset ()

Môžete tiež použiť reset() funkciu vo vašom Arduino kóde resetujte Arduino dosku v priebehu niekoľkých sekúnd. Odvtedy je táto metóda pomerne jednoduchá reset() funkcia je zahrnutá v knižniciach Arduino IDE. Dosku Arduino môžete resetovať pomocou reset() funkciu z nasledujúcich krokov:

Krok 1: Otvorte Arduino IDE a napíšte svoj kód. Ako príklad pridávam nasledujúci kód:

neplatné ( * resetFunc ) ( neplatné ) = 0 ;

neplatné nastaviť ( ) {
Serial. začať ( 9600 ) ;
}
neplatné slučka ( )
{
Serial. println ( '1..' ) ;
meškanie ( 1000 ) ;
Serial. println ( '2..' ) ;
meškanie ( 1000 ) ;
Serial. println ( '3..' ) ;
meškanie ( 1000 ) ;
Serial. println ( 'Doska Arduino sa teraz resetuje' ) ;
Serial. println ( ) ;
meškanie ( 1000 ) ;
resetFunc ( ) ;
Serial. println ( 'Ak funkcia reset() fungovala, Arduino tento výstup nezobrazí!' ) ;
}

Krok 2: Sledujte Krok 4 do Krok 7 (okrem kroku 5) poskytované vyššie uvedenými spôsobmi, ktoré zahŕňajú nahranie kódu a následné použitie Sériový monitor na kontrolu výstupu.

Vyššie uvedený výstup potvrdzuje, že doska Arduino je úspešne resetovaná pomocou reset() od resetovania, potom zobrazí výsledok od začiatku.

Ako resetovať dosku Arduino pomocou metódy Watchdog Timer

The Časovač strážneho psa je ďalším efektívnym spôsobom resetovania dosky Arduino vo vašom kóde. Umožňuje vám resetovať mikroprocesor po určitom časovom intervale. Je to užitočné v prípade, že sa váš program počas vykonávania zastaví a nemáte inú možnosť okrem resetovania dosky. Ak chcete resetovať dosku Arduino pomocou Metóda Watchdog Timer , postupujte podľa krokov uvedených nižšie:

Krok 1: Otvorte Arduino IDE a vložte nasledujúci kód:

#include < avr / wdt. h >
neplatné nastaviť ( ) {
Serial. začať ( 9600 ) ;
wdt_disable ( ) ; //Zakázať WDT
meškanie ( 2000 ) ;
wdt_enable ( WDTO_2S ) ; //Povolenie časového limitu WDT 2 sekundy
Serial. println ( 'WDT je ​​povolené' ) ;
}
neplatné slučka ( ) {
pre ( int i = 0 ; i < 5 ; i ++ )
{
Serial. println ( 'pokračovanie' ) ;
meškanie ( 500 ) ;
wdt_reset ( ) ; //Resetovanie strážneho psa
}
zatiaľ čo ( 1 ) ; //Tu sa spustí časovač Watchdog
}

Vo vyššie uvedenom kóde najprv inicializujeme knižnicu pre Časovač strážneho psa metóda. Potom v kóde inicializujeme Serial a deaktivujeme Strážny pes na začiatku. Po určitom oneskorení povolíme Časovač strážneho psa 2 sekundy, čo znamená, že by sa mal spustiť Watchdog a reštartovať mikrokontrolér s časovým limitom 2 sekúnd. Kód potom vstúpi do slučky a vykoná príkaz pri resetovaní Časovač strážneho psa každú sekundu. Potom vstúpi do nekonečnej slučky while, ktorá spustí Watchdog a resetuje dosku Arduino.

Krok 2: Teraz opakujte Krok 4 až Krok 6 (okrem kroku 5) poskytnutý v prvej metóde na nahranie kódu, potom použite Sériový monitor možnosť kontroly výstupu:

Vyššie uvedený výstup ukazuje, že raz Časovač strážneho psa je povolená, bude pokračovať v slučke, potom resetujte dosku Arduino a zopakujte rovnaké kroky znova.

Ako resetovať dosku Arduino resetovaním náčrtu v pamäti

Arduino Board má dva typy pamäte: flash pamäť a RAM. Flash pamäť uchováva obsah, keď je zariadenie vypnuté, zatiaľ čo obsah v RAM sa stratí, keď je zariadenie vypnuté. Náčrt bežiaci na doske Arduino je uložený vo flash pamäti a keď nahráte nový náčrt, prepíše existujúci náčrt vo flash pamäti. Dosku Arduino tak môžete jednoducho resetovať resetovaním náčrtu v pamäti, čo znamená, že ho prepíšete novým náčrtom. Môžete to urobiť pomocou nasledujúcich krokov:

Krok 1: Najprv pripojte dosku Arduino k vášmu systému, ako bolo uvedené vyššie.

Krok 2: Ísť do Príklady z Súbor sekciu, potom vyberte Úplné minimum z Základy kategória:

Krok 3: Uistite sa, že je pre tento príklad vybratá doska Arduino, čo môžete potvrdiť na stránke Nástroje>Doska sekcia:

Poznámka: Mali by ste skontrolovať port pre váš Arduino UNO z Port možnosť pomocou rovnakého menu.

Krok 4: Teraz môžete použiť Nahrať možnosť nahrať kód a resetovať dosku Arduino:

Ako resetovať dosku Arduino resetovaním pamäte EEPROM

Dosky založené na AVR majú EEPROM, energeticky nezávislú flash pamäť, ktorá uchováva hodnoty, aj keď je doska vypnutá. EEPROM môžete resetovať pomocou EEPROM.write() funkcia, ktorá nastavuje bajty na nulu, resetuje dosku Arduino. Nasledujúci kód by sa mal nahrať do vášho Arduino IDE tak, že najprv pripojíte Arduino UNO k vášmu systému. Potom pomocou Nahrať možnosť resetovania dosky Arduino na Arduino IDE.

#include < EEPROM. h >

neplatné nastaviť ( ) {
// inicializácia pinu Arduino LED ako výstupu
pinMode ( 13 , VÝKON ) ;

pre ( int i = 0 ; i < EEPROM. dĺžka ( ) ; i ++ ) {
EEPROM. písať ( ja, 0 ) ;
}

// zapnutie Arduino LED po dokončení
digitalWrite ( 13 , VYSOKÝ ) ;
}

neplatné slučka ( ) {

}

Záver

Resetovanie dosky Arduino je základná a široko používaná úloha pre používateľov, ktorí pracujú na svojich projektoch. Je to užitočné v prípade, ak sa ich kód zasekne a zostáva jediný spôsob, ako resetovať dosku. Dosku Arduino môžete resetovať pomocou vstavaného tlačidlo reštart alebo pomocou resetovať pin . Dosku Arduino môžete tiež resetovať pomocou funkcia reset , metóda časovača strážneho psa , resetovanie náčrtu v pamäti alebo Pamäť EEPROM vo vašom kóde. Sprievodca všetkými metódami je uvedený vo vyššie uvedenej časti tejto príručky, vyberte si metódu, ktorá vám najlepšie vyhovuje, a začnite hladko kódovať pomocou dosky Arduino.