BASIC4MCU | 질문게시판 | 답변 : 아두이노 압력 센서로 LED 불빛 들어오게 할려고 하는데...
페이지 정보
작성자 master 작성일2024-09-12 16:49 조회307회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=23867
본문
const int P=A0; // 압력 센서 연결 핀const int G=9; // 초록색 LED 핀const int Y=10; // 노란색 LED 핀const int R=11; // 빨간색 LED 핀const int M=2; // 진동 모터 핀//const int tol=2; // 범위 ±2//int random_Val; // 랜덤한 압력 값//void setup(){pinMode(P,INPUT);pinMode(G,OUTPUT); pinMode(Y,OUTPUT); pinMode(R,OUTPUT);pinMode(M,OUTPUT);randomSeed(analogRead(0)); random_Val=random(1,351); // 1에서 350까지의 랜덤 값Serial.begin(9600); Serial.print("Random Pressure Value: "); Serial.println(random_Val);}//void loop(){int p_Val=analogRead(P); Serial.print("Pressure Value: "); Serial.println(p_Val); // 압력// 압력 값 범위 설정int p_Min=random_Val-tol;int p_Max=random_Val+tol;// LED와 진동 모터 제어if(p_Val>=p_Min && p_Val<=p_Max){ digitalWrite(G,1); digitalWrite(Y,0); digitalWrite(R,0); } // 압력 값이 범위 내에 있을 때else if(p_Valelse { digitalWrite(G,0); digitalWrite(Y,0); digitalWrite(R,1); } // 압력 값이 범위보다 높을 때// 진동 모터 제어if(p_Valp_Max){ digitalWrite(M,1); } // 진동 모터 작동else { digitalWrite(M,0); } // 진동 모터 정지//delay(100); // 100ms 대기}코드 들여쓰기를 하면 가독성이 높아져서 수정이나 디버깅이 쉬워집니다.랜덤값이 낮은 값일 때는 오류가 발생할 가능성도 있으나, 다른 부분에서 문제가 될만한 부분은 보이지 않습니다.어떤 조건에서든 (색이 달라질 뿐, 어느 색상의 LED든 켜져야 하므로) led 안켜지는 것과는 무관하고요const int G=9,Y=10,R=11;//void setup(){pinMode(G,OUTPUT); pinMode(Y,OUTPUT); pinMode(R,OUTPUT);}//void loop(){digitalWrite(G,1); delay(1000); digitalWrite(G,0);digitalWrite(Y,1); delay(1000); digitalWrite(Y,0);digitalWrite(R,1); delay(1000); digitalWrite(R,0);}LED 테스트 코드는 간단하게 작성해서 돌려보면 됩니다.14번 열만 보면 연결에 문제가 있습니다. (다른 LED도 마찬가지로 문제가 있습니다.)
댓글 0
조회수 307등록된 댓글이 없습니다.