마이크로프로세서 ATmega128
이 책은 세계적으로 많이 사용되고 있는 Atmel社(Atmel Corporation, http://www.atmel.com)의 마이크로프로세서 ATmega128을 사용하여 시스템을 개발하고자 하는 엔지니어를 위한 참고서로, 대학에서 마이크로프로세서 강의를 하기 위한 교재로 사용하기에 적합하도록 구성되어 있다. 이 책은 Atmel사가 제공한, 아래의 데이터시트 내용을 바탕으로 기술하였으며 필자가 다년간 산업체에서 연구개발 업무를 하면서 경험했던 프로그램 내용과 유의해야 할 사항 등을 가미하였으며 엔지니어 간에 통용되는 용어를 사용하여 프로그램 입문자들이 쉽게 이해할 수 있도록 노력하였다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
마이크로프로세서는 산업 현장에서 사용되는 제어장치에 널리 쓰이고 있는 반도체 소자 중의 하나이다. 이 책은 세계적으로 많이 사용되고 있는 Atmel社(Atmel Corporation, http://www.atmel.com)의 마이크로프로세서 ATmega128을 사용하여 시스템을 개발하고자 하는 엔지니어를 위한 참고서로, 대학에서 마이크로프로세서 강의를 하기 위한 교재로 사용하기에 적합하도록 구성되어 있다.
이 책은 Atmel사가 제공한, 아래의 데이터시트 내용을 바탕으로 기술하였으며 필자가 다년간 산업체에서 연구개발 업무를 하면서 경험했던 프로그램 내용과 유의해야 할 사항 등을 가미하였으며 엔지니어 간에 통용되는 용어를 사용하여 프로그램 입문자들이 쉽게 이해할 수 있도록 노력하였다.
ATmega128 : 8-bit Atmel Microcontroller 128Kbytes In-System Programmable Flash
또한 저자가 집필한 《마이크로프로세서 프로그램 실습 ATmega128》을 병행 사용하여 관련된 장을 《마이크로프로세서 트레이닝 키트 MTKAT8》로 실습하면 효과적인 학습 결과를 얻을 수 있을 것이다.
이 책의 내용
이 책은 전체 3개의 장과 1개의 부록으로 구성되어 있다.
1장에서는 마이크로프로세서의 기초 지식과, ATmega128을 사용하여 프로그램을 개발하기 위해 필요한 개발 환경에 대해 기술하였다.
2장에서는 ATmega128을 사용하기 위해 필수적으로 알아야 할 내용, 즉 CPU 코어, 메모리, 시스템 클럭, 시스템 제어와 리셋, 인터럽트, 타이머/카운터, SPI, USART, TWI, A/D 변환기, 부트로더에 대해 설명하였고, 사용자가 제품 개발 및 실습에 바로 적용할 수 있는 간단한 프로그램을 추가하였다. 독자는 제시된 샘플프로그램을 사용하면, 전 세계적으로 다양한 응용 분야에 많이 사용되고 있는 마이크로프로세서인 ATmega128을 사용한 프로그램 개발에 쉽게 접근할 수 있을 것이다.
3장에서는 필자가 ATmega128을 사용하여 개발한 간단한 시스템에 대해 설명하였다. 프로그램 개발자는 제시된 프로그램을 기본 구조로 설계한다면 초보자라도 쉽게 구조 설계를 할 수 있고 개발 기간도 단축할 수 있을 것이다.
부록에서는 AVR Studio4에 대해 설명하였다. AVR Studio4는 개발자가 완성한 프로그램 코드(HEX 파일)를 마이크로프로세서에 다운로드하기 위한 툴(tool)의 일종이다. 이 툴은 개발자가 반드시 사용법을 익혀야 할 프로그램이다.
목차
목차
1. 마이크로프로세서란?
2. 개발 환경
2-1 프로그램 개발 과정
2-2 프로그램 편집기(Program Editor)
2-3 컴파일러(Compiler)
2-4 코드 프로그래머 AVR Studio4(Code Programmer AVR Studio4)
2-5 소스프로그램 작성
2-6 컴파일과 링크
2-7 디버깅
2-8 프로그램의 유지/보수
연습문제
CHAPTER 02 ATmega128
1. ATmega128의 개요
2. AVR CPU 코어
2-1 ALU(Arithmetic Logic Unit)
2-2 상태레지스터(SREG)
2-3 범용레지스터
2-4 X, Y, Z 레지스터
2-5 스택포인터
2-6 RAMPZ(RAM Page Z select Register)
연습문제
3. AVR ATmega128 메모리
3-1 플래시 프로그램 메모리
3-2 SRAM 데이터 메모리
3-3 EEPROM 데이터 메모리
3-4 입출력 데이터 메모리
3-5 외부 메모리 인터페이스
연습문제
4. 시스템 클럭
4-1 클럭의 종류
4-2 외부 크리스탈 오실레이터
4-3 외부 저주파 크리스탈 오실레이터
4-4 외부 RC 오실레이터
4-5 내부 RC 오실레이터
4-6 외부 클럭
연습문제
5. 전력제어와 슬립모드
5-1 Idle 모드
5-2 A/D 변환기 잡음제거 모드
5-3 파워다운 모드
5-4 파워절약 모드
5-5 대기 모드
5-6 확장 대기 모드
6. 시스템 제어와 리셋
6-1 리셋 종류
6-2 파워온 리셋
6-3 외부 리셋
6-4 브라운아웃 리셋
6-5 워치독(Watchdog) 리셋
6-6 MCU 제어 및 상태레지스터: MCUCSR
6-7 워치독 타이머
연습문제
7. 입출력 포트
7-1 특수기능 입출력 레지스터: SFIOR(Special Function I/O Register)
7-2 방향설정 레지스터: DDR(Data Direction Register)
7-3 포트 레지스터: PORTxn(Port Register)
7-4 포트 입력 핀 레지스터: PINx(Port x Input Pin Register)
7-5 범용 입출력 포트의 부가 기능
7-6 포트A
7-7 포트B
7-8 포트C
7-9 포트D
7-10 포트E
7-11 포트F
7-12 포트G
7-13 입출력 포트용 레지스터
연습문제
8. 인터럽트
8-1 인터럽트 벡터
8-2 외부 인터럽트
연습문제
9. 8비트 타이머/카운터
9-1 8비트 타이머/카운터 개요
9-2 타이머/카운터 동작모드
9-3 타이머/카운터 타이밍도
9-4 타이머/카운터 레지스터
9-5 타이머/카운터의 비동기 동작
9-6 타이머/카운터 프리스케일러
9-7 8비트 타이머/카운터2와 PWM
9-8 출력비교 변조기(OCM1C2)
연습문제
10. 16비트 타이머/카운터
10-1 16비트 타이머/카운터1,3 레지스터
10-2 16비트 레지스터 엑세스
10-3 타이머/카운터 클럭 소스
10-4 동작 모드
10-5 타이머/카운터 타이밍도
10-6 16비트 타이머/카운터 레지스터
10-7 타이머/카운터1,2,3 프리스케일러
연습문제
11. SPI
11-1 마스터모드 동작
11-2 슬레이브모드 동작
11-3 SPI 레지스터
11-4 SPI 클럭 동기
연습문제
12. USART
12-1 USART 개요
12-2 클럭 발생
12-3 USART 초기화
12-4 USART 송신
12-5 USART 수신
12-6 USART 멀티-프로세서 통신모드
12-7 USART 레지스터
12-8 전송속도 설정 예시
연습문제
13. TWI(I2C 통신)
13-1 TWI 모듈 개요
13-2 데이터 전송 파형
13-3 여러 개의 마스터 버스 시스템, 중재와 동기화
13-4 TWI 모듈의 구조
13-5 TWI 레지스터
13-6 TWI 동작
연습문제
14. 아날로그 비교기
14-1 아날로그 비교기의 입력 신호 선택
14-2 레지스터
15. A/D 변환기
15-1 A/D 변환기 기능
15-2 A/D 변환기 동작
15-3 프리스케일링과 변환 시간
15-4 A/D 변환기 레지스터
연습문제
16. 부트로더
16-1 응용프로그램 영역과 부트로더프로그램 영역
16-2 RWW(Read-While-Write) 영역과 NRWW(No Read-While-Write) 영역
16-3 부트로더 락비트(Lock Bits)
16-4 부트로더 프로그램 넣기
16-5 부트로더 프로그래밍
16-6 메모리 프로그래밍
16-7 직렬 다운로드
16-8 JTAG 인터페이스로 프로그래밍 하기
16-9 부트로더 프로그램 예시
CHAPTER 03 ATmega128을 이용한 간단한 전체 프로그램
1. 간단한 전체 프로그램
1-1 회로도
1-2 기능
1-3 프로그램 파일
2. 회로도
3. 프로그램 파일
3-1 헤더 파일
3-2 메인 루틴(main.c)
3-3 clib.c
3-4 eeprom.c
3-5 init.c
3-6 packet_fsk1.c
3-7 packet_fsk2.c
3-8 packet_gui.c
3-9 packet_inter.c
3-10 ST16C554.c
3-11 TWIInit.c
부록 AVR Studio4 사용법
저자
저자
서울대학교 전자공학과 학사
서울대학교 전자공학과 석사
한국방송공사 기술연구소 연구원
서울대학교 전자공학과 박사
현재 동양미래대학교 정보통신과 교수
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.

