서브메뉴

본문

마이크로프로세서 실습 (ATmega 128을 중심으로)
마이크로프로세서 실습 (ATmega 128을 중심으로)
저자 : 박양수|문태정|조용성
출판사 : 형설출판사
출판년 : 2020
정가 : 29000, ISBN : 9788947283946

책소개


전자공학 분야의 혁신적인 도약의 기본은 반도체 기술의 발전과 회로설계 기술 및 집적화 기술의 발전에 기인한다. 이러한 기술을 개발하기 위하여 필요한 분야 중에서 마이크로프로세서는 전자공학에서 가장 중요한 실습이며, 이와 같은 실험실습은 학교나 산업체 모두가 중요성을 인식하고 있다. 이 책은 전기·전자·통신·제어계통의 학생들이면 누구나 사용할 수 있도록 ATmega 128 마이크로프로세서 칩(Chip)을 가지고 실험실습 내용을 단계별로 구성하였고, 학습자 관점에서 내용을 정리하여 수록하였다.

목차


제0장 장비 설명 / 13
1 MP-1820 ······························15
1-1 장비 구성도 / 15
1-2 장비 매뉴얼 / 16

제1장 C언어 / 17
1 C언어란? ································19
1-1 왜 C언어인가? / 19
1-2 C언어의 장점 / 21
1-3 C program & C Language / 21
2 데이터 유형 ······························23
2-1 정수 데이터 유형 / 23
2-2 실수 데이터 유형 / 24
2-3 문자 데이터 유형 / 25
2-4 기본 입출력 / 27
3 연산자 ··································30
3-1 산술 연산자 / 30
3-2 할당 연산자 / 31
3-3 관계 연산자 / 32
3-4 논리 연산자 / 33
3-5 조건 연산자 / 34
3-6 비트 연산자 / 35
3-7 콤마 연산자 / 36
3-8 Sizeof 연산자 / 37
4 제어구조와 루프 ··························39
4-1 if 문 / 39
4-2 while 문과 do while 문 / 40
4-3 for 문 / 41
4-4 switch 문과 break / 43
4-5 exit, continue와 goto 문 / 44
5 함수 ····································48
5-1 함수의 정의와 호출 / 48
5-2 함수의 선언 / 50
5-3 함수의 재귀 호출 / 53
6 포인터 ··································55
6-1 포인터 변수의 정의 / 55
6-2 ‘&’ 연산자 / 56
6-3 ‘*’ 연산자 / 57
6-4 포인터를 이용한 참조에 의한 호출 / 58
6-5 포인터 연산 / 59
7 배열 ····································61
7-1 1차원 배열 / 61
7-2 다차원 배열 / 63
7-3 배열과 포인터 / 66
7-4 이중 포인터 / 68
7-5 void형 포인터 / 69
7-6 함수 포인터 / 71
8 구조 데이터 유형 ·························73
8-1 구조체 변수(Structure Variables) / 73
8-2 공용체(Union) / 75

제2장 ATmega 기초 / 77
1 Microprocessor ·······················77
1-1 마이크로프로세서란? / 79
1-2 마이크로프로세서의 역사 / 80
1-3 마이크로프로세서의 일반적 특징 / 82
2 Microprocessor의 구조와 기능 ··········84
2-1 마이크로프로세서의 구성 / 84
2-2 CPU의 구조 / 85
2-3 기억 장치 / 86
3 AVR의 특징 ·····························88
3-1 AVR의 특징 / 88
3-2 ATmega 128의 특징 / 90
3-3 Block Diagram 및 Pin / 91
4 ATmega 128의 Pin 기능 ···············94
4-1 ATmega 128의 Pin 기능 / 94
5 ATmega 128의 주요 레지스터 및 인터럽트 처리
····································102
5-1 상태 레지스터 (Status Register) - SREG / 102
5-2 MCU 제어 레지스터 - MCUCR / 103
5-3 외부 인터럽트 마스크 레지스터 - EIMSK / 105
5-4 외부 인터럽트 플래그 레지스터 - EIFR / 105
5-5 타이머/카운터 인터럽트 마스크 레지스터 - TIMSK / 106
5-6 타이머/카운터 인터럽트 플래그 레지스터 - TIFR / 107
5-7 리셋과 인터럽트 처리 / 108
5-8 리셋 소스 및 종류 / 110
6 입출력 포트 ·····························111
6-1 포트 A (Port A) / 111
6-2 포트 B (Port B) / 113
6-3 포트 C (Port C) / 115
6-4 포트 D (Port D) / 116
6-5 포트 E (Port E) / 118
6-6 포트 F (Port F) / 120
6-7 포트 G (Port G) / 121
7 시리얼 통신 ·····························124
7-1 USARTn I/O 데이터 레지스터 - UDRn / 124
7-2 USARTn 제어 및 상태 레지스터 A - UCSRnA / 125
7-3 USARTn 제어 및 상태 레지스터 B - UCSRnB / 126
7-4 USARTn 제어 및 상태 레지스터 C - UCSRnC / 128
7-5 USART 보레이트 레지스터 - UBRRnL과 UBRRnH / 130
8 ADC ··································133
8-1 ADC 멀티프렉서 선택 레지스터 - ADMUX / 133
8-2 ADC 제어/ 상태 레지스터 - ADCSRA / 134
9 8비트 타이머/카운터 ·····················136
9-1 8비트 타이머 카운터 제어 레지스터 - TCCR0 / 136
9-2 타이머 카운터 레지스터 - TCNT0 / 138
9-3 출력 비교 레지스터 - OCR0 / 139
9-4 타이머/카운터 인터럽트 마스크 레지스터 - TIMSK / 139
9-5 타이머/카운터 인터럽트 플래그 레지스터 - TIFR / 140
9-6 특수 기능의 I/O 레지스터 - SFIOR / 140
9-7 타이머값을 설정하는 방법(10ms, 16Mhz, 8분주) / 141
10 AVR 개발 툴 사용법 ····················142
10-1 CodeVisionAVR C Compiler의 설치 / 142
10-2 CodeVisionAVR C Compiler의 사용법 / 148

제3장 ATmega 실험 실습 / 157
1 LED ···································159
1-1 LED / 159
2 SWITCH ······························187
2-1 SWITCH / 187
3 FND ··································207
3-1 FND / 205
4 Character LCD ······················221
4-1 CLCD / 221
4-2 CLCD 타이밍 차트 / 224
4-3 CLCD 명령 차트 / 225
4-4 CLCD 문자 코드 / 236
5 KEY MATRIX ·························242
5-1 KEY MATRIX / 242
6 시리얼 통신 ····························249
6-1 시리얼 통신 / 249
7 SENSOR ······························263
7-1 SENSOR / 263
7-2 광센서 / 264
7-3 온도센서 / 267
7-4 적외선(IR) 센서 / 272
7-5 초음파 센서 / 275
7-6 PSD / 276
8 DC MOTOR ···························317
8-1 DC MOTOR / 317
8-2 DC 모터 구동 / 320
9 STEPPING MOTOR ····················361
9-1 STEPPING MOTOR / 361
9-2 STEPPING MOTOR 종류 / 361
9-3 STEPPING MOTOR 결선 방식 / 363
9-4 STEPPING MOTOR 구동 방식 (유니폴라형) / 364
9-5 STEPPING MOTOR 특징 / 367
10 SERVO MOTOR ······················377
10-1 SERVO MOTOR / 377
11 ADC ································386
11-1 ADC 멀티프렉서 선택 레지스터 - ADMUX / 386
11-2 ADC 제어/ 상태 레지스터 - ADCSRA / 388
12 Bluetooth ···························397
12-1 Bluetooth / 397 12-2 Bluetooth 원리 / 400
12-3 FB155BC / 401 12-4 Bluetooth 연결 / 403
13 WIFI ·································411
13-1 ESP8266 / 411
13-2 WIFI 연결 / 415