안녕하세요 Apple입니다.
오늘의 목표는 저번에 예고했던것처럼
아두이노를 컴퓨터에 연결시키는 방법을 알아보고
자주 사용하게될 함수들을 통하여
기본Led를 깜빡이는 것을 해볼것 입니다.
일단 저번 포스트보고 따라하셨다면
바탕화면에
요렇게 생긴 아이콘에 이름이Arduino라는 프로그램이
바로 아두이노 스캐치 라는 프로그램 입니다.
저희는 이 아두이노 스캐치라는 프로그램을 통해
아두이노를 제어할 것 입니다.
일단 아두이노 Sketch를 하기전에
아두이노를 컴퓨터에 꽂아 사용하실려면
약간의 작업이 필요한데요.
일단 아두이노를 컴퓨터에 꽂으시면
가끔씩 드라이버가 설치가 안되신 경우가있어요
그래서 일단 드라이버를 설치해야 사용할수 있겠죠?
그래서
제어판에 들어가셔서
오른쪽상단에 장치관리자
라고 검색하시면 장치관리자 항목나옵니다
클릭하셔서 장치관리자에 들어가셔서
위의 사진 처럼 기타 장치라는 부분에 느낌표가 있다면
아두이노 드라이버가 설치가 안된것이니 드라이버를 설치 해주셔야하는데요.
(안뜨면 드라이버가 설치 되어있다는거)
마우스 오른쪽으로 느낌표를 클릭 하신뒤
드라이버 소프트웨어 업데이트라는 항목을 클릭하시면
위의 화면이 나오는데요
여기서 일단 첫번째 항목으로 먼저 시도하신뒤에
만약 드라이버가 설치됬을경우는 괜찮지만
그래도 설치가 안됐을경우
두번째 항목을 선택하여
위와 같이 경로를 입력 하셔서 설치하시면 됩니다
(32비트 사용자는 Program Files로 바꿔서 하셔야할 겁니다.)
드라이버도 설치했으니깐 이제
아두이노 Sketch 를 더블 클릭 하셔서
Sketch를 실행 시키면
위돠 같은 화면이 나올건데요
아두이노 Sketch에서도 여러분의 아두이노를인식 시켜줘야 하는데요
아래의 화면처럼 아두이노 보드 종류를 선택 해주셔야 합니다.
저같은 경우 Arduino Leonardo를 사용했기 때문에
Arduino Leonardo를 선택했고요 그다음은
아두이노가 꽂혀있는 포트를 선택합니다.
저는 COM4에 아두이노를 꽂았습니다.
여기까지 하셨다면 아두이노를 사용할 기본적인 준비는 다했습니다.
그럼 준비 다했으니깐
코딩을 해야겠죠?
처음에 해볼것은 목표에도 써있듯이
기본 Led를 깜빡거릴것 입니다.
그래서 일단
파일→예제→01.Basics→Blink를 선택합니다
클릭하시면 아래와 같은것이 뜰것 입니다.
일단 아무것도 건들지 말고
위쪽에있는 화살표 모양을 클릭하면
컴파일이 되면서 아두이노에 업로드가 될것 입니다
업로드하시고 아두이노쪽의 Led를 보시면
위의 영상처럼 Led가 1초 간격으로 깜빡거리는것을 보실수 있습니다.
이제 다시 코드를 보셔서 하나하나 각각함수들을 설명하면
일단 첫번째 줄을 보시면
void setup() {
}
이라는 것이 보이실 건데요.
이 setup 이라는것은
아두이노에 전원이 들어왔을때
한번만 실행되는 곳 입니다.
그리고 두번째 줄을 보시면
pinMode(13, OUTPUT);
이라는 함수가 있는데요
이것은 "아두이노 13번핀을 출력핀으로 사용하겠다"
라는 뜻과 동일 합니다
pinMode라는 함수는 해당 핀을 출력으로 사용할 것인지 입력으로 사용할것인지를 알려주는 함수 입니다.
그래서 첫번째 값은 핀 번호
두번째 값은 입.출력 설정 입니다.
예제에서는 Led를 사용할것이기 때문에
OUTPUT(출력) 이라고 설정 해뒀습니다
참고로 13핀은 아두이노의 Led와 연결 되있습니다
그렇기때문에 pinMode의 첫번째 값에다 13번핀을 입력 한것 입니다.
그리고 다음줄인 void loop() {}
이것은 아두이노에 전압을 인가하는순간 전원이 꺼질때까지 무한으로 반복되는 곳입니다.
loop내부의 함수들을 살펴보면
digitalWrite함수와 delay라는 함수가 보이실 건데요
일단 digitalWrite라는 함수는
해당핀을 디지털 신호로 HIGH를 할건지 LOW를 할것 인지를 정하는 함수 입니다.
여기서 HIGH는 해당핀에 5V를 인가하고
LOW는 해당핀을 0V로 만듭니다.
digitalWrite의 첫번째 값은 핀 번호
두번째 값은 HIGH, LOW 설정 입니다.
우리는 13번핀에 5v전압을 인가할것이기 때문에
digitalWrite(13, HIGH); 라고 했습니다.
그럼 다음 다음 줄인 digitalWrite(13, LOW);는
digitalWrite(13, HIGH);와는 반대로 13핀을 0v로 만들겠죠?
그리고 중간에 있는 delay라는 함수는
뜻 그대로 "지연하다" 라는 기능을 가지고 있어서 첫번째 값에있는 시간에따라 프로그램을 지연 시킵니다.
여기서 delay의 시간 단위는 millieSecond 입니다
그래서 delay(1000); 이면 1초동안 프로그램을 지연 시키겠다 라는 뜻이 됩니다.
다시한번 정리하자면
void setup() {
} ///아두이노에 전원이 들어 왔을때 한번만 실행 된다.
void loop() {
} ///아두이노의 전원이 나갈때 까지 계속 반복된다.
pinMode(핀 번호, 입.출력 여부); //해당 핀의 입.출력을 설정한다.
digitalWrite(핀 번호,HIGH 또는 LOW); //해당 핀의 HIGH 또는 LOW를 정한다
delay(시간); //지정 시간동안 프로그램을 지연 시킨다
(단위:millisseconds)
여기까지 해서 아두이노를 컴퓨터에 인식 시키고
기본 Led를 깜빡 거려봤습니다.
다음 포스트에서는 기본Led 대신
다른 Led를 다른 핀에 연결시켜
Led를 깜빡거리고 버튼을 이용하여 Led를 제어 해보겠습니다.
지금까지 Apple였습니다.
감사합니다.
'아두이노' 카테고리의 다른 글
아두이노 논리회로 다루기 (74HC595) (0) | 2016.02.28 |
---|---|
아두이노 레이저(with 눈차크) (0) | 2016.02.14 |
아두이노 피아노 (2) | 2016.01.07 |
3. 아두이노 버튼을 이용하여 Led를 제어해보자! (2) | 2015.12.08 |
1.아두이노에 대해 알아보자! (0) | 2015.12.06 |