아두이노 코드로 리셋하기 > 아두이노

본문 바로가기

회원로그인

회원가입

아두이노

아두이노 코드로 리셋하기

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 75회 작성일 22-05-17 11:47

본문

https://www.youtube.com/watch?v=qrXFu7F8R9c

============================

1. 실행주소를 0번으로 이동시킴

void resetFunc() {
    asm volatile("jmp 0");
}

============================


============================

2. 10번핀과, RST 핀을 연결


// 리셋함수 : 아두이노의 10번핀을 LOW로 변경하여 RESET
// 해당 핀을 아두이노의 RESET 핀에 연결하여 아두이노를 RESET

void setup() {
  // 아두이노의 핀은 기본적으로 시작시 PULLED LOW 이므로
  // 시작하자마자 HIGH로 변경한다.
  digitalWrite(10, HIGH);
 
  Serial.begin(115200);
  delay(100);
  Serial.println("start");

  pinMode(10, OUTPUT);
  digitalWrite(10, HIGH);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println( millis() );
  if ( millis() > 10000) {
    resetFunc();
  }

  delay(1000);
}

void resetFunc() {
  //asm volatile("jmp 0");
  digitalWrite(10, LOW);
  delay(100);
  digitalWrite(10, HIGH);
}

 

============================

댓글목록

등록된 댓글이 없습니다.