회로도 및 준비물: Arduino 보드, 브레드보드, 고정저항 330Ω, LED
아날로그 출력함수를 이용하여 digital Pin(9)에 연결된 LED가 천천히 밝아지다 반대로 천천히 흐려지는 동작이 반복되는 장치이다.
원리는 펄스의 폭을 가변 한 것이다.
스케치
//digitalPin 9번 사용
int led = 9;
//최소 밝기 값 brightness = 0;
int brightness = 0;
//펄스 폭 증가치 fadeAmount = 5;
int fadeAmount = 5;
void setup() {
////pinMod를 출력으로 설정
pinMode(led, OUTPUT);
}
void loop() {
//아날로그 값 brightness룰 출력
analogWrite(led, brightness);
//brightness = brightness + fadeAmount; 밝기 값을 누적
brightness = brightness + fadeAmount;
if (brightness == 0 || brightness == 255) {
// brightness의 값이 255이면 -5씩 감소
fadeAmount = -fadeAmount ;
}
delay(30);
}
'코딩 놀이' 카테고리의 다른 글
타이머 카운터와 펄스 (0) | 2021.03.05 |
---|---|
타이머/카운터와 직각 삼각형 (0) | 2021.03.05 |
NoseMCU01 (0) | 2021.02.23 |
클럭펄스 폭제어(PWM) (0) | 2021.02.22 |
A015. 집합과 tan(x) (0) | 2021.02.19 |