Jak zresetować płytkę Arduino

Jak Zresetowac Plytke Arduino



Płytka Arduino to przydatna płytka rozwojowa mikrokontrolera używana przez hobbystów i profesjonalistów do tworzenia swoich projektów. Za pomocą płytki Arduino możesz stworzyć kilka projektów, od prostego mrugania diodami LED po sterowanie robotami lub ciężkimi maszynami. Aby pracować z płytkami Arduino, należy wgrać szkic, czyli program, który informuje płytkę, co ma robić. Czasami jednak z jakiegoś powodu może zaistnieć potrzeba zresetowania płytki Arduino.

Ten przewodnik obejmuje następujący zarys:

Dlaczego warto zresetować płytkę Arduino







Jak zresetować płytkę Arduino



Wniosek



Dlaczego warto zresetować płytkę Arduino

Resetowanie płytki Arduino jest przydatne w różnych scenariuszach, takich jak:





  • Jeśli masz problemy z przesłaniem szkicu, możesz zresetować tablicę Arduino.
  • Czasami przesłany szkic nie działa poprawnie, w takim przypadku warto zresetować płytkę Arduino.
  • Zresetowanie płytki Arduino może również odblokować płytkę, jeśli jest zablokowana lub nie odpowiada.

Jak zresetować płytkę Arduino

Możesz zresetować płytkę Arduino:

  • Korzystanie z przycisku resetowania
  • Korzystanie z PINu resetowania
  • Korzystanie z funkcji reset().
  • Korzystanie z metody zegara Watchdog
  • Resetując szkic w pamięci
  • Resetując pamięć EEPROM

Jak zresetować płytkę Arduino za pomocą przycisku resetowania

Płytka Arduino zawiera wbudowaną płytkę Przycisk reset za pomocą którego możesz zresetować swoją tablicę. Przycisk ten znajduje się tuż przed portem USB służącym do zasilania. Naciśnięcie tego przycisku spowoduje zatrzymanie każdej aktywności na tej tablicy i cofnie wykonanie do pierwszej linii kodu.



Jak zresetować płytkę Arduino za pomocą pinu resetującego

Jeśli przyjrzysz się uważnie płytce Arduino, zauważysz, że posiada ona również pin resetowania, który można zaprogramować w taki sposób, aby mógł zresetować płytkę w ciągu kilku sekund. Może to być przydatne, jeśli przycisk Reset nie działa prawidłowo. Aby użyć tego pinu resetującego do zresetowania płytki Arduino, musisz wykonać następujące kroki:

Krok 1: Pobierz i zainstaluj Arduino IDE

Najpierw pobierz i zainstaluj Arduino IDE w swoim systemie, ponieważ będziemy go używać do przesyłania kodu. Możesz pobrać i zainstalować Arduino IDE w swoim systemie ze strony Tutaj .

Krok 2: Połącz płytkę Arduino z systemem

Teraz użyj kabla USB, włóż jeden koniec USB typu B do płytki Arduino, a drugi koniec USB typu A do komputera.

Krok 3: Wybierz płytkę Arduino

Otwórz Arduino IDE, przejdź do Narzędzia sekcję i wybierz stamtąd płytkę Arduino. Powinieneś także wybrać Port po wybraniu płytki:

Krok 4: Dodaj kod do Arduino IDE

Teraz dodaj następujący kod w pliku ArduinoIDE :

wew Resetowanie = 4 ;

próżnia organizować coś ( ) {
cyfrowy zapis ( Zresetuj, WYSOKI ) ;
opóźnienie ( 200 ) ;
tryb pin ( Resetuj, WYJŚCIE ) ;
Seryjny. zaczynać ( 9600 ) ;
Seryjny. drukuj ( „Programowe resetowanie Arduino” ) ;
Seryjny. drukuj ( 'www.linuxhint.com' ) ;
opóźnienie ( 200 ) ;
}
próżnia pętla ( )
{
Seryjny. drukuj ( 'A' ) ;
opóźnienie ( 1000 ) ;
Seryjny. drukuj ( 'B' ) ;
opóźnienie ( 1000 ) ;
Seryjny. drukuj ( „Zresetujmy programowo Arduino” ) ;
Seryjny. drukuj ( ) ;
opóźnienie ( 1000 ) ;
cyfrowy zapis ( Zresetuj, NISKI ) ;
Seryjny. drukuj ( „Arduino tam nie dosięgnie”. ) ;

}

Krok 5: Podłącz przewód

Weź przewód łączący z otwartymi obydwoma końcami i podłącz jeden koniec przewodu do Przypnij 4 , podczas gdy inny koniec Resetowanie pin na Arduino UNO, jak pokazano poniżej:

Krok 6: Prześlij kod

Prześlij kod za pomocą Wgrywać przycisk:

Krok 7: Otwórz Monitor szeregowy

Przejdź do Monitor szeregowy opcja:

Tam będziesz mógł zobaczyć następujące dane wyjściowe:

Powyższe dane wyjściowe pokazują, że Arduino nie wyświetla „ Arduino tam nie dotrze” i został zresetowany, a następnie wyświetl wynik od początku. Gwarantuje to, że metoda pomyślnie zresetowała płytkę Arduino.

Jak zresetować płytkę Arduino za pomocą funkcji reset().

Możesz także skorzystać z Resetowanie() funkcję w kodzie Arduino, aby zresetować płytkę Arduino w ciągu kilku sekund. Ta metoda jest dość prosta, ponieważ Resetowanie() funkcja jest zawarta w bibliotekach Arduino IDE. Możesz zresetować tablicę Arduino za pomocą Resetowanie() funkcję, wykonując następujące kroki:

Krok 1: Otwórz Arduino IDE i napisz swój kod. Dla przykładu dodam następujący kod:

próżnia ( * resetFun ) ( próżnia ) = 0 ;

próżnia organizować coś ( ) {
Seryjny. zaczynać ( 9600 ) ;
}
próżnia pętla ( )
{
Seryjny. drukuj ( „1..” ) ;
opóźnienie ( 1000 ) ;
Seryjny. drukuj ( „2..” ) ;
opóźnienie ( 1000 ) ;
Seryjny. drukuj ( „3..” ) ;
opóźnienie ( 1000 ) ;
Seryjny. drukuj ( „Płyta Arduino resetuje się teraz” ) ;
Seryjny. drukuj ( ) ;
opóźnienie ( 1000 ) ;
resetFun ( ) ;
Seryjny. drukuj ( „Jeśli funkcja reset() zadziałała, Arduino nie wyświetli tego wyniku!” ) ;
}

Krok 2: Podążać Krok 4 Do Krok 7 (wyklucz Krok 5) dostarczone w powyższych metodach, które obejmują przesłanie kodu, a następnie użycie Monitor szeregowy aby sprawdzić dane wyjściowe.

Powyższe dane wyjściowe potwierdzają, że płyta Arduino została pomyślnie zresetowana za pomocą Resetowanie() funkcję od czasu jej zresetowania, a następnie wyświetla wynik od początku.

Jak zresetować płytkę Arduino za pomocą metody zegara Watchdog

The Zegar stróżujący to kolejny skuteczny sposób na zresetowanie płytki Arduino w kodzie. Umożliwia zresetowanie mikroprocesora po upływie określonego czasu. Jest to pomocne w przypadku, gdy program zatrzyma się w trakcie wykonywania i nie będzie innego wyjścia niż zresetowanie płytki. Aby zresetować płytkę Arduino za pomocą Metoda Watchdog Timera , wykonaj poniższe kroki:

Krok 1: Otwórz Arduino IDE i wklej następujący kod:

#włączać < śr / wdt. H >
próżnia organizować coś ( ) {
Seryjny. zaczynać ( 9600 ) ;
wdt_disable ( ) ; //Wyłącz WDT
opóźnienie ( 2000 ) ;
wdt_enable ( WDTO_2S ) ; //Włączanie WDT 2-sekundowy limit czasu
Seryjny. drukuj ( „WDT jest włączone” ) ;
}
próżnia pętla ( ) {
Do ( wew I = 0 ; I < 5 ; I ++ )
{
Seryjny. drukuj ( „Kontynuacja” ) ;
opóźnienie ( 500 ) ;
      wdt_reset ( ) ; //Resetowanie watchdoga
}
chwila ( 1 ) ; //W tym miejscu zostanie uruchomiony licznik czasu Watchdog
}

W powyższym kodzie najpierw inicjujemy bibliotekę dla Zegar stróżujący metoda. Następnie w kodzie inicjujemy Serial i wyłączamy Pies podwórzowy Na początku. Po pewnym opóźnieniu włączamy Zegar stróżujący 2 sekundy, co oznacza, że ​​Watchdog powinien zostać uruchomiony i ponownie uruchomić mikrokontroler z limitem czasu wynoszącym 2 sekundy. Następnie kod wchodzi do pętli i wykonuje instrukcję podczas resetowania Zegar stróżujący każda sekunda. Następnie wchodzi w nieskończoną pętlę while, która uruchamia Watchdog i resetuje płytkę Arduino.

Krok 2: Teraz powtórz Krok 4 do Kroku 6 (wyklucz Krok 5) podany w pierwszej metodzie, aby przesłać kod, a następnie użyj metody Monitor szeregowy opcja sprawdzenia danych wyjściowych:

Powyższe dane wyjściowe pokazują to raz Zegar stróżujący jest włączona, będzie kontynuować pętlę, następnie zresetuje płytkę Arduino i powtórzy te same kroki ponownie.

Jak zresetować płytkę Arduino, resetując szkic w pamięci

Płyta Arduino ma dwa rodzaje pamięci: pamięć flash i pamięć RAM. Pamięć Flash zachowuje zawartość po wyłączeniu urządzenia, natomiast zawartość pamięci RAM zostaje utracona po wyłączeniu urządzenia. Szkic działający na płytce Arduino jest przechowywany w pamięci flash, a po przesłaniu nowego szkicu zastępuje on istniejący szkic w pamięci flash. Dzięki temu w łatwy sposób można zresetować płytkę Arduino resetując szkic w pamięci, co oznacza nadpisanie go nowym szkicem. Można to zrobić, wykonując następujące kroki:

Krok 1: Najpierw podłącz tablicę Arduino do systemu, jak wspomniano wcześniej.

Krok 2: Iść do Przykłady z Plik sekcję, a następnie wybierz Absolutne minimum z Podstawy Kategoria:

Krok 3: Upewnij się, że dla tego przykładu wybrano płytkę Arduino, co możesz potwierdzić na stronie Narzędzia>Płyta Sekcja:

Notatka: Powinieneś sprawdzić Port dla swojego Arduino UNO z Port opcję przy użyciu tego samego menu.

Krok 4: Teraz możesz skorzystać z Wgrywać możliwość wgrania kodu i zresetowania płytki Arduino:

Jak zresetować płytkę Arduino, resetując pamięć EEPROM

Płyty oparte na AVR posiadają EEPROM, nieulotną pamięć flash, która przechowuje wartości nawet po wyłączeniu płyty. Możesz zresetować EEPROM za pomocą Zapis EEPROM() funkcja, która ustawia bajty na zero, resetując płytkę Arduino. Poniższy kod należy załadować do Arduino IDE, podłączając najpierw Arduino UNO do swojego systemu. Następnie za pomocą Wgrywać możliwość zresetowania płytki Arduino w Arduino IDE.

#włączać < EEPROM. H >

próżnia organizować coś ( ) {
// inicjalizacja pinu LED Arduino jako wyjścia
tryb pin ( 13 , WYJŚCIE ) ;

Do ( wew I = 0 ; I < EEPROM. długość ( ) ; I ++ ) {
EEPROM. pisać ( I, 0 ) ;
}

// włączenie diody LED Arduino po zakończeniu
cyfrowy zapis ( 13 , WYSOKI ) ;
}

próżnia pętla ( ) {

}

Wniosek

Resetowanie płytki Arduino to podstawowe i szeroko stosowane zadanie dla użytkowników pracujących nad swoimi projektami. Przydaje się to w przypadku, gdy kod się zawiesił i pozostaje jedynie zresetować płytkę. Możesz zresetować płytkę Arduino za pomocą wbudowanego modułu przycisk reset lub za pomocą zresetuj pin . Możesz także zresetować płytkę Arduino za pomocą funkcja resetowania , metoda watchdoga , resetowanie szkicu w pamięci Lub Pamięć EEPROM w swoim kodzie. Przewodnik po wszystkich metodach znajduje się w powyższej części tego przewodnika. Wybierz metodę, która jest dla Ciebie najlepsza i bezproblemowo rozpocznij kodowanie za pomocą Arduino Board.