본문 바로가기
아두이노

아두이노 reset -#2

by 오징어땅콩2 2020. 1. 27.
반응형

이 방법은 소프트웨어적인 방법이다.

그래도 예제로 보이기 위해서는, 시발점, 트리거를 위해서 2번핀에 풀다운 버턴을 하나 달았다.

비전공자라서 그런지 항상 풀다운, 풀업이 헷갈린다.

그래도 몰라도 된다. 할때 마다 책보면 되니까... 일단 선을 연결하고 하드웨어를 만들자.

별것 없으니 사진만 봐도 충분 할 것 같다.

그리고 소스코드에서 함수를 호출 한다.

 

딜레이를 준이유는 직접하면 알겠지만, 한번 누르면 여러번 리셋된다. 

그것을 방지하기 위한것이고, 리셋하는 함수는 실제로 한줄이다.

#include <avr/wdt.h>
 
#define BAUD 115200
void setup() 
{
    Serial.begin(BAUD);   
    wdt_disable();
    pinMode(2,  INPUT);
    Serial.print("ARDUINO RESET TEST!!! \n");
}
 
void loop() 
{
  int v1= digitalRead(2);
  if(v1== HIGH) software_reset();
}
 
void software_reset()
{
    Serial.print("RESET \n");
    delay(1000);
    wdt_enable(WDTO_1S);
    Serial.print("NOTHING!!! \n");
}
 
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter

 

'아두이노' 카테고리의 다른 글

아두이노 reset -#4  (0) 2020.01.27
아두이노 reset -#3  (0) 2020.01.27
아두이노 reset -#1  (0) 2020.01.27
아두이노 on/off 제어 - #3  (0) 2020.01.12
아두이노 on/off 제어 - #2  (0) 2020.01.12

댓글