Paano I-reset ang Arduino Board

Paano I Reset Ang Arduino Board



Ang Arduino Board ay isang kapaki-pakinabang na microcontroller development board na ginagamit ng mga hobbyist at propesyonal upang lumikha ng kanilang mga proyekto. Maaari mong gamitin ang Arduino Board para gumawa ng ilang proyekto mula sa simpleng LED na kumikislap hanggang sa pagkontrol sa mga robot o heavy machine. Upang gumana sa Arduino Boards, kailangan mong mag-upload ng sketch, na isang programa na nagpapaalam sa board kung ano ang gagawin. Gayunpaman, maaaring kailanganin mong i-reset ang iyong Arduino Board minsan dahil sa anumang dahilan.

Sinasaklaw ng gabay na ito ang sumusunod na balangkas:

Bakit Kapaki-pakinabang na I-reset ang Arduino Board







Paano I-reset ang Arduino Board



Konklusyon



Bakit Kapaki-pakinabang na I-reset ang Arduino Board

Ang pag-reset ng Arduino Board ay kapaki-pakinabang sa iba't ibang mga sitwasyon, tulad ng:





  • Maaari mong i-reset ang iyong Arduino Board kung nagkakaproblema ka sa pag-upload ng iyong sketch.
  • Minsan ang na-upload na sketch ay hindi gumagana nang maayos, sa kasong iyon ay kapaki-pakinabang na i-reset ang Arduino Board.
  • Ang pag-reset sa Arduino Board ay maaari ding i-unlock ang board kung ito ay naka-lock o hindi tumutugon.

Paano I-reset ang Arduino Board

Maaari mong i-reset ang Arduino Board:

  • Gamit ang Reset Button
  • Gamit ang I-reset ang Pin
  • Gamit ang reset() Function
  • Gamit ang Paraan ng Watchdog Timer
  • Sa pamamagitan ng Pag-reset ng Sketch sa Memorya
  • Sa pamamagitan ng Pag-reset ng EEPROM Memory

Paano I-reset ang Arduino Board Gamit ang Reset Button

Ang Arduino Board ay may kasamang built-in I-reset ang pindutan na magagamit mo para i-reset ang iyong board. Ang button na ito ay inilalagay sa harap mismo ng USB port na ginagamit para sa Power Supply. Sa pamamagitan ng pagpindot sa button na ito, ang bawat aktibidad sa board na ito ay ititigil at ibabalik nito ang pagpapatupad sa unang linya ng code.



Paano I-reset ang Arduino Board Gamit ang Reset Pin

Kung titingnan mong mabuti ang Arduino Board, mapapansin mo na mayroon din itong Reset pin, na maaaring i-program sa paraang mai-reset nito ang board sa loob ng ilang segundo. Maaari itong maging kapaki-pakinabang kung sakaling hindi gumagana nang maayos ang iyong I-reset na button. Upang gamitin ang Reset Pin na ito upang i-reset ang Arduino Board, kailangan mong gamitin ang mga sumusunod na hakbang:

Hakbang 1: I-download at I-install ang Arduino IDE

Una, i-download at i-install ang Arduino IDE sa iyong system dahil gagamitin namin ito para mag-upload ng code. Maaari mong i-download at i-install ang Arduino IDE sa iyong system mula sa dito .

Hakbang 2: Ikonekta ang Arduino Board sa System

Ngayon gamitin ang USB cable, ipasok ang isang dulo ng USB type B sa loob ng Arduino board at ang kabilang panig ng USB type A sa iyong computer.

Hakbang 3: Piliin ang Arduino Board

Buksan ang Arduino IDE, pumunta sa Mga gamit seksyon at piliin ang Arduino Board mula doon. Dapat mo ring piliin ang Port pagkatapos piliin ang Lupon:

Hakbang 4: Magdagdag ng Code sa Arduino IDE

Ngayon, idagdag ang sumusunod na code sa Arduino IDE :

int I-reset = 4 ;

walang bisa setup ( ) {
digitalWrite ( I-reset, HIGH ) ;
pagkaantala ( 200 ) ;
pinMode ( I-reset, OUTPUT ) ;
Serial. magsimula ( 9600 ) ;
Serial. println ( 'Pag-reset ng Arduino sa Programatically' ) ;
Serial. println ( 'www.linuxhint.com' ) ;
pagkaantala ( 200 ) ;
}
walang bisa loop ( )
{
Serial. println ( 'A' ) ;
pagkaantala ( 1000 ) ;
Serial. println ( 'B' ) ;
pagkaantala ( 1000 ) ;
Serial. println ( 'I-reset Natin Arduino Programmatically' ) ;
Serial. println ( ) ;
pagkaantala ( 1000 ) ;
digitalWrite ( I-reset, LOW ) ;
Serial. println ( 'Hindi makakarating doon ang Arduino.' ) ;

}

Hakbang 5: Ikonekta ang isang Wire

Kumuha ng connecting wire na nakabukas ang magkabilang dulo at ikonekta ang isang dulo ng wire sa Pin 4 , habang ang isa pang dulo sa I-reset pin sa Arduino UNO, tulad ng ipinapakita sa ibaba:

Hakbang 6: I-upload ang Code

I-upload ang code gamit ang Mag-upload pindutan:

Hakbang 7: Buksan ang Serial Monitor

Mag-navigate sa Serial Monitor opsyon:

Doon mo makikita ang sumusunod na output:

Ang output sa itaas ay nagpapakita na ang Arduino ay hindi nagpapakita ng ' Ang Arduino ay hindi makakarating doon' at na-reset, pagkatapos ay ipakita ang resulta mula sa simula. Tinitiyak nito na matagumpay na na-reset ng pamamaraan ang Arduino Board.

Paano I-reset ang Arduino Board Gamit ang reset() Function

Maaari mo ring gamitin ang i-reset() function sa iyong Arduino code upang i-reset ang Arduino Board sa loob ng ilang segundo. Ang pamamaraang ito ay medyo tapat mula noon i-reset() Ang function ay kasama sa mga library ng Arduino IDE. Maaari mong i-reset ang Arduino Board gamit ang i-reset() function mula sa mga sumusunod na hakbang:

Hakbang 1: Buksan ang Arduino IDE at isulat ang iyong code. Bilang halimbawa, idinaragdag ko ang sumusunod na code:

walang bisa ( * resetFunc ) ( walang bisa ) = 0 ;

walang bisa setup ( ) {
Serial. magsimula ( 9600 ) ;
}
walang bisa loop ( )
{
Serial. println ( '1..' ) ;
pagkaantala ( 1000 ) ;
Serial. println ( '2..' ) ;
pagkaantala ( 1000 ) ;
Serial. println ( '3..' ) ;
pagkaantala ( 1000 ) ;
Serial. println ( 'Nagre-reset na ngayon ang Arduino Board' ) ;
Serial. println ( ) ;
pagkaantala ( 1000 ) ;
resetFunc ( ) ;
Serial. println ( 'Kung gumana ang reset() function, hindi ipapakita ng Arduino ang output na ito!' ) ;
}

Hakbang 2: Sundin Hakbang 4 sa Hakbang 7 (ibukod ang Hakbang 5) na ibinigay sa mga pamamaraan na ibinigay sa itaas, na kinabibilangan ng pag-upload ng code, pagkatapos ay paggamit ng Serial Monitor upang suriin ang output.

Kinukumpirma ng output sa itaas na matagumpay na na-reset ang Arduino Board gamit ang i-reset() function dahil na-reset ito, pagkatapos ay ipinapakita ang resulta mula sa simula.

Paano I-reset ang Arduino Board Gamit ang Paraan ng Watchdog Timer

Ang Watchdog Timer ay isa pang mahusay na paraan upang i-reset ang Arduino Board sa iyong code. Pinapayagan ka nitong i-reset ang microprocessor pagkatapos ng isang tiyak na agwat ng oras. Makakatulong ito kung sakaling huminto ang iyong programa sa panahon ng pagpapatupad at wala kang ibang paraan maliban sa pag-reset ng board. Upang i-reset ang Arduino Board gamit ang Paraan ng Watchdog Timer , sundin ang mga hakbang na ibinigay sa ibaba:

Hakbang 1: Buksan ang Arduino IDE at i-paste ang sumusunod na code:

#isama < avr / wdt. h >
walang bisa setup ( ) {
Serial. magsimula ( 9600 ) ;
wdt_disable ( ) ; //Huwag paganahin ang WDT
pagkaantala ( 2000 ) ;
wdt_enable ( WDTO_2S ) ; //Paganahin ang WDT 2 segundong Timeout
Serial. println ( 'Naka-enable ang WDT' ) ;
}
walang bisa loop ( ) {
para sa ( int i = 0 ; i < 5 ; i ++ )
{
Serial. println ( 'Patuloy' ) ;
pagkaantala ( 500 ) ;
wdt_reset ( ) ; // Nire-reset ang watchdog
}
habang ( 1 ) ; //Magti-trigger dito ang watchdog timer
}

Sa code sa itaas, sinisimulan muna namin ang library para sa Watchdog Timer paraan. Pagkatapos sa loob ng code, sinisimulan namin ang Serial at hindi paganahin ang asong nagbabantay sa simula. Pagkatapos ng ilang pagkaantala, pinagana namin ang Watchdog Timer ng 2 segundo, na nangangahulugan na ang Watchdog ay dapat ma-trigger at i-restart ang microcontroller na may timeout na 2 segundo. Pagkatapos ay papasok ang code sa loop at ipapatupad ang pahayag habang nire-reset ang Watchdog Timer bawat segundo. Pagkatapos ay papasok ito sa isang walang katapusan na while loop na nagti-trigger sa Watchdog at i-reset ang Arduino Board.

Hakbang 2: Ngayon ulitin Hakbang 4 hanggang Hakbang 6 (ibukod ang Hakbang 5) ibinigay sa unang paraan upang i-upload ang code, pagkatapos ay gamitin ang Serial Monitor pagpipilian upang suriin ang output:

Ang output sa itaas ay nagpapakita na isang beses Watchdog Timer ay pinagana, ipagpapatuloy nito ang loop, pagkatapos ay i-reset ang Arduino Board at ulitin muli ang parehong mga hakbang.

Paano I-reset ang Arduino Board Sa pamamagitan ng Pag-reset ng Sketch sa Memory

Ang Arduino Board ay may dalawang uri ng memorya: flash memory at RAM. Pinapanatili ng flash memory ang content kapag naka-off ang device, habang nawawala ang content sa RAM kapag naka-off ang device. Ang sketch na tumatakbo sa iyong Arduino Board ay naka-imbak sa flash-memory at kapag nag-upload ka ng bagong sketch, ino-overwrite nito ang kasalukuyang sketch sa flash memory. Kaya, madali mong mai-reset ang Arduino Board sa pamamagitan ng pag-reset ng sketch sa memorya, na nangangahulugan ng pag-overwrit nito ng bagong sketch. Magagawa ito sa pamamagitan ng paggamit ng mga sumusunod na hakbang:

Hakbang 1: Ikonekta muna ang iyong Arduino Board sa iyong system tulad ng nabanggit kanina.

Hakbang 2: Pumunta sa Mga halimbawa galing sa file seksyon, pagkatapos ay piliin Ang hubad na minimum galing sa Mga pangunahing kaalaman kategorya:

Hakbang 3: Tiyaking napili ang iyong Arduino Board para sa halimbawang ito, na maaari mong kumpirmahin mula sa Tools>Board seksyon:

Tandaan: Dapat mong suriin ang Port para sa iyong Arduino UNO mula sa Port opsyon gamit ang parehong menu.

Hakbang 4: Ngayon, maaari mong gamitin ang Mag-upload opsyon upang i-upload ang code at i-reset ang Arduino Board:

Paano I-reset ang Arduino Board Sa pamamagitan ng Pag-reset ng EEPROM Memory

Ang mga board na nakabatay sa AVR ay may EEPROM, non-volatile flash memory na nagpapanatili ng mga value kahit na naka-off ang board. Maaari mong i-reset ang EEPROM sa pamamagitan ng paggamit ng EEPROM.write() function na itinakda ay bytes sa zero, na nire-reset ang Arduino Board. Ang sumusunod na code ay dapat na ma-upload sa iyong Arduino IDE sa pamamagitan ng unang pagkonekta sa Arduino UNO sa iyong system. Pagkatapos, gamit ang Mag-upload opsyon upang i-reset ang Arduino Board sa Arduino IDE.

#isama < EEPROM. h >

walang bisa setup ( ) {
// pagsisimula ng Arduino LED pin bilang isang output
pinMode ( 13 , OUTPUT ) ;

para sa ( int i = 0 ; i < EEPROM. haba ( ) ; i ++ ) {
EEPROM. magsulat ( ako, 0 ) ;
}

// i-on ang Arduino LED kapag tapos na
digitalWrite ( 13 , MATAAS ) ;
}

walang bisa loop ( ) {

}

Konklusyon

Ang pag-reset ng Arduino Board ay isang pangunahing at malawakang ginagamit na gawain para sa mga user na nagtatrabaho sa kanilang mga proyekto. Ito ay kapaki-pakinabang sa kaso kung ang kanilang code ay natigil at ang tanging paraan na natitira ay i-reset ang board. Maaari mong i-reset ang Arduino Board sa pamamagitan ng built-in pindutan ng pag-reset o gamit ang i-reset ang pin . Maaari mo ring i-reset ang Arduino Board gamit ang i-reset ang function , paraan ng watchdog timer , pag-reset ng sketch sa memorya o EEPROM memory sa iyong code. Ang gabay para sa lahat ng mga pamamaraan ay ibinibigay sa itaas na seksyon ng gabay na ito, piliin ang paraan na pinakamahusay na gumagana para sa iyo at simulan ang coding gamit ang Arduino Board nang walang putol.