목차 머리말 PART I 아두이노와친해지기 CHAPTER 01 아두이노소개 1. 아두이노하드웨어 2. 아두이노우노 3. 아두이노소프트웨어 4. 아두이노프로그래밍 5. 스케치의구조 6. 맺는말 CHAPTER 02 아두이노기본클래스 1. UART 시리얼연결 2. Seria

Similar documents
CONTENTS.HWP


INDUS-8.HWP


우루과이 내지-1

세계 비지니스 정보

영암군 관광종합개발계획 제6장 관광(단)지 개발계획 제7장 관광브랜드 강화사업 1. 월출산 기( 氣 )체험촌 조성사업 167 (바둑테마파크 기본 계획 변경) 2. 성기동 관광지 명소화 사업 마한문화공원 명소화 사업 기찬랜드 명소화 사업 240

À̶õ°³È²³»Áö.PDF

00-1표지

초판 1쇄발행 2014년 5월 30일지은이허경용펴낸이장성두펴낸곳제이펍출판신고 2009년 11월 10일제 호주소경기도파주시문발로 141 뮤즈빌딩 403호전화 / 팩스 홈페이지

JARDUINO-UNO-BT 커넥터 / 스위치기능 종류 USB 커넥터리셋스위치 DC 전원잭업로드선택스위치 ISP 모드선택점퍼블루투스시리얼모듈전원 / 디지털포트 / 아날로그포트커넥터및 ISP 커넥터 기능 +5V 전원공급, 유선업로드기능누른상태에서전원을공급하면부트로더프로그

경제통상 내지.PS

°æÁ¦Åë»ó³»Áö.PDF


israel-내지-1-4

[96_RE11]LMOs(......).HWP

<C1A4C3A5BFACB1B D3420C1A4BDC5C1FAC8AFC0DAC0C720C6EDB0DFC7D8BCD220B9D720C0CEBDC4B0B3BCB1C0BB20C0A7C7D120B4EBBBF3BAB020C0CEB1C720B1B3C0B020C7C1B7CEB1D7B7A520B0B3B9DF20BAB8B0EDBCAD28C7A5C1F6C0AF292E687770>

°æÁ¦Àü¸Á-µ¼º¸.PDF

PowerPoint 프레젠테이션


미얀-내지-8차

09 강제근로의 금지 폭행의 금지 공민권 행사의 보장 중간착취의 금지 41 - 대판 , 2006도7660 [근로기준법위반] (쌍용자동차 취업알선 사례) 11 균등대우의 원칙 43 - 대판 , 2002도3883 [남녀고용평등법위


PowerPoint 프레젠테이션

Microsoft PowerPoint - chap01-C언어개요.pptx

- 2 -

통신1310_01-도비라및목차1~9

*통신1802_01-도비라및목차1~11

Microsoft PowerPoint - es-arduino-lecture-03

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론


<4D F736F F D20B4EBBFF BFB5BEF7BAB8B0EDBCAD2E646F63>

표1

PowerPoint 프레젠테이션

388

[ 마이크로프로세서 1] 1 주차 1 차시. 마이크로프로세서개요 1 주차 1 차시마이크로프로세서개요 학습목표 1. 마이크로프로세서 (Microprocessor) 를설명할수있다. 2. 마이크로컨트롤러를성능에따라분류할수있다. 학습내용 1 : 마이크로프로세서 (Micropr

Microsoft Word - PEB08_USER_GUIDE.doc

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

C 허경용 All Rights Reserved. 초판 1 쇄발행 2015 년 7 월 29 일 지은이허경용 펴낸이장성두 펴낸곳제이펍 출판신고 2009 년 11 월 10 일제 호 주소경기도파주시문발로 141 뮤즈빌딩 403 호 전화

Microsoft Word - EastSocket매뉴얼_ _.doc

01_피부과Part-01

<4D F736F F F696E74202D20325FBEC6B5CEC0CCB3EB20B1E2C3CABDC3C7E82E BC8A3C8AF20B8F0B5E55D>

1. 제품소개및설명 제품특징 그림. 개발장비사진 - AVR FLASH READ/WRITE 가능 - AVR ISP 프로그래밍방식을지원하는 ATmega8, ATmega16, ATmega32, ATmega64, ATmega128, ATmega 등다수의 AVR MC

뉴티씨 (NEWTC) 2. FB-CY4E-DEV (FPGA 개발 키트) 구성도 Port Select SW 7 Segment Text LCD UART RS-232C JTAG PORTA (5V) Active Serial PORTB (5V) OSC. 50MHz Analog

Chapter ...

*통신1604_01-도비라및목차1~12

CAN-fly Quick Manual

H3250_Wi-Fi_E.book

<BFDCB1B9C0CE20C5F5C0DAB1E2BEF7C0C720B3EBBBE7B0FCB0E82E687770>

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx

< BACFC7D1B1B3C0B0C1A4C3A5B5BFC7E228B1E2BCFABAB8B0ED D D20C6EDC1FD2035B1B32E687770>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

*통신1510_01-도비라및목차1~12

<4D F736F F F696E74202D203131C1D6C2F7202D E6FB8A620C0CCBFEBC7D120C4B3B8AFC5CD204C43442C C1A6BEEEC7CFB1E2205

실용신안등록청구의범위청구항 1 안드로이드기반스마트폰앱 (Application Program, 애플리케이션프로그램 ) 을통하여제어장치를제어하는실습장치에있어서, 통신이설정된컴퓨터 (400) 로부터전송되는안드로이드기반스마트폰앱을저장하는메모리 (130) 와, 상기스마트폰앱에의

슬라이드 1

¾Ë·¹¸£±âÁöħ¼�1-ÃÖÁ¾

00목차

(291)본문7

01....b

2007백서-001-특집

IP 심화 라우팅프로토콜적용시 라우팅테이블에서 이니셜이있는네트워크를설정하는것 : onnected 직접연결된네트워크를의미한다. 그러므로라우팅은 나는이런네트워크와연결되어있다. 를직접연결된라우터들에게알려주는것 1>en 1#conf t 1(config)#router rip 1

0914ä¿òÇÕº».PDF

Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류

Motor Control Solution

<4D F736F F F696E74202D20BAEDB7E7C0CCB3EB3220B1E2BABBC7FC20BBE7BFEBBCB3B8EDBCAD2D E >

JMOD : ATmega128 기본모듈 사용자설명서 제이씨넷

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

C 허경용 All Rights Reserved. 초판 1 쇄발행 2015 년 7 월 29 일 지은이허경용 펴낸이장성두 펴낸곳제이펍 출판신고 2009 년 11 월 10 일제 호 주소경기도파주시문발로 141 뮤즈빌딩 403 호 전화


2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

Musique(002~095).indd

온라인등록용 메뉴얼

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

[ 마이크로프로세서 1] 1 주차 2 차시. 마이크로프로세서와마이크로컨트롤러발달과정 1 주차 2 차시마이크로프로세서와마이크로컨트롤러발달과정 학습목표 1. 마이크로프로세서발달과정과종류를설명할수있다. 2. 인텔 8051 계열과아트멜 (Atmel) 의특성을설명할수있다. 학습

2013 년도연구용역보고서 중소기업정책자금지원의경기대응효과분석 이연구는국회예산정책처의연구용역사업으로수행된것으로서, 보고서의내용은연구용역사업을수행한연구자의개인의견이며, 국회예산정책처의공식견해가아님을알려드립니다. 연구책임자 한남대학교경제학과교수황진영

세계 비지니스 정보

COMFILE_VOL13_ cdr

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

2 ㆍ 大 韓 政 治 學 會 報 ( 第 20輯 1 號 ) 도에서는 고려 말에 주자학을 받아들인 사대부들을 중심으로 보급되기 시작하였고, 이후 조선시대에 들어와서는 국가적인 정책을 통해 민간에까지 보급되면서 주자 성리학의 심 화에 커다란 역할을 담당하였다. 1) 조선시대

untitled

<C7D0B1B3C7F5BDC520BBE7B7CAB9DFB1BCB0FA20C8AEBBEAC0BB20C0A7C7D120B3D7C6AEBFF720B1B8C3E0B9E6BEC8BFACB1B D30362C20C0CEBCE2BABB292E687770>

OSTSen-PIR100 사용자설명서 Ver 1.1 Onsystech OSTSen-PIR100 V1.1 1 of 8 Onsystech

볼리비아-내지-01-1

Print


PART

Part Part

£01¦4Àå-2

½ºÅ丮ÅÚ¸µ3_³»Áö

272*406OSAKAÃÖÁ¾-¼öÁ¤b64ٽÚ

Microsoft Word - src.doc

6 강남구 청담지구 청담동 46, 삼성동 52 일대 46,592-46,592 7 강남구 대치지구 대치동 922번지 일대 58,440-58,440 8 강남구 개포지구 개포동 157일대 20,070-20,070 9 강남구 개포지구중심 포이동 238 일대 25,070-25,

27집최종10.22

황룡사 복원 기본계획 Ⅵ. 사역 및 주변 정비계획 가. 사역주변 정비구상 문화유적지구 조성 1. 정비방향의 설정 황룡사 복원과 함께 주변 임해전지(안압지) 海殿址(雁鴨池)와 분황사 등의 문화유적과 네트워크로 연계되는 종합적 정비계획안을 수립한다. 주차장과 광장 등 주변

SMT Kor.indd

ISP and CodeVisionAVR C Compiler.hwp

Transcription:

목차 머리말 PART I 아두이노와친해지기 CHAPTER 01 아두이노소개 1. 아두이노하드웨어 2. 아두이노우노 3. 아두이노소프트웨어 4. 아두이노프로그래밍 5. 스케치의구조 6. 맺는말 CHAPTER 02 아두이노기본클래스 1. UART 시리얼연결 2. Serial 클래스 3. String 클래스 4. 맺는말 CHAPTER 03 디지털데이터입력 1. 블링크 2. 시리얼모니터로 LED 제어 CHAPTER 04 디지털데이터출력 1. 풀업풀다운저항 2. 버튼테스트 3. 버튼을누른횟수세기 4. 맺는말 CHAPTER 05 아날로그데이터입출력 1. 아날로그데이터입력 2. 아날로그데이터출력

CHAPTER 06 주기적인데이터처리 1. delay 함수 2. millis 함수 PART II 아듀카를위한부품 CHAPTER 07 DC 모터 1. DC 모터 2. DC 모터제어 CHAPTER 08 서보모터 1. 서보모터 2. 서보라이브러리 3. 가변저항으로서보모터제어 4. 시리얼모니터입력으로서보모터제어 5. 맺는말 CHAPTER 09 초음파거리센서 1. 초음파거리센서 2. 물체감지경보기 CHAPTER 10 적외선통신 1. 적외선 2. 적외선데이터포맷 3. IRremote 적외선라이브러리 4. 리모컨으로 LED 제어 5. 요약

CHAPTER 11 라인트레이서모듈 1. 포토트랜지스터 2. 라인트레이서모듈 CHAPTER 12 블루투스통신 1. 블루투스 2. HC-06 블루투스모듈 3. 스마트폰설정 4. 블루투스통신 5. 맺는말 CHAPTER 13 텍스트 LCD 1. 텍스트 LCD 2. I2C (Inter-Integrated Circuit) 통신 3. I2C 방식텍스트 LCD 4. 맺는말 PART III 아듀카 - 아두이노로제어하는자동차 CHAPTER 14 아듀카만들기 1. 아듀카 (ArduCar : Arduino Controlled Car) 2. 모터연결 3. 텍스트 LCD 연결 4. 아듀카라이브러리 5. 맺는말 CHAPTER 15 블루투스로제어하는아듀카 1. 블루투스설정 2. 블루투스로제어하는아듀카

CHAPTER 16 리모컨으로제어하는아듀카 1. 적외선수신모듈 2. 리모컨으로제어하는아듀카 CHAPTER 17 라인트레이싱아듀카 1. 라인트레이서모듈 2. 라인트레이서 CHAPTER 18 장애물회피아듀카 1. 서보모터와초음파거리센서 2. 장애물회피아듀카 appendix 부록 APPENDIX 01 아두이노기본함수 I. 디지털입출력함수 II. 아날로그입출력함수 III. 고급입출력함수 IV. 시간함수 V. 수학함수 VI. 삼각함수 VII. 문자함수 VIII. 난수함수 IX. 비트조작함수 X. 외부인터럽트함수 XI. 인터럽트함수 APPENDIX 02 아두이노기본클래스 I. Serial II. String

머리말 아두이노가처음출시된지도 10년이넘게지났다. 지난 10여년이아두이노가 누구나쉽게사용할수있는마이크로컨트롤러보드 라는기반을다지는시기였다면, 다가올 10년은 누구나실생활에필요한도구를만들어사용할수있는마이크로컨트롤러보드 로생활속으로들어오는시간이기를바라고있다. 어찌보면작은변화일수있지만실생활에서사용될수있다는것은상상만하던일을현실에서만날수있다는의미이며, 더이상구경만하면서부러워할필요없이직접만들어사용할수있다는의미이기도하다. 아두이노가성공할수있었던이유에는오픈소스정책을따랐기때문에, 쉬운프로그래밍방식을도입했기때문에, 사물인터넷의보급에영향을받았기때문에등등기술적인장점들을여러가지이야기할수있지만그보다덜하지않은이유중하나가 어른들을위한장난감 이라는점이아닐까싶다. 어릴적트랜지스터와몇개의부품만으로라디오를만들어본경험이있다면아두이노에서어린시절의추억을찾아낼수있으리라생각한다. 이미많은아두이노관련책들이판매되고있으며이들은서로다른방향에서아두이노를바라보고있다. 하지만실생활에서사용되는위해서는, 어른들을위한장난감으로매력을가지기위해서는단편적인내용들을하나로합해서만들수있는무언가가필요하다. 잠깐의검

색만으로도신기하고흥미로운것들을찾아낼수있고, 필요한것들은대부분은공개되어있지만이들을아울러하나의완성품으로만들어낼수있는방법까지알려줄수있다면더좋으리라는생각에이책을준비하였다. 아두이노관련책을한권쯤읽고나서다음에는무엇을해야할지망설이는독자를위해이책을준비하였다. 아두이노로만들수있는것은많다. 그중에서도이책에서는아두이노로움직이는자동차를선택한것은많은관련내용을쉽게찾아낼수있을만큼접근하기가쉬운것이그하나이며, 그럼에도아직까지다양한응용이가능하기때문이다른하나다. 구슬이서말이라도꿰어야보배라는말처럼여기저기흩어져있는것들을모아줄거리가있는이야기로풀어나가고싶었다. 어찌생각하면이책에서신기한무언가를발견할수없어실망할수도있겠지만시작부터끝까지, 준비부터완성까지를경험하고스스로에게자문할수있기를바란다. 이책을통해아두이노라는또다른재미를발견할수있기를, 아두이노를사용하여무언가만들어보고싶은것이생기기를, 그무언가를완성해서즐거워할때이책이기억난다면더바랄것이없겠다.

IP A R T 아두이노와친해지기

01 C hapter 아두이노소개 아두이노는비전공자들을위한오픈소스기반마이크로컨트롤러프로젝트중하나로, 쉽고간단한사용방법으로다양한사용자층을끌어들여독자적인생태계를구축함으로써마이크로컨트롤러관련프로젝트중가장많은관심을받고있다. 이장에서는아두이노보드가가지는하드웨어측면의특징과, 아두이노보드를사용하여쉽고빠른개발이가능하도록해주는소프트웨어개발환경에대해알아본다. 1. 아두이노하드웨어 13 1-1 마이크로컨트롤러 + α 최근마이크로컨트롤러와관련하여가장주목을받는단어중하나는아두이노가아닐까싶다. 아두이노는이탈리아밀라노옆에위치한이브레아 (Ivrea) 에서예술가와디자이너가쉽게사용할수있으며, 저렴하고간단한제어장치를만들수있도록시작된오픈소스프로젝트중하나다. 2005년처음발표된이후아두이노는쉬운사용법으로수많은참여자들을끌어들여독자적인생태계구축에성공함으로써마이크로컨트롤러관련오픈소스프로젝트중가장많은참여자를가진프로젝트의하나로자리매김하고있다. 아두이노에관해간단히설명하였지만아두이노가무엇인지정의하기는쉽지않다. 그이유중하나는아두이노라는단어가마이크로컨트롤러를이용 PART I 아두이노와친해지기

하여만들어진개발보드, 즉, 하드웨어에해당하는아두이노보드와아두이노보드를동작시키기위해필요한 ( 흔히펌웨어라고불리며아두이노에서는스케치라부르는 ) 프로그램을개발할수있는소프트웨어개발환경까지함께가리키기때문이다. 14 아두이노하드웨어에대해서도간단히설명하기는쉽지않다. 아두이노하드웨어를이해하기어렵게만드는이유역시여러가지가있지만 마이크로컨트롤러 와 마이크로컨트롤러보드 를명확히구분하지못하는이유가그중하나다. 아두이노는 마이크로컨트롤러를사용하여만들어진개발보드 다. 주의할점은 개발보드 지 마이크로컨트롤러 가아니라는점이다. 마이크로컨트롤러는싱글칩컴퓨터 (single chip computer) 라고도불리는, 컴퓨터의본체에해당하는기능을하나의칩으로집약시켜놓은성능이낮은컴퓨터다. 컴퓨터의본체에전원만공급하면컴퓨터로기능할수있는것처럼마이크로컨트롤러역시전원만주어진다면마이크로컨트롤러로서, 즉, 낮은사양의컴퓨터로동작할수있다. 하지만아두이노보드에는마이크로컨트롤러이외에많은것들이추가되어있다. 그림 1은아두이노보드중가장많이사용되는아두이노우노를나타낸것이다. 아두이노는개발보드이므로편리한개발을위해컴퓨터또는주변장치와연결할수있는방법, 전원을공급할수있는방법등을제공하고있다. 실제로아두이노우노에는아두이노우노에서핵심이라할수있는 ATmega328 마이크로컨트롤러이외의부가적인부품들이더많은공간을차지하고있다. 이처럼아두이노보드는 마이크로컨트롤러 + α = 마이크로컨트롤러보드 를의미한다. 아듀카, 아두이노로미는자동차

리셋버튼 USB 시리얼변환마이크로커트롤러 디지컬핀 USB 커넥터 16MHz 클록 ISP 연결커넥터 ATmega328 외부전원 아날로그핀 그림 1. 아두이노우노 1 1-2 아두이노보드의종류 - 핀헤더의유무 아두이노를이해하기어렵게만드는또다른이유는아두이노보드가한가지보드만을지칭하는것이아니라는점이다. 아두이노의제품소개페이지 2 에는수많은보드들이나열되어있다. 아두이노라고이름붙은보드들은크 15 기와형태가다양하여외형적으로는공통점을쉽게찾아볼수없다. 아두이노보드의공통점은아두이노의개발환경을사용하여작성된펌웨어를서로다른아두이노보드들이함께사용할수있다는점에서찾아야한다. 마이크로컨트롤러는그종류에따라펌웨어를작성하는방법은조금씩다르다. 동일한회사에서만들어진마이크로컨트롤러의경우에도예외는아니다. 즉, 동일한기능을구현하기위해작성해야하는펌웨어는마이크로컨트롤러에따라일부달라지거나전혀다른형태를가질수있다. 하지만아두이노라 1 http://www.arduino.cc 2 http://www.arduino.cc/en/main/products PART I 아두이노와친해지기

고이름붙여진보드들은모두동일한방식으로펌웨어를작성할수있으며이러한공통의개발환경이아두이노의장점중하나라고할수있다. 아두이노를특징짓는중요한요소중한가지가개발환경에있는것은사실이지만, 이는하드웨어의지원이바탕이되어야하는것도사실하다. 서로다른형태로공통점을찾기어려운아두이노보드들이공통점을가지기는한것일까? 아두이노보드들을그룹으로묶어보면아두이노보드들사이의공통점을발견할수있다. 먼저아두이노보드를피메일 (female) 형태의핀헤더가존재하는보드와존재하지않는보드로나누어보자. 16 (a) 아두이노우노 (b) 아두이노나노 (c) 아두이노레오나르도 (d) 아두이노마이크로 그림 2. ATmega328 과 ATmega32u4 마이크로컨트롤러를사용하는아두이노보드 3 3 http://www.arduino.cc 아듀카, 아두이노로미는자동차

그림 2의아두이노우노와아두이노나노는동일한마이크로컨트롤러를사용하여만들어진보드다. 가장큰칩이마이크로컨트롤러로, 크기와형태가달라보이지만패키징의차이일뿐 ATmega328이라는동일한마이크로컨트롤러를사용하고있다. 동일한마이크로컨트롤러를사용하는서로다른보드가필요한이유는무엇일까? 바로사용목적의차이다. 아두이노우노는아두이노의대표적인보드중하나로 개발보드 의목적에충실하게주변장치나컴퓨터와간편하게연결할수있는다양한부가장치들이포함되어있다. 하지만아두이노나노는개발목적이라기보다는개발이완료된후실제작품에적용하는단계에서사용할수있도록아두이노우노와동일한기능의보드를소형으로만들어놓은것이다. 이처럼보드의형태는다르지만동일한기능을가지고있는아두이노보드들이존재한다. 아두이노레오나르도와아두이노마이크로의관계역시아두이노우노와아두이노나노의관계와동일하다. 17 (a) 릴리패드아두이노 (b) 아두이노에스플로라 (c) 아두이노로봇 그림 3. 전용목적의아두이노보드 4 (d) 아두이노메가 ADK 4 http://www.arduino.cc PART I 아두이노와친해지기

이외에도웨어러블기기개발을위한릴리패드아두이노, 센서가결합되어있는아두이노에스플로라 (Esplora), 주행장치를만들수있는아두이노로봇, 안드로이드용액세서리개발을위한아두이노메가 ADK 등특정목적에맞게사용할수있는전용아두이노보드들이존재한다. 이들전용아두이노보드는아두이노우노나아두이노레오나르도와같은기본보드에목적에맞는주변장치를추가하여만들어진것이므로기본보드와호환성을가진다. 예를들어아두이노에스플로라는아두이노레오나르도와동일한 ATmega32u4 마이크로컨트롤러를사용하며, 릴리패드아두이노는아두이노우노와동일한 ATmega328 마이크로컨트롤러를사용하고있다. 1-3 아두이노보드의종류 - 핀헤더의배열 18 아두이노보드의또다른공통점을찾아내기위해이번에는핀헤더의위치와배열을살펴보자. ATmega328 마이크로컨트롤러를사용하는아두이노우노와 ATmega2560 마이크로컨트롤러를사용하는아두이노메가2560의핀헤더에서공통점을발견하였는가? (a) 아두이노우노 (b) 아두이노메가 2560 그림 4. 아두이노우노와아두이노메가 2560 5 5 http://www.arduino.cc 아듀카, 아두이노로미는자동차

아두이노메가2560은 ATmega2560 마이크로컨트롤러의 70개입출력핀을사용할수있도록해주므로, 아두이노우노가 ATmega328 마이크로컨트롤러의 20개입출력핀을사용할수있도록해주는것과비교하면훨씬많은입출력핀을사용할수있어다양한주변장치를연결하여사용할수있다. 따라서아두이노메가2560에는더많은수의피메일핀헤더가존재한다. 하지만그림 4에서아두이노메가2560 보드의왼쪽에있는핀헤더들은아두이노우노와동일한배열을가지고있다. 즉, 아두이노우노에서연결한주변장치를그대로아두이노메가2560에연결하고아두이노우노에서사용한프로그램을그대로업로드하면아두이노우노에서와동일한동작을아두이노메가2560에서도확인할수있다. 핀헤더배열이동일하다는점은아두이노보드에공통으로사용할수있는확장보드인쉴드 (shield) 제작을가능하게해준다. 아두이노홈페이지에도여러종류의쉴드가소개되고있으며그림 5는그중일부다. 그림 5에소개된쉴드들역시아두이노우노의핀헤더와동일한핀헤더를가지고있으므로여러개의쉴드를적층하여사용할수있다. 다만동일한입출력핀을사용하는여러개의쉴드를적층하는경우에는사용에제한이있을수있다. 19 PART I 아두이노와친해지기

(a) 이더넷쉴드 (b) USB 호스트쉴드 20 (c) 모터쉴드 그림 5. 아두이노쉴드 6 (d) 릴레이쉴드 아두이노는하드웨어가공개되어있기때문에누구나아두이노에서사용가 능한쉴드를제작할수있다. 아두이노홈페이지에소개된쉴드이외에도검 색을통해다양하고신기한기능의쉴드들을쉽게찾아볼수있다. 1-4 아두이노보드의종류 - 사용된마이크로컨트롤러 이외에도아두이노보드들은대부분마이크로칩 (Microchip) 7 에서제작한마이 크로컨트롤러를사용한다는공통점이있다. 마이크로칩사에서제작하고아 6 http://www.arduino.cc 7 http://www.microchip.com 아듀카, 아두이노로미는자동차

두이노보드에사용된마이크로컨트롤러는크게두종류로나눌수있다. 아두이노우노, 아두이노레오나르도, 아두이노메가2560 등은마이크로칩의아키텍처를바탕으로하는 AVR 시리즈마이크로컨트롤러를사용하고있다. 반면아두이노듀에, 아두이노제로등은 ARM의아키텍처를사용하고마이크로칩에서제작한 Cortex-M 시리즈마이크로컨트롤러를사용하고있다. 표 1은마이크로칩에서제작하고아두이노에서사용되고있는마이크로컨트롤러의종류를요약한것이다. 표 1. 아두이노보드별마이크로컨트롤러종류 아두이노보드마이크로컨트롤러아키텍처 CPU 비트수 우노 ATmega328 AVR 레오나르도 ATmega32u4 AVR 메가2560 ATmega2560 AVR 제로 ATSAMD21G18 ARM Cortex M0+ 듀에 AT91SAM3X8E ARM Cortex M3 8 비트 32 비트 21 애초아두이노는마이크로칩의 AVR 시리즈마이크로컨트롤러를사용하여제작되었다. 하지만높은사양의마이크로컨트롤러에대한요구가증가함에따라 ARM Cortex-M 기반의아두이노보드도출시되고있다. 아두이노우노의경우 8비트 CPU에 16MHz 클록을사용하지만아두이노듀에의경우 32 비트 CPU에 84MHz 클록을사용하는등 Cortex-M 마이크로컨트롤러를사용하는아두이노보드들은높은성능을보여준다. 하지만아두이노는비전공자들을위한마이크로컨트롤러프로젝트로시작되었다는점을잊지말아야한다. 아두이노는높은사양도중요하지만간편한사용역시중요하다. 따라서아직도 AVR 시리즈마이크로컨트롤러를사용한아두이노보드가주류를이루고있으며최초의아두이노보드를계승한아두이노우노는여전히아두이노의대표보드로자리매김하고있다. PART I 아두이노와친해지기