BASIC4MCU | 질문게시판 | 답변 2: 아두이노 자전거 후방감지 블루투스 제어
페이지 정보
작성자 master 작성일2018-09-20 12:37 조회10,810회 댓글4건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=5331
작성일
작성일
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2018-09-20 오후 1:57:59// by Ok-Hyun Park//#include <SoftwareSerial.h>#define BT_RXD 8#define BT_TXD 7SoftwareSerial bluetooth(BT_RXD,BT_TXD);//const int TRIG=9,ECHO=10,LED=6,SPEAKER=12;//long duration;int distance,note;char r,mode=0;//void setup(){pinMode(TRIG,OUTPUT); pinMode(ECHO,INPUT);pinMode(LED,OUTPUT); pinMode(SPEAKER,OUTPUT);Serial.begin(9600);bluetooth.begin(9600);}//void loop(){if(mode<=2){ // mode0,1,2 에서만 초음파센서 동작digitalWrite(TRIG,HIGH); delayMicroseconds(10); digitalWrite(TRIG,LOW);duration=pulseIn(ECHO,HIGH); distance=duration/58; // Cm 환산note=(100-distance+200)*10;Serial.print("Distance: "); Serial.print(distance); Serial.println("cm");//if (distance>250){ mode=0; } //거리 2.5M 이상 LED 소등else if(distance>100){ mode=1; } //거리 1~2.5M LED 반 밝기else { mode=2; } //거리 1M 이하 LED 최대 밝기delay(100);}//if(bluetooth.available()){r=bluetooth.read();Serial.write(r);if(r=='0')mode=0; // 초음파 측정모드로 복귀if(r=='1')mode=3; // 점멸if(r=='2')mode=4; // 계속 ONif(r=='3')mode=5; // 계속 OFF}if(Serial.available()){bluetooth.write(Serial.read());}//if(mode==0){ analogWrite(LED, 0); } //거리 2.5M 이상 LED 소등if(mode==1){ analogWrite(LED,128); } //거리 1~2.5M LED 반 밝기if(mode==2){ analogWrite(LED,255); tone(SPEAKER,note,1000); } //거리 1M 이하 LED 최대 밝기if(mode==3){ analogWrite(LED, 0); delay(250); analogWrite(LED,255); delay(250); } // 점멸if(mode==4){ analogWrite(LED,255); } // 계속 ONif(mode==5){ analogWrite(LED, 0); } // 계속 OFF}
댓글 4
조회수 10,810asd8364님의 댓글
asd8364 작성일소스 오류가 뜹니다 마스터님 ㅠㅠ
master님의 댓글
master
mode 변수 선언이 빠져서 발생한 오류입니다.
수정했으니 다시 돌려보세요
asd8364님의 댓글
asd8364 작성일일단 정말 너무 감사드립니다ㅠㅠ 제가 컴파일과 업로드 도 되고 블루투스 핀 다연결하고 동작도 하는데 블루투스 어플로 ON/OFF가 안됩니다.. 어쩌죠..
master님의 댓글
master
시리얼모니터에는 블루투스에서 보낸 값이 뜨던가요?