AVR ATmega128 소개 AVR ATmega128 IT Eng 학습목표 ü 다양한 AVR 패밀리와소자특징을알아보고, 제어환경에따라 AVR 소자를선택하여개발할수있는융통성을이해할수있다. ü ATmega128 내부구조에서메모리공간, I/O 공간의프로그램과데이터를처리하기

Similar documents
정보보안 개론과 실습:네트워크

AVR ATmega128 소개 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 소속 : 원광대학교전기 정보통신공학부

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

온라인 IT 교육최강 ( 강의정보처리필기강사조대호 차시명 [CA-06 강 ] 프로세서와명령어차시 6 차시 학습내용 프로세서와명령어 학습목표 컴퓨터의구조와프로세서에대해이해할수있다 컴퓨터의명령어에대해이해할수있다 학습내용 1. 컴퓨터의구성 - 1

2주차: 입출력 제어 복습

Microsoft PowerPoint - avr_lecture1.ppt

학습목표 2/33 마이크로프로세서와마이크로컨트롤러의차이를알수있다. 마이크로프로세서에서프로그램이수행되기위한명령어형식과명령어실행절차를알수있다. 프로그램을수행하려면어떤종류의명령어가필요한지알수있다. 현대컴퓨터의기본모델인저장형프로그램컴퓨터의한계점과그한계를완화하려는방법을알수있다.

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고

Microsoft PowerPoint - hy2-12.pptx

마이크로프로세서 개요

학습목차 r 개념으로살펴보는 CPU 속의제어장치 r 마이크로연산 r 제어장치의동작 r 마이크로프로그램을이용한제어 컴퓨터구조 제어장치

Microsoft PowerPoint - hy2-12.pptx

PowerPoint Presentation

Computer Architecture

[ 마이크로프로세서 1] 1 주차 1 차시. 마이크로프로세서개요 1 주차 1 차시마이크로프로세서개요 학습목표 1. 마이크로프로세서 (Microprocessor) 를설명할수있다. 2. 마이크로컨트롤러를성능에따라분류할수있다. 학습내용 1 : 마이크로프로세서 (Micropr

CHAPTER 2 마이크로컨트롤러구조이해하기 가. ATmega128 기능 나. CRX10 구조

학습목차 r 컴퓨터본체에서 CPU 의위치살펴보기 r CPU 의성능 r CPU 의기능 r CPU 의조직 r 레지스터의조직 r 명령어사이클 r 명령어파이프라이닝 컴퓨터구조 2 9. CPU 조직과기능

슬라이드 1

프로그램카운터 (Program Counter) 명령레지스터 (Instruction Register) 누산기 (AC: Accumulator) 상태레지스터 (Status Register) PSWR(Program Status Word Register) 메모리주소레지스터 (M

슬라이드 1

<4D F736F F F696E74202D2037C0E55FC0CEC5CDB7B4C6AEC0C720B5BFC0DB2E707074>

Microsoft Word - PLC제어응용-2차시.doc

AVR Atmega128

Microsoft Word - FunctionCall

ADP-2480

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202831C1D6C2F72C2032C1D6C2F729>

Computer Architecture

PowerPoint 프레젠테이션

[ 마이크로프로세서 1] 1 주차 2 차시. 마이크로프로세서와마이크로컨트롤러발달과정 1 주차 2 차시마이크로프로세서와마이크로컨트롤러발달과정 학습목표 1. 마이크로프로세서발달과정과종류를설명할수있다. 2. 인텔 8051 계열과아트멜 (Atmel) 의특성을설명할수있다. 학습

PowerPoint 프레젠테이션

Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역

CAN-fly Quick Manual

Microsoft PowerPoint - Chapter 8_USART Serial Communication

HBE-MCU-Multi 로배우는 마이크로컨트롤러 (AVR 편 ) 마이크로컨트롤러기능 제 6 장타이머와카운터

(1) 주소지정방식 Address Mode 메모리접근 분기주소 명령어 직접번지 Reg. 지정 Reg. 간접 Base Index 간접 Immediate 상대번지 절대번지 Long 주소 Reg. 간접 Byte Access Bit Access 내부 Data M

Microsoft PowerPoint - 30.ppt [호환 모드]

<C6F7C6AEB6F5B1B3C0E72E687770>

<C1A4BAB8C3B3B8AE5FB1E2BBE75FC7CAB1E25F E687770>

Microsoft PowerPoint - ARM System-on-chip architecture_Chap 4_23p.ppt

OSTSen-THL100 사용자설명서 Ver 1.1 Onsystech OSTSen-THL100 Ver1.1 1 of 8 Onsystech

API 매뉴얼

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx

SAT8-10.hwp

목차 1. UART와 RS232 개요 2. ATMega128의 USART 포트 3. UART로 Hello 보내기 4. UART로 PC와데이터주고받기

Dr.Kim ATmega128 Training Kit (SAT ).hwp

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

정보보안 개론과 실습:네트워크

Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류

Computer Architecture

Microsoft PowerPoint - AVR 시리얼 통신.ppt [호환 모드]

Microsoft PowerPoint - AVR100%(1).ppt

1. 일련의순차적인수를세는회로는? < 가 > 가카운터 다디코더 나레지스터 라인코더 2. 입력펄스에따라미리정해진순서대로상태가변화하는레지스터로써발생회수를세거나동작순서를제어하기위한타이밍 (timing) 신호를만드는데가장적합한회로는? < 다 > 가범용레지스터 다

ARDUINO Open Physical Computing Platform 오탈자, 문의및보완이필요한내용은 으로알려주세요.

1부. 임베디드시스템

M16_32KIT_Manual.hwp

3차시.ppt

Microsoft Word - logic2005.doc

JMOD : ATmega128 기본모듈 사용자설명서 제이씨넷

1. 제품소개및특징 1.1 제품소개 < 그림 1.1> AVRISP MK2 USB 개발장비 AVR ISP(In System Programmer)MK2 USB 란 Atmel 사의 AVR 마이크로컨트롤러의내부플래쉬와 EEPROM 에프로그램메모리및데이터를써 (Write, Re

<4D F736F F F696E74202D2037C0E55FC0CCC0C0C7F55FBFCFBCBA205BC8A3C8AF20B8F0B5E55D>

반도체메모리 메모리 (memory) 분류 순차액세스메모리 랜덤액세스메모리 RAM ROM DRAM SRAM Mask ROM Field PROM 반도체메모리의분류 Fuse-link PROM EPROM EEPROM - 2 -

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

슬라이드 1

COMFILE_VOL13_ cdr

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft Word - EastSocket매뉴얼_ _.doc

Microsoft Word - PEB08_USER_GUIDE.doc

슬라이드 1

OCW_C언어 기초

- 2 -

ATmega128

1. 제품사진및보드설명 < 그림 1.1> AVR-ATmega128 확장형 DEV 보드사진 1.1 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및개발을할수있는 AVR 개발보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정

<C1A4BAB8C3B3B8AE5FB1E2BBE75FC7CAB1E25F FB1E2BBE7C6D0BDBABFEB2E687770>

학습목차 r컴퓨터분해를통한본체살펴보기 r컴퓨터구성요소 r컴퓨터의기능 r버스와상호연결 컴퓨터구조 2 4. 컴퓨터시스템의구성과기능

Microsoft PowerPoint - 제5장 인터럽트 (HBE-MCU-Multi AVR).ppt [호환 모드]

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

BMP 파일 처리

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

PowerPoint 프레젠테이션

OSTSen-PIR100 사용자설명서 Ver 1.1 Onsystech OSTSen-PIR100 V1.1 1 of 8 Onsystech

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

슬라이드 1

Microsoft PowerPoint - DSD06c_ISA.pptx

슬라이드 1

JVM 메모리구조

API 매뉴얼

<C0FCC0DAB0E8BBEAB1E2B1B8C1B6347E36B0AD20B9AEC1A62BC1A4B4E42E687770>

디지털TV솔루션 브로셔

6_5상 스테핑 모터_ _OK.indd

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

Chapter. 1 마이크로컨트롤러개요 Jaeheung, Lee

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

OSTSen-MOS100 사용자설명서 Ver 1.1 Onsystech OSTSen-MOS100 Ver of 8 Onsystech

Transcription:

AVR ATmega128 소개 AVR ATmega128 학습목표 ü 다양한 AVR 패밀리와소자특징을알아보고, 제어환경에따라 AVR 소자를선택하여개발할수있는융통성을이해할수있다. ü 에서메모리공간, I/O 공간의프로그램과데이터를처리하기위한특수레지스터, 범용레지스터의역할을이해할수있다. ü ATmega128 내부에포함된명령어인출과실행절차를알아보고, 명령어유형을통해동작을이해할수있다. ü ATmega128 이장치를쉽게제어할수있도록하기위해내장한메모리와주변장치의특징을개략적으로이해할수있다. 2/38 1

목차 1. AVR 개요 2. ATmega128 특징 3. 4. ATmega128 명령어실행 5. 6. ISP(In System Programming) 3/38 1. AVR 개요 o AVR 패밀리 4/38 2

AVR 개요 o 8 비트 megaavr 패밀리소자 ( 요약 ) o 8 비트 tinyavr 패밀리소자 ( 요약 ) 5/38 ATmega128 특징 o 진보된 RISC 구조 Ø 133 개의강력한명령어, 1 클록사이클에실행 Ø 32 개의범용레지스터와주변장치제어레지스터 Ø 16[MHz] 에서 16[MIPS] 까지성능이나올수있음 Ø 2 클록사이클이소요되는곱셈기를칩에내장 o 비휘발성프로그램과데이터메모리 Ø 128[Kbyte] 의 ISP(In System Programming) 로재프로그램가능한플래시메모리내장 : 10,000 회읽기 / 쓰기가능 Ø 4[Kbyte] EEPROM : 100,000 회읽기 / 쓰기가능 Ø 4[Kbyte] SRAM 내장 Ø 64[Kbyte] 까지외부에추가하여사용할수있는메모리공간 Ø SPI 인터페이스를이용한 ISP(In System Programming) 6/38 3

ATmega128 특징 o 주변장치 Ø 2 개의 8 비트타이머 / 카운터 : 별도의프리스케일러와비교모드동작 Ø 2 개의 16 비트타이머 / 카운터 : 별도의프리스케일러, 비교모드, 캡처모드동작 Ø 실시간타이머카운터 Ø 6 개의 PWM 채널 Ø 출력비교모듈레이터 Ø 아날로그비교기 Ø 10 비트 A/D 변환기 Ø TWI(Two-wire Serial Interface) 직렬인터페이스 Ø 2 개의 USART Ø SPI 직렬인터페이스 Ø 와치독타이머 7/38 o 메모리 플래시프로그램메모리 데이터메모리 (SRAM) EEPROM o 프로그램카운터 (PC) o 명령어레지스터 (IR) o 명령어디코더 o 범용레지스터 o 기타주변장치 [ ATmega128 의내부구조 ] 8/38 4

Ø 플래시프로그램메모리 프로그램저장 비휘발성 (Non-volatile) 메모리 전원이없어도, 저장된데이터는변경되지않음 64[Kword](128[Kbyte]) 크기, 10,000회쓰고읽기 다운로더장치로다운로드 부트프로그램부 : 부팅에필요한기본정보 응용프로그램부 : 워드단위 (16 비트크기 ) 의명령어로구성된프로그램 Ø 프로그램카운터 (PC) 플래시프로그램메모리공간을가리킴 명령어를차례로인출하면서응용프로그램실행 [ 플래시프로그램메모리맵 ] 9/38 Ø 명령어레지스터 (IR) 프로그램카운터가지칭한곳에서명령어레지스터로명령어인출 명령어에는명령코드, 오퍼랜드, 연산결과저장위치필드를가짐 Ø 명령어디코더 명령어레지스터의명령코드를디코딩하여제어신호생성 ALU 는명령코드에해당되는연산동작을수행하게함 제어신호는연산대상이되는오퍼랜드가 ALU 에전달되게함 제어신호는연산결과를저장할수있게함 Ø 스택포인터 스택은임시데이터, 로컬변수, 호출된함수의복귀주소등을저장 스택포인터 (Stack Pointer) 는스택의 TOP 을저장하는특수레지스터 스택에데이터가저장되면, 스택공간은커짐» 스택포인터의주소는높은값에서낮은값으로감소» PUSH 명령어 : 데이터가스택에저장. 이때스택포인터는 1 씩감소» POP 명령어 : 데이터를스택의 TOP 에서꺼냄. 이때스택포인터는 1 씩증가 10/38 5

Ø 범용레지스터 데이터레지스터» 레지스터 R0~R25» 데이터를저장하는레지스터» 메모리주소 0x00~0x19 에해당 주소레지스터» 레지스터 R26~R31» 레지스터간접주소방식을위한레지스터» 메모리주소 0x1A~0x1F 에해당 [ 범용레지스터파일 ] 11/38 데이터레지스터사용사례» 변수 x 를데이터레지스터 r24 로활용한사례 12/38 6

주소레지스터 X, Y, Z» 데이터메모리에대한주소를가짐» 두개의레지스터를묶어, 주소레지스터 X, Y, Z 는 16 비트레지스터 주소레지스터 Z 활용사례 메모리 0x100 위치에데이터 0xAB 를저장동작» Z- 레지스터에메모리주소 0x100 을넣음 (r31ß0x01, r30ß 0x00)» r24 에 0xAB 를넣음» st Z+, r24 동작으로메모리주소 Z 위치에 r24 값을기록, 동작후 Z 값은 1 증가 13/38 Ø 데이터메모리 (SRAM) 변수는프로그램이수행되면서변경될수있음 변수는데이터메모리 (SRAM) 에저장 모드 일반모드 : ATmega103 과호환되지않는모드» 내부 SRAM 을 4,096[byte] 사용가능» I/O 명령어로 64 개 I/O 레지스터접근» 확장된 160 개의 I/O 레지스터를갖고 ld, store 명령으로접근 ATmega103 과호환모드 : 초기에많이사용» 내부 SRAM 을 4,000[byte] 만사용가능 [ ATmega128 데이터메모리 (SRAM) 구성 ] 14/38 7

Ø I/O 공간 in, out 의 I/O 명령어가가리키는주소는 I/O 공간 ld, st 명령어가사용하는주소는데이터메모리공간 64 개 I/O 레지스터» in, out 명령으로참조할때는 I/O 공간 : 0x00 0x3F» ld, st 명령으로참조할때는데이터메모리공간 : 0x20~0x5F 확장된 I/O 공간은 in, out 명령이아닌 ld, st 명령으로만참조 Ø EEPROM(Electrically Erasable and Programmable ROM) 4Kbyte의 EEPROM을내장 비휘발성메모리로서, 전원이공급되지않아도데이터는계속값을유지 플래시프로그램메모리는프로그램이다운로드되는비휘발성메모리 EEPROM은프로그램이수행되는동안에데이터를기록하여활용» 데이터기록을위해 SRAM 보다더많은클록이필요 15/38 Ø 상태레지스터 (SREG, Status Register) 가장최근에실행된산술연산의결과정보를저장 이결과에따라다음에실행되는프로그램의흐름을제어명령어에영향 인터럽트가발생했을때» 상태레지스터를하드웨어가자동으로저장, 복귀되지않음» 소프트웨어적으로저장, 복귀동작을수행해야함 16/38 8

17/38 4. ATmega128 명령어실행 o 명령어인출 Ø 프로그램카운터 (PC) 가가리키는명령어가명령어레지스터 (IR) 로인출 Ø 프로그램카운터의값은명령어레지스터크기만큼증가 o 명령어실행 ❶ 명령어분석 ❷ ALU에오퍼랜드인가 ❸ ALU 연산실행및결과기록 18/38 9

ATmega128 명령어실행 명령어인출과실행 한클록에수행되는명령어실행동작 19/38 ATmega128 명령어실행 o 명령어유형 Ø 산술연산및논리연산명령어 통상명령어들은 1 클록소요결과를저장하기위해한개의 8비트레지스터가사용 ADIW 명령어경우는 2 클록소요 2개의레지스터 (16비트워드단위 ) 에결과를기록해야함 [ 산술및논리연산명령어와동작 ] 20/38 10

ATmega128 명령어실행 Ø 데이터이동명령어 레지스터와레지스터 : 보통 1 클록소요 레지스터에즉시값 : 보통 1 크록소요 레지스터와메모리 : 보통 2 클록소요 레지스터와 I/O 공간 : 보통 1 클록소요 21/38 ATmega128 명령어실행 Ø 프로그램흐름제어명령어 분기되지않을경우프로그램흐름» PC 가가리키는플래시프로그램메모리에서명령어인출» PC 는 1 씩하드웨어적으로증가하면서연속적으로명령어를수행 분기되는명령» 분기명령으로 PC 에서가리키는주소를변경» 연속적인명령어의수행흐름을제어 22/38 11

ATmega128 명령어실행 분기명령어길이» 변위주소방식 : 1 워드» 즉시어드레싱모드 : 2 ( 명령어길이 + 즉시주소길이 ) [ 프로그램흐름제어명령어와동작 ] 23/38 ATmega128 명령어실행 o 서브루틴호출과복귀 Ø RCALL, CALL 명령어에의한서브루틴호출동작 PC, 명령어레지스터 (IR), 스택 (STACK), 스택포인터 (SP) 와연계된동작 서브루틴이호출되기전에되돌아올명령어주소를스택에저장 PC의값은서브루틴의시작주소 k로바뀜 Ø RET 또는 IRET 명령어에의한서브루틴에서복귀동작 스택에저장한주소로 PC 를복귀 서브루틴호출이후의명령어실행 24/38 12

ATmega128 명령어실행 CALL 명령어실행과정 25/38 ATmega128 명령어실행 RET 명령어실행과정 26/38 13

5. o 메모리 Ø 플래시프로그램메모리 비휘발성메모리이기때문에전원이없어도데이터를계속유지 128[Kbyte] 크기의플래시프로그램메모리가내장 쓰기, 지우기를반복할수있기때문에프로그램을직접변경하면서 ISP(In System Programming) 방법으로개발 Ø 데이터메모리 (SRAM) 프로그램에서선언한변수와스택을위해읽고, 쓰기를빠르게수행할수있는주메모리 휘발성메모리이므로, 전원이없으면데이터소멸 SRAM 4[Kbyte] 를내장 27/38 Ø EEPROM 프로그램실행중생성된데이터를전원없이도유지시키기위해서 EEPROM 사용, 4[Kbyte] 의 EEPROM 기록할때 SRAM, 플래시프로그램메모리보다시간이오래걸림 Ø 외부메모리 내장된 4[Kbyte] SRAM 이부족할경우, 외부메모리를추가로장착할수있음 ATmega103 비호환모드일때는주소 0x1100 부터사용가능 o 양방향 I/O 포트 Ø 디지털전압레벨과논리값의대응 최대 53 개의 I/O 핀을사용하여마이크로컨트롤러외부의디지털전압레벨과내부의논리값을대응» 핀의신호방향을출력으로설정하고,» PORTx(x 는 A~G) 레지스터에 0 또는 1 에해당하는논리값을기록하면,» 핀 Pxn(x 는 A~G, n 은 0~7) 은디지털전압레벨로변환되어신호출력 28/38 14

Ø 직접구동, 간접구동 간단한스위칭소자를구동할수있는전류로공급또는흡수할수있음 단독으로구동하기어려운장치는스위칭소자를추가하여구동할수있음 [ I/O 핀을이용한직접구동과간접구동 ] 29/38 o 타이머 / 카운터 Ø 8 비트타이머 / 카운터 타이머 / 카운터 0 과타이머 / 카운터 2 자동카운팅동작» TCNTn 레지스터는카운터에인가되는매클록마다 1 씩증가» 4 가지파형발생모드 - 정상모드 - CTC 모드 - 고속 PWM 모드 - 위상정정 PWM 모드 30/38 15

비교일치출력동작» TCNTn 레지스터와 OCRn(n 은 0 또는 2) 레지스터값을비교» 일치되면 OCn(n 은 0 또는 2) 출력핀의펄스값을바꿀수있음» 모터, 조명등다양한기기에공급되는전력을조절제어할수있음 [ 8 비트 TCNTn, OCRn 비교와 OCn 펄스발생 ] 31/38 Ø 16 비트타이머 / 카운터 타이머 / 카운터 1, 타이머 / 카운터 3 8 비트타이머 / 카운터와유사하지만, 다양한펄스를생성 각타이머 / 카운터에 A, B, C 세개의출력비교 OCRnx(n 은 1 또는 3, x 는 A~C) 레지스터 TCNTn(n 은 1 또는 3) 카운터와 16 비트비교에의해조절되는듀티비출력펄스를 OCnx(n 은 1 또는 3, x 는 A~C) 핀에만들수있음 주파형발생모드 - 정상모드 - CTC 모드 - 고속 PWM 모드 - 위상정정 PWM 모드 - 위상및주파수정정 PWM 모드 32/38 16

TCNTn 과 OCRnx 을비교하여 OCnx 핀으로출력하는펄스발생사례 [16 비트 TCNTn, OCRnx 비교와 OCnx 펄스발생 ] 33/38 o 직렬통신장치 Ø USART 범용동기 / 비동기수신및송신기 송수신을동시에진행할수있는양방향통신 프레임을수신할때는반드시시작비트 (Start bit) 부터시작 특정레지스터로통신속도를바꿀수있음 프레임비트수를 5, 6, 7, 8, 9 중하나로정할수있음 ( 보통 8비트사용 ) 프레임과프레임사이의전송이중지된정지비트는 1 또는 2 패리티검사, 데이터오버런 (Data OverRun) 검사, 프레임에러검사 2개의독립된 USART 장치 송신완료, 수신완료, 송신데이터비어있음인터럽트 34/38 17

Ø SPI 통신 직렬주변장치인터페이스 (SPI, Serial Peripheral Interface) 동기식데이터전송방식 마스터와슬레이브를정하여통신 MOSI, MISO, SCK, /SS 신호사용 마스터주관아래양방향통신의전이중 (Full Duplex) 통신 8비트시프트레지스터를이용하여 LSB를먼저, MSB를나중에전송 35/38 Ø TWI 시리얼통신 마스터와슬레이브로단 2 가닥선만을이용하여데이터를전송» 클록에해당되는 SCL(Serial CLock)» 신호와데이터가이동하는 SDA(Serial DAta) 장치사이에연결되는선이간단 최대 128 개장치사이에데이터전송 TWI 통신에사용되는장치는고유의주소를가짐 최대 400[KHz] 의속도로데이터를전송 Ø 1990년에 IEEE Std. 1149.1로표준화된 Boundary-Scan 규격 PCB 또는 PCB 내의 IC 내부를테스트 IC 내부를관찰하거나디버깅할때도광범위하게사용 4개신호사용 : TDI, TDO, TCK, TMS 36/38 18

Ø JTAG 인터페이스로디버깅수행가능 프로그램카운터, 스택포인터, 상태레지스터등특수레지스터 범용레지스터 내부주변장치레지스터정보 SRAM 데이터 EEPROM과플래시프로그램메모리데이터 37/38 6. ISP(In System Programming) o EPROM Ø 예전개발자들은주로자외선으로데이터를소거할때사용 Ø 자외선으로데이터소거 Ø 많은시행착오 o ISP [EPROM ] Ø 마이크로컨트롤러를장착한 PCB에직접장착하여시스템을개발 Ø 프로그램개발과하드웨어디버깅과정을한꺼번에처리 Ø 내장된플래시메모리에실행코드를직접다운로드 개발에서생산까지소요되는시간을단축 38/38 19