728x90
반응형
EX_01>
# define LED_PIN 5 // 핀번호 설정
void setup(){
pinMode(LED_PIN, OUTPUT); // 해당 핀을 출력으로 설정
}
void loop(){
for (int i = 0; i <= 255; i++){
analogWrite(LED_PIN, i); // LED의 밝기를 1씩 증가시켜서 최대값인 255까지 증가시키겠다.
delay(10);
}
for (int i = 255; i >= 0; i--){
analogWrite(LED_PIN, i); // LED의 밝기는 1씩 감소시켜 최소값이 0까지 감소시키겠다
delay(10);
}
}
/*
LED의 핀번호를 설정하고, 해당 핀을 출력으로 설정,
반복문을 통해 해당 핀의 LED 밝기를 0 > 255 로 1씩 증가시켜 점점 밝아지고,
255 > 0 으로 1씩 감소시켜 점점 어두워지는것을 확인 할 수 있음.
*/
EX_02>
#define LED_PIN 5 // LED 핀번호 설정
#define PLUS_BUTTON_PIN 34 // PLUS 핀번호 설정
#define MINUS_BUTTON_PIN 35 // MINUS 핀번호 설정
int count = 0; // 증가 값
void setup(){
pinMode(PLUS_BUTTON_PIN, INPUT_PULLUP); // LED의 해당 핀을 출력으로 설정
pinMode(MINUS_BUTTON_PIN, INPUT_PULLUP); // BUTTON의 해당 핀을 입력으로 설정
}
void loop(){
// 플러스 버튼이 눌렸냐?
if (digitalRead(PLUS_BUTTON_PIN) == LOW) {
// count를 1 증가대입
count = (count < 100) ? count + 1 : count;
delay(200);
}
// 마이너스 버튼이 눌렸냐?
if (digitalRead(MINUS_BUTTON_PIN) == LOW) {
// count를 1 감소대입
count = (count > 0) ? count - 1 : count;
delay(200);
}
// count의 0~50값을 0~255로 환산해서 LED의 밝기를 컨트롤
analogWrite(LED_PIN, map(count, 0, 50, 0, 255);
}
/*
버튼을 누를 때 마다 count 변수의 값이 상승, 하락하고
변수의 값은 최소 0 최대 50일때 map 함수를 통해 0~255로 환산해서 밝기를 조절 하는 코드
*/
ESP32 보드를 사용
728x90
반응형