책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 마이크로프로세서
· ISBN : 9791185890098
· 쪽수 : 368쪽
· 출판일 : 2014-12-31
책 소개
목차
chapter01 아두이노 시작하기 1
1.1 아두이노 하드웨어 2
1.2 아두이노 소프트웨어 5
1.3 아두이노 학습 보드 10
1.4 Blink 15
1.5 아두이노 프로그램의 구조 16
1.6 아두이노의 한계 19
1.7 요약 20
연습문제 21
chapter02 C 언어 연습 23
2.1 C/C++ 언어 연습을 위한 환경 24
2.2 데이터 타입 26
2.3 연산자 27
2.4 조건문과 반복문 29
2.5 함수 34
2.6 클래스 35
2.7 요약 40
연습문제 41
chapter03 Serial 및 String 클래스 43
3.1 시리얼 연결 44
3.2 Serial 클래스 50
3.3 String 클래스 55
3.4 요약 61
연습문제 62
chapter04 디지털 데이터 입력 63
4.1 디지털 데이터 입력 65
4.2 풀업 및 풀다운 저항 67
4.3 내부 풀업 저항 73
4.4 여러 개의 버튼 입력 75
4.5 바운스 현상 78
4.6 요약 81
연습문제 82
chapter05 디지털 데이터 출력 85
5.1 Blink 87
5.2 버튼 상태 나타내기 90
5.3 스피커 출력 92
5.4 millis 함수 95
5.5 Blink 속도 조절 100
5.6 요약 104
연습문제 105
chapter06 아날로그 데이터 입출력 107
6.1 아날로그 데이터 입력 109
6.2 난수 생성 113
6.3 가변저항으로 Blink 속도 조절 115
6.4 PWM 출력 117
6.5 가변저항으로 LED 밝기 조절 121
6.6 LED 모듈 121
6.7 요약 125
연습문제 126
chapter07 데이터 입출력 응용 127
7.1 LED 모듈에 패턴 표시하기 128
7.2 LED 모듈의 패턴 바꾸기 133
7.3 시리얼 모니터를 통한 출력 제어 137
7.4 2진수를 10진수로 변환하는 게임 139
7.5 요약 143
연습문제 144
chapter08 7 세그먼트 표시장치 145
8.1 7 세그먼트 표시장치 146
8.2 한 자리 7 세그먼트 모듈 147
8.3 숫자 표시하기 148
8.4 카운터 153
8.5 가변저항으로 7 세그먼트 숫자 제어 156
8.6 숫자 맞히기 게임 157
8.7 요약 162
연습문제 162
chapter09 네 자리 7 세그먼트 표시장치 163
9.1 네 자리 7 세그먼트 표시장치 164
9.2 네 자리 7 세그먼트 모듈 166
9.3 한 자리 숫자 표현하기 167
9.4 네 자리 숫자 표현하기 170
9.5 시간 표현하기 172
9.6 가변저항 값 표시하기 175
9.7 문자와 기호 표시 178
9.8 요약 181
연습문제 182
chapter10 디지털 출력 확장 I - 74595 칩 183
10.1 74595 칩 184
10.2 LED 모듈 제어 190
10.3 원형 비트 시프트 연산 192
10.4 1차원 세포 자동자 196
10.5 요약 199
연습문제 200
chapter11 디지털 입출력 확장 II - MCP23017 칩 201
11.1 I2C 202
11.2 MCP23017 칩 203
11.3 미니 피아노 211
11.4 네 자리 7 세그먼트 모듈 213
11.5 요약 220
연습문제 221
chapter12 텍스트 LCD 225
12.1 텍스트 LCD 226
12.2 LiquidCrystal 라이브러리 228
12.3 임의의 위치에 문자 나타내기 230
12.4 내용 스크롤하기 232
12.5 사용자 정의 문자 출력 234
12.6 가변저항 값 출력하기 236
12.7 타이머 239
12.8 요약 241
연습문제 242
chapter13 센서 243
13.1 광센서 244
13.2 온도 센서 250
13.3 센서 응용 254
13.4 요약 260
연습문제 261
chapter14 라이브러리 263
14.1 라이브러리 264
14.2 EEPROM 라이브러리 267
14.3 RTC 라이브러리 270
14.4 타이머 라이브러리 274
14.5 요약 279
연습문제 280
chapter15 블루투스로 DC 모터 제어하기 281
15.1 소프트웨어 시리얼 282
15.2 블루투스 282
15.3 모터 287
15.4 모터 제어 라이브러리 293
15.5 안드로이드 폰으로 모터 제어하기 297
15.6 요약 299
연습문제 300
Appendix A 아두이노 기본 함수 302
A.1 디지털 입출력 함수 302
A.2 아날로그 입출력 함수 303
A.3 고급 입출력 함수 304
A.4 시간 함수 306
A.5 수학 함수 308
A.6 삼각 함수 310
A.7 난수 함수 311
A.8 비트 조작 함수 312
A.9 외부 인터럽트 함수 315
A.10 인터럽트 함수 316
Appendix B 기본 클래스 317
B.1 Serial 317
B.2 String 323
Appendix C 아두이노 학습 보드 331
C.1 DM-USTYLE-EXT 보드 331
C.2 확장 모듈 338
C.3 (주)뉴티씨 확장 모듈 340
찾아보기 345
저자소개
책속에서
아두이노가 성공한 이유는 여러 가지가 있겠지만, ‘어른들을 위한 과학상자’ 또는 ‘어른들을 위한 장난감’으로서의 자리를 차지하는 데 성공했다는 점이 크다고 하겠다. 비전공자들이 사용할 수 있는 쉬운 마이크로컨트롤러 보드로 시작된 아두이노는 쉽다는 강점을 전면에 내세움으로써 간단하게 나만의 작품을 만들어보고 싶은 사람들을 끌어들이고, 수많은 참여자들에 의해 재사용이 가능한 방대한 소프트웨어 라이브러리를 양산하도록 하였다. 이처럼 오픈소스 정신에 바탕을 둔 아두이노 소프트웨어는 하드웨어의 약점을 보완하고도 남는다.
손쉬운 마이크로컨트롤러라는 기치 아래 시작된 아두이노는 표준화된 하드웨어를 통해 손쉬운 확장이 가능하도록 해줌으로써 다양한 장치들을 쉽게 사용할 수 있도록 해준다. 또한 전통적인 마이크로컨트롤러 프로그래밍에서의 레지스터 조작 작업을 배제하고 추상화된 함수로 프로그램을 작성할 수 있도록 해줌으로써 프로그래밍을 위한 노력을 줄여주고 있다.
우리의 일상에도 마이크로컨트롤러를 이용하여 만들어진 제어장치는 많지만 큰 시스템에 ‘임베디드(embedded)’된 경우가 많아 눈치채지 못하는 경우가 많다. 사람이 지나가면 녹화를 시작하는 CCTV, 자동차가 지나갈 때 과속을 검사하는 단속 카메라 등이 전형적인 임베디드 시스템의 예이다. 이러한 임베디드 시스템에서 많은 연산이 필요하지 않은 경우에는 마이크로컨트롤러가, 많은 연산이 필요한 경우에는 마이크로프로세서가 일반적으로 사용된다. 조금만 주의를 기울이고 찾아본다면 생각보다 많은 곳에서 마이크로컨트롤러가 사용되고 있음을 발견할 수 있을 것이다.