책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 마이크로프로세서
· ISBN : 9788994506937
· 쪽수 : 636쪽
· 출판일 : 2014-05-30
책 소개
목차
Chapter01 아두이노란 무엇인가? 1
Chapter02 마이크로컨트롤러 17
2.1 마이크로프로세서와 마이크로컨트롤러 17
2.2 교차 개발 환경 20
2.3 개발 프로그램 22
Chapter03 아두이노 개발 환경 설정 28
Chapter04 아두이노 프로그램의 구조 49
Chapter05 아두이노의 기본 입출력 61
5.1 디지털 입출력 62
5.2 아날로그 입출력 70
Chapter06 아두이노를 위한 C/C++ 언어 76
6.1 C/C++ 언어 테스트 환경 77
6.2 main 함수 79
6.3 데이터형 79
6.4 연산자 89
6.5 제어문 101
6.6 배열 107
6.7 함수 111
6.8 포인터 112
6.9 클래스 117
Chapter07 아두이노 함수 128
7.1 디지털 입출력 함수 129
7.2 아날로그 입출력 함수 132
7.3 고급 입출력 함수 138
7.4 시간 함수 141
7.5 수학 함수 144
7.6 삼각 함수 147
7.7 난수 생성 함수 148
7.8 비트 조작 함수 150
7.9 외부 인터럽트 함수 152
7.10 인터럽트 함수 155
Chapter08 기본 클래스 158
8.1 Serial 159
8.2 String 172
Chapter09 라이브러리 189
9.1 기본 라이브러리 189
9.2 외부 라이브러리 195
9.3 라이브러리 만들기 200
Chapter10 아두이노를 위한 전자 부품 209
10.1 저항 209
10.2 다이오드 211
10.3 커패시터 212
10.4 트랜지스터 214
10.5 집적회로 215
10.6 브레드보드 217
Chapter11 시리얼 통신 사용하기 221
11.1 시리얼 통신을 통한 RGB LED 밝기 제어 222
11.2 시리얼 통신에서 숫자 형식 지정하기 225
11.3 Handshaking에 의한 시리얼 통신 연결 226
11.4 시리얼 통신을 통한 다수의 LED 제어 229
Chapter12 소프트웨어 시리얼 234
Chapter13 디지털 및 아날로그 입출력 248
13.1 아두이노 스케치를 위한 최소 코드 249
13.2 내장 LED 점멸 249
13.3 풀다운 저항이 연결된 버튼 입력 250
13.4 풀업 저항이 연결된 버튼 입력 252
13.5 아날로그 입력 254
13.6 PWM 형식의 아날로그 출력 257
13.7 아날로그 입력에 의한 LED 밝기 조절 259
13.8 delay 함수 없이 LED 점멸하기 261
13.9 버튼을 누른 횟수 세기 263
13.10 내부 풀업 저항을 이용한 버튼 입력 265
13.11 멜로디 재생 268
13.12 미니 키보드 276
13.13 음높이 조절하기 278
13.14 LED 미터 280
Chapter14 센서 사용하기 1 285
14.1 광 센서 286
14.2 압력 센서 290
14.3 온도 센서 295
Chapter15 센서 사용하기 2: 초음파 거리 센서 300
15.1 초음파 센서 모듈 - SRF05 301
15.2 초음파 거리 센서 모듈.Grove 306
Chapter16 7 세그먼트 표시 장치 312
16.1 7 세그먼트 표시 장치 314
16.2 7 세그먼트 표시 장치 + 7447 317
16.3 7 세그먼트 표시 장치 + 74164 320
16.4 7 세그먼트 표시 장치 + 74595 323
Chapter17 네 자리 7 세그먼트 표시 장치 329
Chapter18 LED 매트릭스 338
Chapter19 텍스트 LCD 359
Chapter20 그래픽 LCD 373
Chapter21 TFT LCD 386
Chapter22 블루투스 401
22.1 블루투스 모듈 HC-06 402
22.2 아두이노와 컴퓨터 간 블루투스 통신 406
22.3 아두이노와 스마트폰 간 블루투스 통신 413
22.4 마스터와 슬레이브 간 블루투스 통신 416
Chapter23 서보 & DC 모터 423
23.1 서보 모터 424
23.2 DC 모터 430
23.3 모터 쉴드 434
Chapter24 날짜와 시간 1 439
24.1 소프트웨어 RTC 440
24.2 하드웨어 RTC 443
Chapter25 날짜와 시간 2: Wire 라이브러리 450
25.1 Wire 라이브러리 451
25.2 Wire 라이브러리를 이용한 RTC 모듈 제어 457
Chapter26 I2C와 SPI 통신을 이용한 아두이노 연결 467
26.1 I2C 468
26.2 I2C를 이용한 아두이노 간 통신 469
26.3 SPI 471
26.4 SPI 라이브러리 472
26.5 SPI를 이용한 아두이노 간 통신 476
Chapter27 디지털 입출력 확장 482
27.1 키 매트릭스 483
27.2 아날로그 입력 핀을 이용한 버튼 입력 확장 489
27.3 MCP23017 칩 492
Chapter28 EEPROM 라이브러리 502
Chapter29 타이머 라이브러리 509
29.1 Metro 라이브러리 513
29.2 MsTimer2 라이브러리 515
Chapter30 SD 라이브러리 519
30.1 SD 클래스 521
30.2 File 클래스 524
Chapter31 부트로더와 메모리 537
31.1 부트로더 537
31.2 ATmega328의 메모리 544
Chapter32 DIY 아두이노 549
32.1 DEUino 회로 550
32.2 아두이노 보드를 이용한 업로드 561
32.3 프로그래머를 이용한 업로드 570
32.4 UART 시리얼 변환기를 이용한 업로드 573
32.5 8MHz 내부 클록 이용 576
Chapter33 아두이노와 호환 가능한 마이크로컨트롤러 1: ATmega128 584
Chapter34 아두이노와 호환 가능한 마이크로컨트롤러 2: ATtiny85 602
저자소개
리뷰
책속에서
오픈 소스 하드웨어는 공개된 회로를 바탕으로 아두이노 보드 자체의 기능 개선 및 확장이 가능하도록 해주므로 다양한 호환 보드와 확장 보드들이 판매되고 있다. 원하는 기능의 보드가 없는 경우에는 아두이노의 표준을 준수하면서 직접 하드웨어를 설계하고 제작할 수도 있다. 소프트웨어 역시 오픈 소스를 바탕으로 하고 있으므로 무료로 다운받아 사용할 수 있으며, 비전공자들도 쉽게 사용할 수 있도록 간단하고 직관적인 사용자 인터페이스를 제공하고 있다.
아두이노는 C++을 기반으로 만들어졌지만 초보자들이 쉽게 프로그램을 작성할 수 있도록 main 함수를 제거하고, 초기화를 위한 setup 함수와 반복 시행되는 loop 함수만으로 프로그램을 작성할 수 있는 직관적인 구조를 가지고 있다. main 함수는 프로그램의 시작 지점을 알려주는 역할을 하는 함수로서 컴파일을 위해서는 반드시 필요한 함수이다. 따라서 아두이노의 전처리기는 사용자를 대신하여 main 함수를 추가하여 컴파일러가 스케치를 컴파일할 수 있도록 해준다.
아두이노 스케치는 C/C++ 언어를 기반으로 하고 있다. 일반적으로 스케치는 C 스타일로 작성되지만, 라이브러리는 객체지향성을 지닌 C++ 스타일로 작성되어 배포되므로 C 언어의 기본 문법뿐만 아니라 객체지향의 개념과 이용 방법에 대한 학습이 필요하다. 아두이노 스케치에는 C/C++ 언어와 달리 프로그램의 시작점을 나타내는 main 함수가 없다. 하지만 이는 코딩의 양을 줄이기 위한 아두이노의 특징으로서 실제로는 아두이노 프로그램에서 main 함수를 자동으로 만들어 관리하며 사용자로부터 숨기고 있을 뿐이다.