본문내용 바로가기
MD의선택 무료배송 소득공제

레시피로 배우는 아두이노 쿡북 아두이노 1.X 지원

2판 | 반양장
마이클 마골리스 지음 | 윤순백 옮김 | 제이펍 | 2012년 09월 12일 출간
클로버 리뷰쓰기

이 책의 다른 상품 정보

  • 정가 : 38,000원
    판매가 : 34,200 [10%↓ 3,800원 할인]
  • 혜택 :
    [기본적립] 1900원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2,000원 추가적립 안내 [회원혜택] 회원 등급 별, 3만원 이상 구매 시 2~4% 추가적립 안내 [리뷰적립] 리뷰 작성 시 e교환권 최대 300원 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 개정정보 : 2021년 09월 출간된 개정판이 있습니다. 개정판 보기
  • 도서상태 : 절판
상품상세정보
ISBN 9788994506487(8994506489)
쪽수 888쪽
크기 188 * 245 * 40 mm /1470g 판형알림
이 책의 원서/번역서 Arduino Cookbook(2nd edition) / Michael Margolis

책소개

이 책이 속한 분야

아두이노 프로젝트를 도와주는 200가지 팁과 기술!
『레시피로 배우는 아두이노 쿡북』은 아두이노나 프로그래밍에 대한 경험이 없는 초보자도 무리 없이 시작할 수 있도록 다양한 실전 예제와 지침을 제시한 책이다. 본문은 아두이노 보드와 필수 소프트웨어 개념을 비롯하여 디지털 및 아날로그 신호 판독을 위한 기본 기술, 시각적 디스플레이를 구동하고, 사운드를 생성하고, 여러 가지 모터를 제어하는 방법, 지연 시간 및 시간 측정을 다루는 기술, 고급 코딩 및 메모리 처리 기술 등을 다루었다. 엔지니어, 아티스트, 디자이너, 애호가, 학생을 비롯한 누구라도 자신의 프로젝트를 지금 당장 시작하고, 확장하고, 발전시키는 데 활용할 수 있는 다양한 레시피를 만나볼 수 있을 것이다.

목차

Chapter 1 시작하기 _ 1
1.0 소개 _ 1
1.1 통합 개발 환경(IDE) 설치하기 _ 5
1.2 아두이노 보드 설정하기 _ 9
1.3 통합 개발 환경(IDE)에서 아두이노 스케치 준비하기 _ 12
1.4 Blink 스케치 업로드 및 실행하기 _ 15
1.5 스케치 작성 및 저장하기 _ 17
1.6 아두이노 사용하기 _ 20

Chapter 2 스케치 만들기 _ 25
2.0 소개 _ 25
2.1 아두이노 프로그램 구조화하기 _ 26
2.2 간단한 기본 유형(변수) 사용하기 _ 28
2.3 부동 소수점 숫자 사용하기 _ 30
2.4 여러 개의 값으로 구성된 배열 작업 _ 33
2.5 아두이노의 문자열 기능 사용하기 _ 37
2.6 C 문자열 사용하기 _ 43
2.7 쉼표로 구분된 텍스트를 그룹으로 분리하기 _ 45
2.8 숫자를 문자열로 변환하기 _ 48
2.9 문자열을 숫자로 변환하기 _ 50
2.10 코드를 기능 블록으로 구조화하기 _ 53
2.11 하나의 함수에서 두 개 이상의 값 리턴하기 _ 59
2.12 조건에 따라 작업 수행하기 _ 62
2.13 명령문 시퀀스 반복하기 _ 63
2.14 카운터를 사용하여 명령문 반복하기 _ 66
2.15 루프 종료하기 _ 70
2.16 단일 변수를 기반으로 다양한 작업 수행하기 _ 70
2.17 문자 및 숫자 값 비교하기 _ 73
2.18 문자열 비교하기 _ 76
2.19 논리 비교 수행하기 _ 77
2.20 비트 연산 수행하기 _ 78
2.21 연산과 할당 결합하기 _ 81

Chapter 3 수학 연산자 사용하기 _ 83
3.0 소개 _ 83
3.1 더하기, 빼기, 곱하기 그리고 나누기 _ 83
3.2 값 증가 및 감소시키기 _ 85
3.3 두 값을 나눈 후 나머지 찾기 _ 86
3.4 절댓값 확인하기 _ 87
3.5 숫자를 일정 범위의 값으로 제한하기 _ 88
3.6 여러 값의 최솟값 또는 최댓값 찾기 _ 89
3.7 숫자의 거듭 제곱 구하기 _ 91
3.8 제곱근 구하기 _ 92
3.9 부동 소수점 숫자 반올림하기 _ 92
3.10 삼각 함수 사용하기 _ 94
3.11 난수 생성하기 _ 95
3.12 비트 설정 및 읽기 _ 98
3.13 비트 이동하기 _ 102
3.14 int 또는 long형 데이터에서 상위 및 하위 바이트 추출하기 _ 104
3.15 상위 및 하위 바이트를 사용하여 int 또는 long형 값 만들기 _ 106

Chapter 4 시리얼 통신 _ 109
4.0 소개 _ 109
4.1 아두이노의 디버그 정보를 컴퓨터로 보내기 _ 116
4.2 아두이노에서 형식 지정된 텍스트 및 숫자 데이터 보내기 _ 120
4.3 아두이노에서 시리얼 데이터 받기 _ 124
4.4 아두이노에서 단일 메시지로 여러 텍스트 필드 전송하기 _ 130
4.5 아두이노에서 여러 텍스트 필드를 단일 메시지로 받기 _ 136
4.6 아두이노에서 2진 데이터 보내기 _ 141
4.7 컴퓨터에서 아두이노의 2진 데이터 받기 _ 146
4.8 Processing에서 아두이노로 2진 값 보내기 _ 148
4.9 여러 아두이노 핀의 값 보내기 _ 151
4.10 PC나 Mac에서 마우스 커서를 이동하는 방법 _ 156
4.11 아두이노로 Google 어스 제어하기 _ 161
4.12 아두이노 데이터를 컴퓨터 파일에 로깅하기 _ 167
4.13 동시에 두 개의 시리얼 장치에 데이터 전송하기 _ 171
4.14 동시에 두 장치의 시리얼 데이터 수신하기 _ 175
4.15 시리얼 데이터 송수신을 위해 컴퓨터에서 Processing 설정하기 _ 180

Chapter 5 간단한 디지털 및 아날로그 입력 _ 183
5.0 소개 _ 183
5.1 스위치 사용하기 _ 187
5.2 외부 저항 없이 스위치 사용하기 _ 192
5.3 스위치 닫힘을 안정적으로 감지하기 _ 194
5.4 스위치의 눌림 시간 확인하기 _ 197
5.5 키패드 읽기 _ 203
5.6 아날로그 값 읽기 _ 207
5.7 값 범위 변경하기 _ 209
5.8 7개 이상의 아날로그 입력 읽기 _ 212
5.9 최대 5볼트의 전압 표시하기 _ 215
5.10 전압 변경에 대응하기 _ 219
5.11 5볼트 이상의 전압 측정하기(전압 분배기) _ 220

Chapter 6 센서로부터 입력받기 _ 225
6.0 소개 _ 225
6.1 이동 감지하기 _ 228
6.2 조명 감지하기 _ 231
6.3 동작 감지하기(적외선 감지기 통합) _ 233
6.4 거리 측정하기 _ 235
6.5 정확한 거리 측정하기 _ 240
6.6 진동 감지하기 _ 244
6.7 소리 감지하기 _ 246
6.8 온도 측정하기 _ 250
6.9 RFID 태그 판독하기 _ 254
6.10 로터리 이동 추적하기 _ 257
6.11 두 개 이상 로터리 인코더의 이동 추적하기 _ 261
6.12 실행 중인 스케치에서 로터리 이동 추적하기 _ 263
6.13 마우스 사용하기 _ 266
6.14 GPS로부터 위치받기 _ 271
6.15 자이로스코프를 사용하여 회전 감지하기 _ 277
6.16 방향 감지하기 _ 284
6.17 게임 컨트롤 패드(PlayStation)의 입력받기 _ 290
6.18 가속도 읽기 _ 293

Chapter 7 시각적 출력 _ 297
7.0 소개 _ 297
7.1 LED 연결 및 사용하기 _ 302
7.2 LED 밝기 조절하기 _ 305
7.3 고출력 LED 사용하기 _ 307
7.4 LED 색상 조정하기 _ 310
7.5 여러 개의 LED 연결하기: 막대 그래프 만들기 _ 314
7.6 여러 개의 LED 연결하기: 체이스 시퀀스 만들기 _ 318
7.7 멀티플렉싱을 사용하여 LED 매트릭스 제어하기 _ 319
7.8 LED 매트릭스에 이미지 표시하기 _ 323
7.9 LED 매트릭스 제어하기: 찰리플렉싱 _ 326
7.10 7세그먼트 LED 디스플레이 구동하기 _ 334
7.11 멀티 7세그먼트 LED 디스플레이 사용하기: 멀티플렉싱 _ 337
7.12 MAX7221 시프트 레지스터를 사용하여 멀티 7세그먼트 LED 디스플레이 구동하기 _ 340
7.13 MAX72xx 시프트 레지스터를 사용하여 LED 배열 제어하기 _ 343
7.14 PWM 확장 칩(TLC5940)으로 아날로그 출력 수 늘리기 _ 346
7.15 아날로그 계측기를 디스플레이로 사용하기 _ 350

Chapter 8 물리적 출력 _ 353
8.0 소개 _ 353
8.1 서보 위치 제어하기 _ 357
8.2 포텐셔미터나 센서를 통해 2개 이하의 서보 제어하기 _ 359
8.3 연속 회전 서보의 속도 제어하기 _ 361
8.4 컴퓨터 명령으로 서보 제어하기 _ 363
8.5 브러시리스 모터 구동하기(일반형 변속기 사용) _ 366
8.6 솔레노이드와 릴레이 제어하기 _ 367
8.7 진동 모터 사용하기 _ 369
8.8 트랜지스터를 사용하여 브러시드 모터 구동하기 _ 372
8.9 H브릿지를 사용하여 브러시드 모터의 방향 제어하기 _ 374
8.10 H브릿지를 사용하여 브러시드 모터의 방향과 속도 제어하기 _ 377
8.11 센서를 사용하여 브러시드 모터의 방향과 속도 제어하기(L293 H브릿지) _ 380
8.12 바이폴라 스텝퍼 모터 구동하기 _ 387
8.13 바이폴라 스텝퍼 모터 구동하기(EasyDriver 보드 사용) _ 391
8.14 유니폴라 스텝퍼 모터 구동하기(ULN2003A) _ 395

Chapter 9 오디오 출력 _ 399
9.0 소개 _ 399
9.1 신호음 재생하기 _ 402
9.2 간단한 멜로디 재생하기 _ 405
9.3 2개 이상의 동시 신호음 생성하기 _ 407
9.4 오디오 신호음 생성 및 LED 페이딩 _ 410
9.5 WAV 파일 재생하기 _ 413
9.6 MIDI 제어하기 _ 417
9.7 오디오 신디사이저 만들기 _ 421

Chapter 10 원격으로 외부 장치 제어하기 _ 425
10.0 소개 _ 425
10.1 적외선 리모컨에 응답하기 _ 426
10.2 적외선 리모컨 신호 디코딩하기 _ 430
10.3 리모컨 신호 모방하기 _ 434
10.4 디지털 카메라 제어하기 _ 437
10.5 원격 제어 스위치로 AC 장치 제어하기 _ 440

Chapter 11 디스플레이 사용하기 _ 445
11.0 소개 _ 445
11.1 텍스트 LCD 디스플레이 연결 및 사용하기 _ 446
11.2 텍스트 서식 지정하기 _ 451
11.3 커서와 디스플레이를 켜거나 끄기 _ 454
11.4 텍스트 스크롤하기 _ 456
11.5 특수 기호 표시하기 _ 460
11.6 사용자 정의 문자 만들기 _ 463
11.7 단일 문자보다 큰 기호 표시하기 _ 466
11.8 단일 문자보다 작은 픽셀 표시하기 _ 469
11.9 그래픽 LCD 디스플레이 연결 및 사용하기 _ 472
11.10 그래픽 디스플레이에 사용할 비트맵 만들기 _ 477
11.11 TV에 텍스트 표시하기 _ 480

Chapter 12 시간과 날짜 사용하기 _ 487
12.0 소개 _ 487
12.1 지연 시간 만들기 _ 487
12.2 millis 함수로 기간 결정하기 _ 489
12.3 좀 더 정확한 펄스 기간 측정하기 _ 493
12.4 아두이노를 시계로 사용하기 _ 496
12.5 주기적으로 함수를 호출하는 알람 만들기 _ 506
12.6 실시간 클럭 사용하기 _ 510

Chapter 13 I2C와 SPI를 사용하여 통신하기 _ 517
13.0 소개 _ 517
13.1 BlinkM 모듈을 사용하여 RGB LED 제어하기 _ 522
13.2 Wii 눈차크 가속도계 사용하기 _ 528
13.3 외부 실시간 클럭 사용하기 _ 534
13.4 외부 EEPROM 메모리 추가하기 _ 536
13.5 디지털 온도계로 온도 판독하기 _ 541
13.6 2개의 배선만으로 4개의 7세그먼트 LED 구동하기 _ 547
13.7 I2C 포트 확장기 통합하기 _ 551
13.8 SPI를 사용하여 멀티 7세그먼트 디스플레이 구동하기 _ 554
13.9 2개 이상의 아두이노 보드끼리 통신하기 _ 558

Chapter 14 무선 통신 _ 563
14.0 소개 _ 563
14.1 저가형 무선 모듈을 사용하여 메시지 보내기 _ 564
14.2 ZigBee 또는 802.15.4 네트워크에 아두이노 연결하기 _ 571
14.3 특정 XBee에 메시지 보내기 _ 579
14.4 XBee 간에 센서 데이터 보내기 _ 582
14.5 XBee에 연결된 액츄에이터 활성화하기 _ 589
14.6 저가형 트랜시버를 사용하여 메시지 보내기 _ 595
14.7 블루투스 장치와 통신하기 _ 602

Chapter 15 이더넷과 네트워킹 _ 607
15.0 소개 _ 607
15.1 이더넷 쉴드 설정하기 _ 611
15.2 자동으로 IP 주소받기 _ 614
15.3 호스트 이름으로 IP 주소 찾기(DNS) _ 616
15.4 웹 서버 데이터 요청하기 _ 618
15.5 XML을 사용하여 웹 서버 데이터 요청하기 _ 624
15.6 아두이노를 웹 서버로 설정하기 _ 628
15.7 수신 웹 요청 처리하기 _ 631
15.8 특정 페이지에 대한 수신 요청 처리하기 _ 634
15.9 HTML을 사용하여 웹 서버 응답 형식 지정하기 _ 640
15.10 폼을 사용하여 웹 페이지 제공하기(POST) _ 645
15.11 대용량 웹 페이지 제공하기 _ 648
15.12 트위터 메시지 보내기 _ 657
15.13 간단한 메시지 보내고 받기(UDP) _ 662
15.14 인터넷 타임 서버에서 시간 받아오기 _ 670
15.15 Pachube 피드 모니터링하기 _ 676
15.16 Pachube에 정보 보내기 _ 683

Chapter 16 라이브러리 사용, 수정 및 만들기 _ 689
16.0 소개 _ 689
16.1 내장 라이브러리 사용하기 _ 690
16.2 써드파티 라이브러리 설치하기 _ 692
16.3 라이브러리 수정하기 _ 694
16.4 고유 라이브러리 만들기 _ 699
16.5 다른 라이브러리를 사용하는 라이브러리 만들기 _ 706
16.6 아두이노 1.0용 써드파티 라이브러리 업데이트하기 _ 713

Chapter 17 고급 코딩 및 메모리 처리 _ 715
17.0 소개 _ 715
17.1 아두이노 빌드 프로세스 이해하기 _ 717
17.2 사용 중인 RAM 용량 및 여유 공간 확인하기 _ 721
17.3 프로그램 메모리에 숫자 값 저장 및 검색하기 _ 723
17.4 프로그램 메모리에 문자열 저장 및 검색하기 _ 727
17.5 정수 대신 #define 및 const 사용하기 _ 730
17.6 조건부 컴파일 사용하기 _ 731

Chapter 18 컨트롤러 칩 하드웨어 사용하기 _ 735
18.0 소개 _ 735
18.1 영속적 EEPROM 메모리에 데이터 저장하기 _ 740
18.2 하드웨어 인터럽트 사용하기 _ 745
18.3 타이머 기간 설정하기 _ 748
18.4 타이머 펄스 폭 및 기간 설정하기 _ 751
18.5 펄스 생성기 만들기 _ 755
18.6 타이머의 PWM 주파수 변경하기 _ 759
18.7 펄스 카운트하기 _ 762
18.8 정확하게 펄스 측정하기 _ 764
18.9 빠르게 아날로그 값 측정하기 _ 768
18.10 배터리 소모량 줄이기 _ 770
18.11 빠르게 디지털 핀 설정하기 _ 772
18.12 프로그래머로 스케치 업로드하기 _ 776
18.13 아두이노 부트로더 교체하기 _ 778
18.14 Uno를 리프로그래밍하여 네이티브 USB 장치 에뮬레이트하기 _ 779

APPENDIX A 전자 부품 _ 785
APPENDIX B 스키마 다이어그램과 데이터 시트 사용하기 _ 791
APPENDIX C 회로 구축 및 연결하기 _ 799
APPENDIX D 소프트웨어 문제 해결을 위한 팁 _ 803
APPENDIX E 하드웨어 문제 해결을 위한 팁 _ 809
APPENDIX F 디지털 및 아날로그 핀 _ 813
APPENDIX G ASCII 및 확장 문자 세트 _ 819
APPENDIX H 아두이노 1.0으로 마이그레이션하기 _ 825

찾아보기 _ 831

책 속으로

독자 여러분은 이 책을 통해 어떤 상상의 나래를 펼치실지 궁금합니다. 진공청소기에 아두이노를 연결해서 시중에 나와 있는 것보다 더 깨끗이 청소해 주는 로봇 청소기를 만들어 보면 어떨까요? 부질없는 상상이 될 수도 있겠지만, 그 상상이 우리에게 활력소가 되고 발전의 원동력이 될 수도 있을 것입니다. 기초적인 사용법부터 무선 네트워크에 이르기까지 아두이노의 다양한 기능을 잘 설명해 주는 이 책에 여러분의 상상력이 더해진다면 정말 멋진 결과물을 얻을 수 있을 것입니다. 여러분도 이 책을 통해 그 기쁨을 마음껏 누리실 수 있기를 바래봅니다... 더보기

출판사 서평

아두이노 프로젝트의 시작과 확장 그리고 발전을 도와주는 풍부한 레시피 수록!
아두이노 1.0 기반, 1.x 지원!

실제 세상과 상호 작용할 수 있는 장치를 만들고 싶은가? 유명한 아두이노 마이크로컨트롤러 및 프로그래밍 환경을 사용하려는 모든 사람에게 가장 적합한 이 책에는 접촉, 소리, 위치, 열 및 빛을 감지하여 반응할 수 있는 장난감, 감지기, 로봇 및 인터랙티브 의상과 같은 다양한 오브젝트와 프로토타입을 만드는 데 도움이 되는 200가지 이상의 팁과 기술이 담겨 있다.

아두이노나 프로그래밍에 대한 경험이 없는 초보... 더보기

Klover 리뷰 (0)

북로그 리뷰 (1) 전체보기 쓰러가기

북로그 리뷰는 본인 인증 후 작성 가능합니다.
책이나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 내용은 비공개 처리 될 수 있습니다.
※ 북로그 리뷰 리워드 제공 2021. 4. 1 종료
  • 업무상 아두이노를 하게 되어 대형서점에 가서 무작정 앉아 고르고 고른 책입니다. 두께가 두꺼워 입문자에게는 적절치 않으나, 두고두고 볼 수 있도록 여러분야에 걸쳐 잘 정리되어 있습니다.   아두이노 코딩은 아두이노를 쓰기에는 무리가 없지만, 일부분 마이크로프로세서인 ATmega328에 대해서 C언어(레지스터제어)에 대해서도 일부 다루고 있어서 아두이노 언어에서는 부족한 부분을 보완했습니다. 또한 회로도 그리는 도구(fritzing)라던지, 그림을 그리는 프로세싱언어에 대해서도 일부 다루고 있습니다. 부록도 ... 더보기

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매 후 문장수집 작성 시, 리워드를 제공합니다. 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함
바로가기
  • 우측 확장형 배너 2
  • 우측 확장형 배너 2
최근 본 상품