스크랩

구간

아두이노 바이블 vol. 1 아두이노 기초 편 상상이 현실이 되는 마법 스케치

허경용 저 | 제이펍 | 2021년 06월

미리보기 북트리

정가
$44.00
판매가
$35.64 (19%↓) 최저가 보상
적립금
$0.71 (2%P)
출고예상일
2026년 10월 09일 수령예상일 안내
북카트 담기 바로구매하기 위시리스트담기

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9791191600025 / 416쪽 188 x 245 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

  • 25,200
  • 17,550
  • 21,420
  • 23,400

책 소개

반디앤루니스 리뷰

아두이노로 상상할 수 있는 A부터 Z까지!

《아두이노 바이블》 제1권 ‘아두이노 기초 편’은 총 17개의 장을 통해 아두이노란 무엇인지, 아두이노를 사용하기 위해 알아야 할 것들이 무엇인지, 그리고 아두이노로 무엇을 할 수 있는지를 설명한다.

출판사 리뷰

1권 '아두이노 기초 편'의 주요 내용 CHAPTER 1 아두이노란 무엇인가? _ 아두이노가 만들어진 배경과 아두이노의 하드웨어 및 소프트웨어 특징을 통해 아두이노가 무엇인지 알아본다. CHAPTER 2 마이크로컨트롤러란 무엇인가? _ 아두이노 보드의 핵심이라 할 수 있는 마이크로컨트롤러의 구조와 동작 방식, 마이크로컨트롤러를 위한 프로그램을 작성하는 방법 등 마이크로컨트롤러를 이해하는 데 필요한 기본적인 내용을 살펴본다. CHAPTER 3 마이크로컨트롤러를 위한 메모리 _ 마이크로컨트롤러에서 사용되는 메모리를 중심으로 다양한 메모리의 종류와 용도를 알아본다. CHAPTER 4 아두이노 우노 _ 아두이노 우노를 구성하는 다양한 부품들을 통해 아두이노 보드의 구성과 특징을 살펴보고, 이들 부품이 아두이노 우노의 ATmega328 마이크로컨트롤러와 어떻게 연결되어 있는지 알아본다. CHAPTER 5 아두이노 개발환경 설정 _ 아두이노 프로그램의 설치 및 사용 방법과 온라인에서 아두이노 스케치를 작성할 수 있는 웹 데이터 사용 방법을 알아본다. CHAPTER 6 디지털 데이터 출력 _ 마이크로컨트롤러를 위한 일반적인 C/C++ 프로그램의 구조를 살펴보고, 이를 좀 더 직관적으로 이해할 수 있도록 만들어진 스케치의 구조와 비교해 본다. CHAPTER 7 부트로더와 스케치 업로드 _ 아두이노 보드에 스케치를 업로드하는 방법과 스케치 업로드 과정에서 부트로더의 역할을 알아본다. CHAPTER 8 아두이노 기본 클래스 _ 헤더 파일을 포함하지 않고 사용할 수 있는 아두이노의 기본 클래스인 Serial 클래스와 String 클래스의 사용 방법을 알아본다. CHAPTER 9 아두이노를 위한 C/C++ 언어 _ 스케치를 작성하는 데 필요한 C 언어의 기본 문법과 C++ 언어의 클래스에 대해 알아본다. CHAPTER 10 아두이노를 위한 전자공학 _ 아두이노와 함께 사용되는 전자 부품을 이해하는 데 필요한 전자공학의 기본 원리와 제어 장치를 구성하기 위한 전자 부품의 활용 방법을 알아본다. CHAPTER 11 하드웨어 시리얼과 소프트웨어 시리얼 _ 하드웨어와 소프트웨어로 지원되는 UART 통신을 비교해 보고, UART 통신을 사용하여 상호 작용이 가능한 스케치를 작성하는 방법을 살펴본다. CHAPTER 12 디지털 데이터 출력 _ 아두이노의 데이터 핀으로 1비트 데이터를 출력하는 방법을 LED를 사용하여 알아본다. CHAPTER 13 디지털 데이터 입력 _ 비트 단위의 디지털 데이터 입력을 위해 사용할 수 있는 가장 간단한 입력 장치인 푸시 버튼을 통해 디지털 데이터를 입력하는 방법과 디지털 데이터 입력에서 주의할 점을 알아본다. CHAPTER 14 아날로그 데이터 입력 _ 아날로그 데이터를 디지털 데이터로 변환하여 입력하고 이를 활용하는 방법을 알아본다. CHAPTER 15 아날로그 데이터 출력 _ PWM 신호 출력 방법과 이를 통해 아날로그 신호와 비슷한 효과를 얻는 방법을 알아본다. CHAPTER 16 아두이노 라이브러리 _ 아두이노 라이브러리의 구조와 사용 방법을 알아본다. CHAPTER 17 멀티 태스킹: 다중 작업 처리 구조 _ 아두이노에서 여러 가지 작업을 동시에 처리하는 방법들을 알아본다.

저자 소개

  • 저자 : 허경용
저자 : 허경용
연세대학교 전자공학과 학사와 동(同) 대학원 석사를 취득하였다. 이후 플로리다대학교(University of Florida)에서 컴퓨터공학 박사를 취득하였으며, 현재 동의대학교 전자공학과 교수로 재직 중이다. 저서로는 《허교수의 ARM Mbed 프로그래밍 입문》(2019), 《따라 하면서 배우는 마이크로컨트롤러》(2019), 《사물인터넷을 위한 ESP8266 프로그래밍》(2017), 《ATmega128로 배우는 마이크로컨트롤러 프로그래밍》(2016), 《따라 하면서 배우는 아두이노》(2016), 《사물인터넷을 품은 아두이노》(2016), 《아두이노 상상을 스케치하다》(2014) 등 11종이 있다.

책 속에서

아두이노는 비전공자들이 쉽게 전자 장치를 만들 수 있도록 해주는 플랫폼으로 시작하여 전공자는 물론 산업 현장에서도 사용하는 마이크로컨트롤러 플랫폼으로 확고히 자리 잡고 있다. 아두이노는 복잡하고 어려운 부분을 추상화를 통해 감춤으로써 쉽게 마이크로컨트롤러를 시작할 수 있도록 해준다는 점이 장점이며, 이를 오픈 소스로 공개함으로써 수많은 참여자로 이루어지는 생태계를 구축하고 자율적인 선순환 구조를 만들 수 있었다는 점이 지금까지도 아두이노의 인기가 식지 않는 이유라 하겠다. _19쪽

변경 사항을 저장한 후 탐색기를 열어 ProjectTest 스케치의 디렉터리 구조를 확인해 보자. 먼저 스케치북 디렉터리 아래에 있는 ‘ProjectTest’라는 이름의 디렉터리를 확인할 수 있다. 그 아래에 ProjectTest.ino 파일이 만들어진 것까지는 이전과 같다. 여기에 새로 추가된 탭에 해당하는 functions.ino 파일이 새로 만들어진다. _87쪽

배열을 초기화할 때는 저장하고자 하는 문자열을 저장하기에 충분한 크기로 배열의 크기가 정해져야 한다는 점을 주의해야 한다. 배열을 이용하여 문자열을 저장할 때 문자열 끝에는 항상 널 문자(NULL, 0, ‘\0’)가 문자열의 끝을 표시하기 위해 추가된다. 따라서 배열의 크기는 문자열의 길이보다 최소한 1 크게 정해야 한다. _160쪽

COM3 포트를 통해 스케치 11.1을 업로드하자. 스케치 11.1은 2개의 시리얼 모니터 사이에서 데이터를 주고받는 예다. 하나의 시리얼 모니터에 입력한 내용이 다른 시리얼 모니터의 출력으로 나오는지 확인해 보자. _244쪽

지금까지 살펴본 데이터는 모두 디지털 데이터였다. LED에 불을 켜거나 끄는 데이터, 스위치가 눌렸거나 눌리지 않은 데이터는 물론이거니와 UART 통신을 통해 컴퓨터로 전송되는 데이터 역시 HIGH(1) 또는 LOW(0)의 디지털 데이터를 바탕으로 하고 있다. 마이크로컨트롤러는 디지털 컴퓨터의 일종으로 디지털 데이터만 처리할 수 있다. _302쪽

설치된 라이브러리는 스케치북 디렉터리 아래 ‘libraries’ 디렉터리에 설치된다. 스케치북 디렉터리를 ‘D:\Arduino’라고 가정하면 원형 버퍼 라이브러리는 그림 16.11과 같이 ‘D:\Arduino\libraries\CircularBuffer’ 디렉터리에 설치된다. _349쪽

목차

vol.1 아두이노 기초 편
머리말 x / 장별 주요 내용 xii / 장별 부품 목록 xvi / 베타리더 후기 xvii

CHAPTER 1 아두이노란 무엇인가? 1
1.1 아두이노의 역사 3
1.2 아두이노 보드 5
1.3 소프트웨어 개발환경 11
1.4 아두이노의 미래 17
1.5 맺는말 19
연습문제 20

CHAPTER 2 마이크로컨트롤러란 무엇인가? 21
2.1 마이크로컨트롤러란 무엇인가? 23
2.2 마이크로프로세서와 마이크로컨트롤러의 차이는 무엇인가? 24
2.3 마이크로컨트롤러는 어디에 사용할 수 있는가? 31
2.4 프로그램은 어떻게 만들어지는가? 34
2.5 마이크로컨트롤러가 꼭 필요한가? 36
2.6 맺는말 38
연습문제 40

CHAPTER 3 마이크로컨트롤러를 위한 메모리 41
3.1 마이크로컨트롤러의 메모리 42
3.2 ROM과 RAM 45
3.3 ROM의 종류 46
3.4 RAM의 종류 49
3.5 맺는말 50
연습문제 52

CHAPTER 4 아두이노 우노 53
4.1 전원 공급 54
4.2 핀 헤더 56
4.3 마이크로컨트롤러 60
4.4 ATmega328 63
4.5 LED 66
4.6 맺는말 67
연습문제 68

CHAPTER 5 아두이노 개발환경 설정 69
5.1 아두이노 프로그램 설치 71
5.2 아두이노 프로그램 사용 77
5.3 아두이노 프로그램의 소스 관리 85
5.4 웹 에디터 89
5.5 맺는말 93
연습문제 95

CHAPTER 6 디지털 데이터 출력 97
6.1 마이크로컨트롤러를 위한 프로그램 98
6.2 스케치의 구조 101
6.3 스케치 컴파일 104
6.4 맺는말 109
연습문제 110

CHAPTER 7 부트로더와 스케치 업로드 111
7.1 스케치 업로드 방법 112
7.2 부트로더 113
7.3 부트로더 굽기 115
7.4 ISP 방식 업로드 120
7.5 맺는말 122
연습문제 124

CHAPTER 8 아두이노 기본 클래스 125
8.1 UART 시리얼 통신 126
8.2 시리얼 모니터 130
8.3 Serial 클래스 132
8.4 String 클래스 139
8.5 맺는말 147
연습문제 149

CHAPTER 9 아두이노를 위한 C/C++ 언어 151
9.1 C/C++ 언어 테스트 환경 152
9.2 데이터 타입 154
9.3 연산자 164
9.4 제어문 178
9.5 배열 183
9.6 포인터 187
9.7 함수 192
9.8 클래스 194
9.9 맺는말 199
연습문제 201

CHAPTER 10 아두이노를 위한 전자공학 203
10.1 전류, 전압, 전력 205
10.2 저항 210
10.3 커패시터 215
10.4 반도체 218
10.5 다이오드 220
10.6 트랜지스터 224
10.7 집적회로 229
10.8 브레드보드 231
10.9 그라운드 235
10.10 맺는말 236
연습문제 238

CHAPTER 11 하드웨어 시리얼과 소프트웨어 시리얼 239
11.1 SoftwareSerial 241
11.2 터미널 프로그램: CoolTerm 249
11.3 시리얼 통신을 이용한 게임 252
11.4 맺는말 258
연습문제 259

CHAPTER 12 디지털 데이터 출력 261
12.1 마이크로컨트롤러의 데이터 입출력 262
12.2 블링크 264
12.3 LED 제어 266
12.4 바이트 단위 디지털 데이터 출력 273
12.5 시리얼 모니터로 LED 제어 274
12.6 맺는말 279
연습문제 280

CHAPTER 13 디지털 데이터 입력 281
13.1 풀업 저항과 풀다운 저항 283
13.2 푸시 버튼을 사용한 데이터 입력 287
13.3 버튼을 누른 횟수 세기 294
13.4 맺는말 298
연습문제 300

CHAPTER 14 아날로그 데이터 입력 301
14.1 아날로그-디지털 변환 303
14.2 아날로그값 읽기 307
14.3 조이스틱 314
14.4 AVCC는 5V인가? 316
14.5 맺는말 320
연습문제 322

CHAPTER 15 아날로그 데이터 출력 323
15.1 펄스 폭 변조 325
15.2 LED 밝기 조절 329
15.3 RGB LED 334
15.4 맺는말 338
연습문제 339

CHAPTER 16 아두이노 라이브러리 341
16.1 기본 라이브러리 342
16.2 확장 라이브러리 348
16.3 블링크 라이브러리 만들기 355
16.4 맺는말 359
연습문제 360

CHAPTER 17 멀티 태스킹: 다중 작업 처리 구조 361
17.1 다중 작업의 처리 구조 362
17.2 delay 함수의 한계 363
17.3 millis 함수 369
17.4 millis 함수를 사용한 다중 작업 처리 스케치 작성 373
17.5 Ticker 라이브러리 376
17.6 TimerOne 라이브러리 379
17.7 외부 인터럽트 383
17.8 맺는말 385
연습문제 387

찾아보기 390

top