아두이노:LED
아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노
- 아두이노:개요
- 아두이노:하드웨어
- 아두이노:코드
- 아두이노:핀 사용
- 아두이노:시리얼 통신
- 아두이노:편의함수
- 센서 사용
- 아두이노:LCD 사용
- 아두이노:스위치 사용
- 아두이노:릴레이
- 아두이노:WIFI
- 아두이노:해결되지 않은 다양한 의문들
- 수업용 간단 실습
- 분류:아두이노 프로젝트
개요[편집 | 원본 편집]
하드웨어[편집 | 원본 편집]
종류 | 설명 |
---|---|
단색 LED | 단순 LED는 긴 다리가 +, 짧은 다리가 -이다. 1.8~2V의 전압을 받아들이며 20mA의 전류를 소모한다. 이 이상의 전압이 가해지면 파손 위험 있음. 일반적으로 5V에 150옴의 저항을 달아 전압을 낮춰 사용한다.
적절한저항 = (입력전압 - 구동전압) / 구동전류 붉은색은 전압을 조금 더 약하게 주어야 한다. -> 저항을 가하든가, 입력전압을 약하게 만들면 된다. |
RGB LED | 기본적으로 RGB LED를 병렬연결시켜둔 형태.
Cathod 방식 : 가장 긴 게 -극으로, +극에 신호를 주어 색을 작동시킨다. Anode 방식 : 가장 긴 게 +극으로, -극으로 신호를 주어 색을 작동시킨다. |
기본설정[편집 | 원본 편집]
색 | 핀번호 | ||
---|---|---|---|
Red | 9 | ||
Green | 10 | ||
Blue | 11 |
int red = 9;
int green = 10;
int blue = 11;
int i = 0;
void setup() {
pinMode(red,OUTPUT);
pinMode(green,OUTPUT);
pinMode(blue,OUTPUT);
}
void loop() {
// 빨간색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(red, i);
analogWrite(10, i);
analogWrite(11, i);
delay(10);
}
// 빨간색 밝기를 130에서부터 0까지
for(i = 130;i >= 0; i--){
analogWrite(red, i);
delay(10);
}
// 초록색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(green, i);
delay(10);
}
// 초록색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(green, i);
delay(10);
}
// 파란색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(blue, i);
delay(10);
}
// 파란색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(blue, i);
delay(10);
}
// 노란색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 노란색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 자홍색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 자홍색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 청록색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 청록색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 흰색 밝기를 0에서부터 130까지
for(i = 0 ;i<=130; i++){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
// 흰색 밝기를 130에서부터 0까지
for(i = 130 ;i> 0; i--){
analogWrite(blue, i); analogWrite(green, i); analogWrite(red, i);
delay(10);
}
}