BASIC4MCU | 질문게시판 | 아두이노 millis() 시작과 일시정지 코딩수정 부탁드립니다.
페이지 정보
작성자 CSnake 작성일2018-12-12 03:42 조회6,854회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=6744
본문
일단 제 소스입니다.#include <LiquidCrystal.h>LiquidCrystal lcd(1, 2, 4, 5, 6, 7);const int irDetectPin = 3;//FC-51 Pin 설정const int touchss = 13;//Touchss Pin 설정const int reset = 10;//리셋 Pin 설정void setup() {lcd.begin(16,2);lcd.print("Stopwatch:");pinMode(irDetectPin, INPUT); //FC-51 입력으로 설정pinMode(touchss, INPUT); //touch 입력으로 설정pinMode(reset, OUTPUT); //리셋 출력으로 설정}void loop() {int noDetect = digitalRead(irDetectPin);//적외선감지센서 입력을 디지털신호로 가지고 옴int touch = digitalRead(touchss);//터치센서 입력을 디지털신호로 가지고 옴if(touch)digitalWrite(reset, 0);//터치센서가 터치 안 될 경우 리셋 출력에 0elsedigitalWrite(reset, 1);//터치센서가 터치 안 될 경우 리셋 출력에 1if(noDetect==LOW){lcd.setCursor(0, 1);lcd.print(millis() / 3600000); //재설정 후 시간 입력lcd.print("h:");lcd.print(millis() / 60000); //재설정 후 분 입력lcd.print("m:");lcd.print(millis() / 1000); // 재설정 후 초 입력lcd.print("s");}}irDetectPin는 적외선 감지센서입니다.이 적외선 감지센서에 감지가 되면 millis()가 동작하여 LCD에 나타나고,감지가 풀리면 millis()가 일시정지하여 그 값을 유지하고 있다가, 다시 센서에 감지되면 시작되는 코딩 수정좀 부탁드립니다..(적외선감지센서를 스위치로 하는 스톱워치를 만들고 있습니다.)지금은 감지센서의 감지여부에 따라 시간이 멈추긴 하지만, 보이지 않는 곳에서 계속 시간이 돌아갑니다.
댓글 0
조회수 6,854등록된 댓글이 없습니다.