소스코드
아래는 소스코드입니다. 아두이노 IDE에 붙여넣기 하여 컴파일하고 업로드합니다.
// PWM제어 LED점등 실험
int brightness = 0; //LED밝기를 표현하기 위한 정수형 변수 brightness를 선언하고 초기값 0을 저장합니다.
int fadeAmount = 5; //밝기가 변하는 속도를 정하기 위한 정수형 변수 fadeAmount를 선언하고 초기값 5를 저장합니다.
void setup() {
pinMode(5, OUTPUT); // 포트 5번을 출력포트로 지정합니다.
}
void loop() {
analogWrite(5, brightness); //5번 포트에 brightness의 값을 출력합니다.
brightness = brightness + fadeAmount; //다음 회차에 출력할 밝기 값을 brightness 변수에 저장합니다.
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ; //최고 밝기 또는 최저 밝기에 도달하면 값을 반대로 바꿔줍니다.
}
delay(30); //30mS(밀리세컨드) 정지합니다.
}