1장. LED 켜기(브레드보드를 이용하기)
Language | English |
---|
목표마이크로두이노를 이용하여 LED를 제어하는 방법을 배우게 될 것입니다.. 마이크로아두이노의 I/O 포트를 어떻게 제어하는지 배울 것이고 I/O 포트를 제어하는 것은 매우 기초적인 기술이며 앞으로도 많이 사용하게 될 것입니다. 재료마이크로아두이노 코어모듈은 아트멜사의 ATmega328P, ATmega168PA 시리즈를 기반으로 만들어진 8비트 마이크로프로세서 개발보드입니다. 자세한 사항은 마이크로두이노 코어모듈을 참조하세요 마이크로두이노 코어 또는 코어 플러스 모듈과 PC를 연결하여 프로그램을 다운로드할때 사용하는 모듈입니다. 마이크로 USB 사양을 채택하고 있습니다. 1달러 동전과 비슷한 사이즈를 가지고 있습니다. 스마트폰의 USB 케이블과 같으므로 편리하고 실용적입니다. 자세한 사항은 Microduino-USBTTL(FT232RL)를 참조하세요.
브레드보드 알아보기수직방향으로 5개의 점은 서로 연결되어 있고 수평방향의 25개의 점끼리 연결되어 있습니다. 수평의 50개의 점이 모두 연결되어 있는 것도 있습니다. 한줄은 GND, 한줄은 VCC로 사용한다. 자세한 것은 아래 그림을 참조합시다. 저항과 LEDLED가 타는 것을 방지하기 위해 전류제한 저항을 사용합니다. 보통 붉은색과 녹색 LED는 1.8 ~ 2.4V에서 동작하고, 파란색과 흰색 LED는 2.8 ~ 4.2V에서 동작합니다. 3mm LED는 약 1 ~ 10mA의 전류를 소모하며, 5mm LED는 5 ~ 25mA, 10mm LED는 25 ~ 100mA의 전류값에서 동작합니다. R = U / I 의 식으로 저항값을 구할 수 있습니다. 계산값에 의하면 수백 오옴의 저항을 연결하면 됩니다. 회로도두가지 연결방법이 있습니다. 하나는 LED의 캐소드를 GND에 연결하고, LED의 애노드는 마이크로두이노의 디지털 I/O 13번핀에 연결하는 방법과 다른 하나는 캐소드는 마이크로두이노 디지털 I/O 13번핀에 연결하고 다른 하나는 VCC 핀에 연결하는 방법이 있습니다. 프로그램
int led = 13; // Define the PIN
void setup() {
pinMode(led, OUTPUT); // Define the I/O port 13 as output
}
void loop() {
digitalWrite(led, HIGH); // I/O port 13 output High. If the connection is high lighted,the LED will light, otherwise extinguished
delay(1000); // delay 1s
digitalWrite(led, LOW); // I/O port 13 output Low.If the connection is high lighted,the LED off, otherwise light.
delay(1000); // delay 1s
}
int ledPin=13;
#define TIME 1000
long time1=0,time2=0;
void setup()
{
pinMode(ledPin,OUTPUT);
}
void loop()
{
if(millis()<time2+TIME)
{
digitalWrite(ledPin,HIGH);
time1=millis();
}
else
{
digitalWrite(ledPin,LOW);
if(millis()>time1+TIME)
time2=millis();
}
}
프로그램 다운로드 방법
결과다운로드한 후, 1초 간격으로 LED가 깜빡거리는 것을 볼 수 있다. 비디오 |