본문 바로가기

도서 소개

ATmega128로 배우는 마이크로컨트롤러 프로그래밍

마이크로컨트롤러의 이해와 활용을 위한 친절한 커리큘럼!

ATmega128로 마이크로컨트롤러 시작하기!

 

출판사 제이펍

지은이 허경용

출판일 2016년 11월 25일

페이지 752쪽

시리즈 테크러닝 시리즈 03

판 형 46배판변형(188*235*35)

제 본 무선(soft cover)

정 가 33,000원

ISBN 979-11-85890-69-2 (93560)

키워드 마이크로컨트롤러 / 사물인터넷(IoT) / ATmega128 / ATmega / Atmega 128 /C 언어 / 아두이노

분 야 하드웨어 / 마이크로컨트롤러

관련 사이트

저자 운영 카페

 

관련 포스트

2016/11/17 - [출간전 책소식] - 제대로 만든 ATmega128 마이크로컨트롤러 교과서

 

관련 시리즈

Tech Learning(테크 러닝) 시리즈

I♥Robot(아이러브로봇) 시리즈

 

관련 도서

관련 파일 다운로드

■ + 기호로 표시된 연습문제 해답

ATmega128로배우는마이크로컨트롤러_연습문제해답.pdf
다운로드

예제 코드

저자 제공 이미지(교정 전 이미지라 책과 다소 다를 수 있습니다.)

 

 

강의보조 자료

교재로 채택하신 분들은 메일을 보내주시면 아래의 자료를 보내드리겠습니다: jeipubmarketer@gmail.com

■ 강의교안(ppt)

■ 본문의 그림과 표

■ 연습문제 해답(+ 기호로 표시된 문제만 해답 제공)

 

샘플 PDF(차례, 강의를 위한 안내, 머리말, 장별 안내, 베타리더 후기, 1장 마이크로컨트롤러, 2장 ATmega128 소개)

ATmega128로배우는마이크로컨트롤러프로그래밍_sample.pdf
다운로드

 

정오표 페이지

http://jpub.tistory.com/676

 

도서구매 사이트(가나다순)

[강컴] [교보문고] [도서11번가] [반디앤루니스] [알라딘] [예스이십사] [인터파크]

 

도서 소개

마이크로컨트롤러의 이해와 활용을 위한 친절한 커리큘럼!

ATmega128로 마이크로컨트롤러 시작하기!

 

이 책은 아트멜의 AVR 시리즈 마이크로컨트롤러 중 하나인 ATmega128을 이해하고 활용하는 방법을 다룬다. ATmega128은 간단한 하드웨어 구조와 프로그래밍 방식으로, 대표적인 8비트 마이크로컨트롤러의 하나로 자리매김하고 있다. 이 책을 통해 독자는 ATmega128 마이크로컨트롤러와 친숙해짐은 물론, 다른 종류의 마이크로컨트롤러를 이해하고 응용할 수 있는 기반을 마련할 수 있으며, 마이크로컨트롤러를 통해 주변 환경과 상호 작용하는 방법을 발견할 수 있을 것이다.

 

이 책에서 다루는 내용

  • ATmega128 프로그래밍 준비하기

ATmega128을 이해하고, ATmega128을 위한 프로그램을 작성하기 위해 필요한 하드웨어 및 소프트웨어에 대해 알아본다.

 

  • ATmega128 프로그래밍 시작하기

디지털 및 아날로그 데이터 입출력 방법, 다양한 시리얼 통신 방법, 8비트 및 16비트 타이머/카운터, 인터럽트 처리 등 ATmega128에서 제공하고 있는 기본 기능을 알아본다.

 

  • ATmega128 활용하기

ATmega128과 함께 흔히 사용되는 7세그먼트, 텍스트 LCD, 모터, 센서, 블루투스 등 다양한 주변장치의 특징과 사용 방법을 알아본다.

 

저자 소개

허경용

연세대학교 전자공학과 학사와 동(同)대학원 석사를 취득하였다. 이후 플로리다대학교(University of Florida)에서 컴퓨터공학 박사를 취득하였으며, 현재 동의대학교 전자공학과 교수로 재직 중이다. 저서로는 《따라 하면서 배우는 아두이노》(2016), 《사물인터넷을 품은 아두이노》(2016), 《아트멜 스튜디오와 아두이노로 배우는 ATmega328 프로그래밍》(2015), 《핵심 예제로 배우는 아두이노 프로그래밍》(2015), 《아두이노 상상을 스케치하다》(2014)가 있다.

 

차례

PART I ATmega128 프로그래밍 준비하기

Chapter1 마이크로컨트롤러 3

1.1 마이크로컨트롤러란 무엇인가? 3

1.2 마이크로프로세서와 마이크로컨트롤러 6

1.3 마이크로컨트롤러는 어디에 사용할 수 있을까? 7

1.4 마이크로컨트롤러를 공부하기 위해서는 무엇이 필요할까? 10

1.5 주변장치와 어떻게 데이터를 교환하나? 14

1.6 프로그램은 어떻게 만들어지나? 19

1.7 마이크로컨트롤러가 꼭 필요한가? 21

1.8 마이크로컨트롤러의 CPU vs. 데스크톱 컴퓨터의 CPU 23

1.9 요약 32

연습 문제 33

더보기

Chapter2 ATmega128 소개 34

2.1 AVR 마이크로컨트롤러 34

2.2 ATmega128의 외형적 특징 40

2.3 레지스터 45

2.4 ATmega128의 내부 구조 50

2.5 요약 67

연습 문제 68

Chapter3 개발 환경 설정 69

3.1 아트멜 스튜디오 설치 69

3.2 첫 번째 ATmega128 프로그래밍 72

3.3 요약 86

연습 문제 87

Chapter4 마이크로컨트롤러를 위한 C 언어 88

4.1 C 언어 테스트 환경 89

4.2 프로그램의 기본 구조 94

4.3 마이크로컨트롤러를 위한 C 언어 96

4.4 비트 연산자 117

4.5 요약 127

연습 문제 128

Chapter5 ATmega128 보드 129

5.1 ATmega128 보드의 구성 요소 129

5.2 ATmega128 보드 133

5.3 ATmega128 보드 사용 139

5.4 주변장치 연결 143

5.5 요약 148

연습 문제 149

Chapter6 DIY ATmega128 150

6.1 ATmega128 보드 제작 151

6.2 퓨즈 설정 160

6.3 프로그램 테스트 161

6.4 요약 164

연습 문제 164

PART II ATmega128 프로그래밍 시작하기

Chapter7 디지털 데이터 출력 167

7.1 ATmega128의 데이터 핀 167

7.2 디지털 데이터 출력을 위한 레지스터 169

7.3 블링크 171

7.4 LED 패턴 나타내기 174

7.5 요약 180

연습 문제 180

Chapter8 디지털 데이터 입력 181

8.1 풀업 저항과 풀다운 저항 182

8.2 버튼 입력 186

8.3 버튼으로 LED 시프트하기 191

8.4 디바운스 193

8.5 요약 198

연습 문제 199

Chapter9 UART 시리얼 통신 200

9.1 UART 201

9.2 UART 통신을 위한 레지스터 212

9.3 UART 라이브러리 만들기 221

9.4 문자열 수신 229

9.5 printf와 scanf 함수 사용하기 232

9.6 요약 234

연습 문제 235

Chapter10 아날로그-디지털 변환 236

10.1 ATmega128의 ADC 236

10.2 가변저항 읽기 241

10.3 아날로그-디지털 변환을 위한 레지스터 244

10.4 가변저항으로 LED 제어하기 253

10.5 AVCC는 5V인가? 255

10.6 요약 258

연습 문제 259

Chapter11 아날로그 비교기 260

11.1 아날로그 비교기 260

11.2 아날로그 비교기를 위한 레지스터 263

11.3 2개의 아날로그 입력 비교 267

11.4 요약 268

연습 문제 269

Chapter12 인터럽트 270

12.1 폴링 방식과 인터럽트 방식 270

12.2 인터럽트 272

12.3 인터럽트 처리 275

12.4 인터럽트 사용에서의 주의 사항 281

12.5 외부 인터럽트 284

12.6 요약 290

연습 문제 291

Chapter13 8비트 타이머/카운터 292

13.1 타이머/카운터 292

13.2 오버플로 인터럽트 294

13.3 비교 일치 인터럽트 299

13.4 파형 출력 301

13.5 ASSR 레지스터 306

13.6 실행 시간 알아내기 309

13.7 요약 312

연습 문제 313

Chapter14 16비트 타이머/카운터 314

14.1 16비트 타이머/카운터 314

14.2 오버플로 인터럽트 315

14.3 비교 일치 인터럽트 320

14.4 파형 출력 324

14.5 입력 캡처 329

14.6 요약 333

연습 문제 334

Chapter15 PWM 335

15.1 펄스폭 변조 335

15.2 8비트 타이머/카운터의 PWM 모드 342

15.3 16비트 타이머/카운터의 PWM 모드 347

15.4 PWM을 이용한 LED 밝기 제어 354

15.5 요약 356

연습 문제 357

Chapter16 SPI 358

16.1 SPI 358

16.2 SPI 방식의 EEPROM 363

16.3 요약 378

연습 문제 378

Chapter17 I2C 380

17.1 I2C 380

17.2 DS1307, RTC 칩 384

17.3 요약 401

연습 문제 401

PART III ATmega128 프로그래밍 활용하기

Chapter18 7세그먼트 표시장치 405

18.1 한 자리 7세그먼트 표시장치 405

18.2 네 자리 7세그먼트 표시장치 412

18.3 네 자리 7세그먼트 표시장치에 시간 표시 417

18.4 요약 421

연습 문제 422

Chapter19 디지털 입출력 확장 423

19.1 입출력 확장 423

19.2 74595 칩 425

19.3 74165 칩 431

19.4 MCP23017 436

19.5 요약 441

연습 문제 441

Chapter20 LED 매트릭스 442

20.1 LED 매트릭스 442

20.2 LED 매트릭스 제어 448

20.3 74595 직렬 입력 병렬 출력 이동 레지스터 453

20.4 요약 458

연습 문제 459

Chapter21 키 매트릭스 460

21.1 키 매트릭스 461

21.2 4×4 키 매트릭스 465

21.3 요약 469

연습 문제 470

Chapter22 텍스트 LCD 471

22.1 텍스트 LCD 471

22.2 8비트 모드 텍스트 LCD 제어 475

22.3 4비트 모드 텍스트 LCD 제어 482

22.4 요약 489

연습 문제 490

Chapter23 모터 제어 492

23.1 모터 492

23.2 DC 모터 493

23.3 서보 모터 500

23.4 스텝 모터 504

23.5 요약 515

연습 문제 516

Chapter24 릴레이 517

24.1 릴레이 517

24.2 전기기계식 릴레이 519

24.3 반도체 릴레이 523

24.4 요약 524

연습 문제 524

Chapter25 센서 525

25.1 온도 센서 526

25.2 조도 센서 530

25.3 적외선 거리 센서 533

25.4 초음파 거리 센서 536

25.5 요약 540

연습 문제 541

Chapter26 블루투스 542

26.1 블루투스 모듈 설정 543

26.2 스마트폰 설정 548

26.3 블루투스 통신 552

26.4 요약 553

연습 문제 554

Chapter27 GPS 555

27.1 GPS 555

27.2 NMEA 데이터 분석 559

27.3 요약 565

연습 문제 565

Chapter28 그래픽 LCD 567

28.1 그래픽 LCD 567

28.2 그래픽 LCD 라이브러리 571

28.3 요약 581

연습 문제 582

Chapter29 적외선 통신 584

29.1 적외선 584

29.2 적외선 데이터 포맷 586

29.3 적외선 데이터 디코딩 589

29.4 리모컨으로 LED 제어 593

29.5 요약 595

연습 문제 596

Chapter30 스피커 597

30.1 특정 주파수의 구형파 생성 597

30.2 CTC 모드를 사용한 멜로디 재생 599

30.3 위상 및 주파수 교정 모드를 사용한 멜로디 재생 602

30.4 요약 604

연습 문제 605

Chapter31 EEPROM 606

31.1 EEPROM 레지스터 607

31.2 EEPROM 라이브러리 610

31.3 요약 615

연습 문제 616

Chapter32 워치도그 타이머 618

32.1 워치도그 타이머 618

32.2 워치도그 타이머를 위한 레지스터 621

32.3 워치도그 타이머 사용하기 623

32.4 요약 628

연습 문제 628

Chapter33 퓨즈 비트 630

33.1 하이 퓨즈 631

33.2 로 퓨즈 633

33.3 확장 퓨즈 636

33.4 퓨즈 프로그래밍 637

33.5 요약 639

연습 문제 640

Chapter34 아두이노 641

34.1 아두이노 641

34.2 부트로더 644

34.3 스케치 – 아두이노를 위한 프로그램 647

34.4 아두이노 개발 환경 설치 650

34.5 아두이노 프로그래밍 653

34.6 ISP 방식 스케치 업로드 656

34.7 아두이노 환경에서 ATmega128 사용하기 659

34.8 요약 663

연습 문제 664

부록A ATmega128 레지스터 669

부록B 마이크로컨트롤러를 위한 전자공학 678

미 주 716

찾아보기 720