아두이노/이론

1강. 아두이노 pinMode,digitalWrite알아보기입니다.(LED키기)

원원 2018. 10. 20. 11:59

안녕하세요. 오늘은 아두이노 기본인 출력 내보내기통해 LED를 켜보겠습니다. 

일단 LED를 키는방법은 두가지가 있는데요. 단순히 LED를 키고끄기가 있고 LED의 밝기를 조절하는게 있습니다.

LED를 단순히 키고끄기는 digital함수를 이용합니다. (digital은 1 or 0)

LED의 밝기를 조절하는건 analog함수를 이용합니다. (PWM, 0부터 255)

LED뿐만아니라 DC모터를 연결한다면 digital함수는 모터를 on/off하는 기능을 하겠고 analog함수는 모터의 속도를 정해주는 기능을 합니다.


오늘은 digital함수를 이용해보겠습니다.



- 1. 최종목표

0

LED가 깜빡거리는게 보입니다







- 2. 실제모습(사진)

아두이노 Uno에는 빨강네모에 LED가 박혀있습니다. (pin13번이랑 연결되어있음)





- 3. 프로그램 흐름

*LED를 키기위한 과정

1. 현재 특정핀의 상태를 출력 or 입력으로 정의해준다. (pinMode함수)

2. 특정핀에 출력을 내보낸다. (digitalWrite 함수)


이렇게 두가지 과정을 통해 LED를 킬 수 있습니다.




- 4. 사용하는 함수설명

* pinMode(pin, mode) - 핀의 상태를 출력 or 입력으로 정의해주는 함수입니다.

- pin 특정핀

- mode 해당모드

pin변수에는 1,2,3,4,5...같은 핀 번호를 적어주면됩니다

mode에는 출력모드를 의미하는 OUTPUT을 사용하면 됩니다.




*digitalWrite(pin,value) - 핀에 0 or 1을 내보냅니다.

- pin 특정핀

- value 핀의상태


*delay(ms) - 1.최종목표에서 LED를 깜빡이기위한 지연함수입니다.
ms -  ms는 단위이고 1000이 1초입니다.



- 5. 코드
1
2
3
4
5
6
7
8
9
10
void setup() {                                                                                                                   
  pinMode(13,OUTPUT);
}
 
void loop() {
  digitalWrite(13, HIGH);      
  delay(1000);                
  digitalWrite(13, LOW);      
  delay(1000);                  
}



- 6. 코드설명
1. setup()함수란 프로그램이 실행되면 우선적으로 실행되는 함수입니다. setup부분에서 핀의상태를 설정해줍니다
2. 13번핀을 출력모드로 제어하기위해 pinMode함수로 정의해줬습니다.
5. 프로그램이 죽지않고 무한반복을 의미하는 loop함수입니다.
6. 13번핀을 HIGH상태로 만들어줬습니다.
7. 딜레이1초
8. 13번핀을 LOW상태로 만들어줬습니다.
9. 딜레이1초

※ 핀 모드 설정 -> LED 킴 -> 딜레이1초 -> LED끔 -> 딜레이1초