티스토리 뷰

http://openmaker.tistory.com/30

이전 포스팅에서 아두이노 설치를 진행해 보았습니다.


뭔지 모르겠지만 일단 설치를 해보았으니 다양한 기능들과 버튼들에 대해 알아보아야 겠죠?

지난 포스팅에는 가장 중요한 보드 추가와 라이브러리 추가에 대해서 알아보았습니다.

이게 제대로 안되면 애초에 업로드나 컴파일에서 에러가 나오니까요!



Sketch


우선, 이전 포스팅에서도 잠깐 언급했던 것처럼

아두이노 IDE를 사용해서 작성된 프로그램을 sketch 라고 부릅니다. 

흔히 .ino 파일을 이렇게 부르는데요.

이 파일을 만들기 위해서는 아두이노 IDE의 하얀 텍스트 에디터에 코드를 작성하고 .ino로 저장하면 됩니다.

기본이 텍스트 에디터이기 때문에, 복사/붙여넣기/잘라내기/검색/대체하기 다 가능합니다.



그리고 그 아래의 검은색 부분에서는 다양한 메시지를 통해 Error나 컴파일/업로드 진행사항을 알려줍니다.

만약 업로드 중에 문제가 생기거나 컴파일 중에 문제가 생긴다면 이 부분을 통해 문제를 확인하여 해결할 수 있겠죠!






버튼(Button)


어떤 소프트웨어든지, 자주 사용하는 기능은 아이콘형태의 버튼으로 제공됩니다.

물론 사용자 측면에서 별로 사용 안할 수도 있지만, 일단 개발자들이 나름대로 생각해서 뽑아놓은 것이니 우선 여기부터 살펴보죠.



Verify (확인)
작성된 스케치를 컴파일해보고 에러가 있는지 정상인지 확인을 합니다. 중요하겠죠?
컴파일에 대해서 잘 모르신다면, 쉽게 "내가 작성한 내용을 기계가 알아들을 수 있게 바꿔주는 것" 이라고 생각해주세요.



Upload (업로드) 
업로드, 말그대로 올린다는 거겠죠? 무엇을? 어디에? 
여러분이 작성한 스케치를 현재 연결되어 있는(여러분이 설정한) 보드에 올리는 거에요.
정확히는 이 버튼은 위의 Verify(확인). 즉 컴파일 + 업로드의 역할을 해요.
결국 여러분이 작성한 스케치를 기계(보드)가 이해할 수 있게 번역해서 기계(보드)에게 올려주는 것이지요.



New (새로 만들기)
네.. 말그대로 새로운 스케치를 만드는 버튼입니다. 대부분의 편집기에는 이런게 있죠!



Open (열기, 불러오기)
스케치를 여는데 사용되겠죠? 문서를 불러오는 것처럼요.
참고로 스케치가 모이면 뭘까요? 스케치북!
네, 예술가들은 그러한 느낌으로 이름을 지었다고 합니다. 우리가 만드는 스케치들이 모인 장소 즉, 폴더를 스케치북이라고 부릅니다.



Save (저장하기)
여러분이 작성한 스케치를 저장해야겠죠. 저장 버튼입니다.



Serial Monitor  (시리얼 모니터)
시리얼 모니터라는 것을 열 때 사용해요. 말그대로 모니터니까 무언가를 보여주겠죠?
여기서 시리얼이라는 것은, 시리얼 통신이라는 통신 방법인데요. 보통 아두이노 보드는 PC와 USB로 연결합니다.
이 때, 이 연결을 통해 통신을 하게 되는데 이 방식이 시리얼 통신 방식입니다.
즉, 이 선을 통해 PC로 들어오는 내용을 보여주는게! 바로 이 Serial Monitor 입니다.
매우 자주 사용되니 꼭 기억해주세요 :) 




메뉴(Menu)


File (파일)

  •   New 
    앞서 버튼에서 살펴보았던 New와 동일한 기능을 합니다. 새로운 스케치를 만들죠.
  •   Open 
    역시나 버튼에서 살펴보았던대로 Open과 동일한 기능입니다. 기존 스케치를 열 수 있죠.
  •   Open Recent 
    대부분의 편집기에서 제공되는 내용이랑 유사해요. 최근에 열었던 스케치의 목록을 볼 수 있고, 열 수 있습니다.
  •   Sketchbook 
    스케치북(폴더)에서 최근에 열었던 스케치가 있다면, 그 폴더(스케치북)의 목록을 보여줍니다.
  •   Examples 
    네, 예제에요! 뭐든 예제를 통해 소프트웨어 사용법을 알려주죠. 잘 모르겠을 때, 참조하면 매우 좋겠죠?
    기본적으로 제공하는 것부터, 자신이 추가한 라이브러리에 따라 예제가 추가됩니다. 매우 좋죠?
    라이브러리를 일단 구했는데 어떻게 쓸줄 모르겠다. 그러면 당연히 제공되는 예제부터 확인해봐야겠죠 :)
    예제들만 잘 조합해도 원하는 내용을 만들 수 있는 경우가 매우 많답니다.
  •   Close 
    네.. 스케치를 닫아버립니다.. X버튼 대신 누를수 있겠네요.. 심지어 단축키도 있답니다 :)...
  •   Save 
    우리가 알고 있는 그 저장하기 입니다. 이미 저장되어 있다면 덮어써지겠죠?
  •   Save as... 
    다른 이름으로 저장.. 우리는 이 이름으로 익숙해져 있습니다. 스케치를 다른 이름으로 저장하고 싶을 때 사용합니다.
  •   Page Setup 
    이거 기본은 텍스트 에디터라고 그랬잖아요? 워드나 한글같은. 때로는 인쇄가 필요할 수 있습니다. 그걸 위한 페이지 설정입니다.
  •   Print 
    네... 위에서 페이지 설정을 하고, 인쇄.. 하면 되겠죠? :)))
  •   Preferences 
    아두이노 IDE에 대한 여러가지 설정을 할 수 있어요. 텍스트 크기부터 알림메시지 창 언어, 표시 메시지 등등
    그리고 나중에 글씨체도 변경할 수 있으니 기억해 두세요. (글씨체는 좀 더 안으로 들어가야 해요!)

  •   Quit 
    모든 스케치를 종료합니다.
    아 참고로, 아두이노 IDE는 모두 종료된 상태에서, 실행할 때 이전에 작업하던 스케치가 열립니다.
    그냥 닫으면 되지 뭐하러 한번에 종료하나? 생각하실 수도 있는데, 그 이유가 바로 이것입니다.
    한번에 종료된 것들을 모두 열어줍니다.


위에서 불필요하게 구절구절 설명한것 같습니다.
아래부터는 여러분이 흔히 보실 수 있는 내용들에 대해서는 간단한 코멘트만 하고 넘어가겠습니다.

Edit (수정)

  •   Undo/Redo 
    되돌리기(전, 후)  
  •   Cut 
    자르기
  •   Copy 
    복사하기
  •   Copy for Forum 
    아두이노에는 공식 Forum이 있는데요. 그곳에 무언가를 물어보고 싶거나 답변을 해주려는데 코드를 보여줘야하는 경우,
    forum 게시판에 자신의 소스를 올리기위한 형태로 복사가 됩니다.
  •   Copy as HTML 
    포럼이 아니더라도, 웹 게시판이나 페이지에 HTML이라는 언어를 사용하여 자신의 스케치의 일부를 올리고 싶을 때, 그러한 형태로 복사됩니다.
  •   Paste 
    붙여넣기
  •   Select All 
    에디터 내용 전체를 선택(블럭지정)
  •   Comment/Uncomment 
    일반적으로 프로그래밍 언어에서는 "주석(쉽게말해 설명)"을 달기 위해 // 를 사용합니다.
    이것을 해당 라인에 추가하거나 없앨 때 사용합니다. 그냥.. 키보드로 두번 누르는게 더 빠를거 같네요
  •   Increase/Decrease Indent 
    키보드의 Tab 기능입니다. 보통 텍스트 에디터에서 Tab을 사용하면 지정된 사이즈만큼 들여쓰기가 됩니다.
    즉, increase는 들여쓰기. Decrease는 내어쓰기가 되겠죠.
  •   Find 
    네.. 뭔가를 찾고 싶을 땐 찾아야죠?
  •   Find Next 
    다음으로 찾습니다 (아래로)
  •   Find Previous 
    이전으로 찾습니다 (위로)

Sketch

  •   Verify/Compile 
    버튼에서 살펴보았죠. 컴파일하여 스케치의 에러 여부를 확인합니다.
  •   Upload 
    버튼에서 본것처럼.. 컴파일하고 업로드 합니다.
  •   Upload Using Programmer 
    업로드를 하지만, 부트로더까지 덮어씁니다. 부트로더는 Tools에서 사용자가 선택합니다.
    이부분은 잘 모르면 절대 건들지 마세요 :)
  •   Export Compiled Binary 
    컴파일을 하고 Hex 파일로 만들어 줍니다.
  •   Show Sketch Folder 
    현재 열려있는 스케치의 폴더(스케치북)을 엽니다.
  •   Include Library 
    이전 포스팅에서 다루었죠. 라이브러리 추가할 때 사용합니다.
  •   Add File... 
    현재 스케치에 파일을 추가합니다. ino가 될수도 .h .cpp 다 되겠죠. 추가한 순간 해당 폴더에도 복사됩니다.
    다만 충돌나지 않게 잘 작업을 해야합니다. 자신없으면 건들지 마세요 :)

Tools

  •   Auto Format 
    코드를 특정 포맷으로 정렬해줍니다. 코드가 들쑥 날쑥하거나 복사/붙여넣기 했는데 엉터리로 되어 있을 경우 사용하세요 :)
  •   Archive Sketch 
    스케치 파일을 압축파일(.zip)로 저장합니다.
  •   Fix Encoding & Reload 
    에디터의 인코딩과 OS의 인코딩 사이의 차이점을 확인하여 고칠 수 있는 부분은 고쳐서 인코딩 문제를 줄입니다.
  •   Serial Monitor 
    버튼에서 살펴보셨던 것처럼, 시리얼 모니터 창을 엽니다.
  •   Board 
    이전 포스팅에서 보드 추가를 해보았죠?
  •   Port 
    아두이노는 PC와 시리얼통신으로 연결된다고 했습니다. PC에는 다양한 COM PORT가 존재할 수 있는데, 여기서 자신의 아두이노 보드와 연결된 COM PORT를 선택하여야만 정상적인 업로드를 진행할 수 있습니다. 
  •   Programmer 
    아두이노에서는 USB케이블 연결로 쉽게 스케치를 업로드 하지만, 원래는 칩에 프로그래밍을 하기 위한 다양한 방법들이 존재합니다. 어떠한 경우에는 다른 방법으로 업로드를 해야할 경우가 있고, 커스텀 아두이노 보드같은 경우는 USB 케이블이 존재하지 않을 수도 있습니다. 그럴 때는 이걸 선택해주는 것이지요. 잘 모르겠다면 절대 손대지 마세요!
  •   Burn Bootloader 
    흔히 말해서.. "부트로더를 굽는다" 라는 표현이 있습니다.
    각 디바이스에 따라 부트로더가 상이할 수 있습니다. 아두이노에서는 특정 부트로더를 기준으로 업로드를 하기 때문에, 이러한 부트로더가 없는 디바이스에는 아두이노의 부트로더를 구워주어야 합니다. 그래야지만 아두이노 IDE를 통해 업로드가 가능하죠. 일반적으로 이러한 기능은 아두이노 공식보드가 아닌 MCU보드에 아두이노 IDE를 사용하고 싶거나, 아두이노 보드의 MCU에 직접 부트로더를 구울 때 사용합니다.(부트로더가 잘못되었다던지.. 등)
    역시나 잘 모르겠다면 절대 손대지 마세요!

Help

더이상 무슨 말이 필요할까요.. 도움말입니다. 
이는 대부분 html 파일로 되어 있기 때문에 인터넷이 되지 않더라도 참조할 수 있습니다.
물론, 아두이노 홈페이지 방문.. 이런건 당연히 인터넷이 되야하겠죠?

여기서 많이 참조하실 만한 것은 ReferenceFind in Reference 입니다.
말그대로 참조죠?
아두이노도 결국은 하나의 소프트웨어이기때문에 사용법을 익혀야 합니다.
아무리 코딩실력이 뛰어나도 사용법을 모르면, 멍청한 코딩을 하게 되거나 자원낭비를 하겠죠.
어떠한 플랫폼이라도 그 기본 아키텍쳐를 이해하지 않고서는 제대로 개발할 수 없습니다.

이 Reference에 가면, 아두이노에서 기본적으로 사용되는 함수, 변수, 타입, 구문, 라이브러리 등에 대한 설명이 나와 있습니다.
사실 이것만 잘 봐도 충분히 활용하실 수 있습니다.
그리고 Find in Reference는 소스에서 찾고 싶은 내용을 블럭처리 하여 Find in Reference를 누르면, 위에서 말한 Reference에 그 내용이 있는지 확인하고, 있다면 그 내용으로 안내해줍니다.
이 말은 즉, 아두이노 IDE에서 기본적으로 제공하는 함수와 라이브러리에 대해서만 지원된다는 거겠죠?
그래도 참 좋은 기능입니다. 

단점이라고 한다면... 모두 영어입니다 :)

사실 제가 작성하고 있는 이 내용도 Arduino 홈페이지에 있는 내용입니다.
다만 영어로 되어 있어서 많은 분들이 불편을 겪는 것 같아, 작성해 보았습니다.
제외시킨것도 있고 설명을 간추리거나 전혀 다른 표현을 사용한 것도 있습니다. 그래서 그대로 번역한거라고 생각하시면 안됩니다.
원문 내용이 훨씬 자세하므로 원하신다면 공식 홈페이지에 가세요 :)



추후에는 레퍼런스에 있는 내용들도 한글 설명으로 바꾸어서 올릴 생각입니다.
강의할 때, 아두이노 함수 단위로 설명하지 않고 일반적인 설명을 하다보니.. 어느세 코드레벨로 설명하는 경우가 있었습니다.
그러다보니 쉬워야하는 강의가 어려워지는 경우도 있었죠.
해서, 앞으로 아두이노 강의의 경우는 함수 단위로 설명을 해서 사용법 위주로 설명하려고 합니다.
아두이노로 쉽게 해보고 싶은 사람들을 프로그래머로 만들 필요는 없잖아요?
필요하다면 심화 내용을 배우면 될테구요 :)


그럼 아두이노 IDE 메뉴에 대한 설명은 여기서 마치도록 하겠습니다.



This post is licensed under a Creative Commons Attribution-ShareAlike 3.0 License.



댓글
댓글쓰기 폼