아두이노 우노 R3 / 박스 오픈 및 바로 프로그램 작성해서 LED점멸 하기 

[Arduino Uno R3] [box open and download program for LED blinking]





오늘 택배로 아두이노 우노 보드가 도착했습니다. 

일단 내용은 딱 보드 하나네요. 아답터... 없습니다. ㅜㅜ

[ Today I get , my first arduino Uno R3 board, When I open... only R3 board in it.

There is no power adapter]



전원 공급은 5~7V DC 아답터가 필요하지만, 

[ If you want to use DC power adapter, please prepare 5 or 7 v power ]


USB B타입 케이블로 PC와 연결하면, PC에서 전원을 받을 수 있고, 

프로그램 이미지도 다운로드가 됩니다.

[ but, USB B type cable can support power for Uno board, and also FW image file download.]




1) 일단 봉투를 뜯고 집에 가지고 있는 USB B타입 케이블과

PC의 USB포트에 연결합니다.

[ open plastic bag, and connect USB cable with Uno board, and also PC USB port]



2) 장치 드라이버는 window 7의 경우 자동으로 잡아주네요.

[ In case of Window 7 OS, device driver was installed automatically]


3) 잠시후 COM6번 포트로 장치가 잡힙니다.

[ after install Driver file, PC add device with COM6 port]




4) 바로 아두이노 개발용 PC SW을 실행하고,

예제 코드를 열어서 다운로드 하니... 바로 LED가 점멸되는 동작을 하네요.

[ and run PC SW "Arduino Development tool(ver1.0.6)"



예제 코드 : 메뉴 : 파일 > 예제 > 01. Basics > Blinking

[ Menu : Example > 01.Basics > Blinking ]



5) 코드 내용도 바로 바꿔보니,LED점멸이 더 빨라집니다.

[ when you change delay parameter to smaller, LED blinking is faster]



6) 보드 전원을 빼고, 다시 켜도, 마지막으로 다운로드한 프로그램은 그대로 남아 있습니다.

[ When you download FW image, board has last image, so power off -> power on ( run last FW image)]






::: 첫작성 2014-12-12






Posted by 고무함지
,


아두이노를 공부하기 시작했습니다...


일단... 구조부터 공부해 보려 합니다.



첫시간에는 좀 어렵지만. 부트로더...




아두이노 보드는 고객에게 전달 될 때 깡통 상태... 즉 내부 Flash memory에 아무것도 

없는 것이 아니라. 부트로더가 공장에서 올라가서 출하되는 것 같다.


부트로더는 보통 HW적으로는 마이컴의 동작 옵션을 입출력 핀의 H/L의 조합으로

특정 기능을 동작시키는 것을 칭하기도 하고...


마이컴의 메모리 공간 일부에 어떤 기능을 하기 위해 올라간 프로그램을 이야기 하기도 한다.

아두이노의 경우 아두이노 스케치 프로그램이 생성한 펌웨어 파일을 부트로더가 먼저 수신 받아 

남은 플래시 메모리에 저장해두고... 칩이 부팅하면 먼저 부트로더가 동작하고... 사용자가

생성했던 펌웨어 코드를 동작시키고...  만약 새로운 펌웨어를 다시 올리고 싶다면,

기존 펌웨어를 지우고 새것을 다시 올려주는... 일종의 관리자 역할을 한다고 할 수 있다.


위의 경우는 펌웨어로 구현된 부트로더이지만, 역시나 특정 조건으로 칩 초기동작시

동작을 안하게 할 수 도 있다고 추측된다.... (추측이다....)




아두이노 프로그래밍 작업을 위해 사용하는 컴퓨터의 OS가 윈도우 7 이라면...

아두이노 개인 설정은 보통 아래 위치에 저장된다. 


C:\Users\사용자이름\AppData\Roaming\Arduino


만약에 Mac이나, Linux라면...아래와 같이 찾아가면 된다.

    * /Users/<USERNAME>/Library/Arduino/preferences.txt (Mac)
    * c:\Documents and Settings\<USERNAME>\Application Data\Arduino\preferences.txt (Windows)
    * ~/.arduino/preferences.txt (Linux) 






이 파일의 역할은 아두이노 프로그램을 할 수 있는 아두이노 스케치 프로그램의 설정값을 저장하는 것이다.


(참고로... 혹시 스케치를 지우더라도... 이 파일이 그대로 남을 수 있다. 만약 스케치 프로그램의 문제가 생겼다면,

스케치 프로그램을 지우고...이 설정 값도 사용자가 직접 지워놓고서.... 다시 스케치 프로그램을 설치해야...

문제가 해결 될 수 있다. 보통 문제는 잘못 설정된 값들이 일으키는 데, 일반인이 이것을 고치기는 어렵기 마련...)




이야기가 길어졌는데...

일반 개발자가 이 글을 읽고 있다면, 분명 아두이노 보드의 플레쉬 메모리 영역이 파괴되어...

아두이노 스캐치프로그램으로 통신, 프로그램 다운로드가 안되는 상황일 것이다.


이 경우... ISP를 할 수 있는 추가적인 장치들이 필요하며 예를 들면 AVRISP, USBTinyISP등등...

아두이노 사이트에서 가이드 하는 부트로더 다시 올리는 방법을 참고하여, 파괴된 부트로더를 복구 해야한다.



또는... 부트로더 영역이 낭비라고 생각하거나, 부팅 시간도 아까워서. 부트로더 없이 아트멜 마이컴을 프로그래밍하고 싶다면

이 ... 부트로더를 알아야 한다. 주로 양산 제품 개발자가 봐야할 부분이라고 생각하고...

일반 취미개발자나 학생의 경우... 여기 까지 알 필요는 그리 많지 않아 보인다.




참고 사이트 : http://arduino.cc/en/Hacking/Programmer 

Posted by 고무함지
,