마이크로프로세서는 전기·전자 산업 및 실생활 가전 분야에서 사용되는 중요 부품 중 하나이다. 1970년대 이후 다양한 종류의 마이크로프로세서가 개발되어 왔고, 마이크로컨트롤러급에서는 Microchip(AVR, PIC 시리즈), Renesas(RL78 시리즈), ST(STM 시리즈)社의 제품이 주류를 이루고 있다. 근래에는 AVR을 기반으로 하는 아두이노가 사물인터넷 등의 활성화로 사용층이 확대되었다. 아두이노는 하드웨어의 표준화를 통해, 하드웨어 동작 프로그램을 오픈 소스 기반으로 라이브러리화하여 전기·전자 분야의 깊은 전공 지식이 없이도 쉽게 다룰 수 있다. 이 덕분에 아두이노의 사용층이 확산되었는데, 이는 아두이노의 탄생 자체가 비 전기·전자 분야에서 융합적인 시도에서 비롯되었기 때문이다. 그러나 전기·전자 분야에서 마이크로컨트롤러를 제대로 다루기 위해서는 마이크로컨트롤러 내부 구조와 기능을 이해하여 제어하고자 하는 회로에 적합하게 프로그램을 만들 수 있는 능력이 필요하다. 이러한 관점에서 이 책에서 다루는 ATmega128은 마이크로컨트롤러를 이해하고 응용하는 법을 배우는데 부족함이 없으리라 생각한다.
이 책의 특징과 구성
이 책은 Atmel社(2016년에 Microchip社에 인수됨)에서 개발한 AVR 계열 마이크로컨트롤러인 ATmega128의 효과적인 학습을 위해 제작된 것으로 다년간의 마이크로프로세서 및 마이크로컨트롤러 강의를 하면서 느껴왔던 점들을 고려하여 집필하였다. 마이크로컨트롤러에 처음 입문하는 학생들의 눈높이를 고려하여 실험 예제를 단순화하였고, 학생들의 이해력을 높이기 위해 단계별로 예제를 구성하였으며, 예제 설명을 세밀히 다루었다. 또한, 강의자 입장에서도 보다 효과적인 강의 전달과 진행이 되도록 구성하였다. 예제 프로그램에서 사용하는 C 언어 문법 수준도 약간의 문법만 알면 이해되도록 하였다. 이 책의 구성은 다음과 같다. - 1장에서는 마이크로프로세서 및 마이크로컨트롤러 학습을 위한 개념, 용어 이해 및 기초 지식에 대해 설명한다. - 2장에서는 AVR 마이크로컨트롤러의 종류 및 소개와 ATmega128의 특징, 구조 및 기능에 대해 설명한다. - 3장에서는 예제 실험을 위한 실험 보드인 TPK-128 V3.0 보드의 하드웨어 회로 및 설정 방법에 대해 소개한다. - 4장에서는 ATmega128 동작을 위한 소프트웨어 환경 및 사용법을 설명한다. - 5장에서는 ATmega128의 I/O 포트 구조 및 기능을 설명하고 LED 및 7-Segment 회로를 통해 실험 예제를 다룬다. - 6장에서는 캐릭터 LCD의 구현 방법과 I/O 포트에서 LCD에 원하는 데이터를 원하는 형식대로 표시하는 방법을 실험 예제를 통해 다룬다. - 7장부터 외부 인터럽트, 타이머/카운터, UART, A/D 변환기, SPI 직렬 통신, TWI 직렬 통신 등의 ATmega128 기능을 설명하고 예제를 통해 각각의 기능 구현 및 동작 방법을 다룬다.