마이크로프로세서응용elearning.kocw.net/contents4/document/lec/2012/konkuk/... ·...

26
마이크로프로세서응용 마이크로프로세서응용 AT 128 ATmega128 Registers, Instructions, and Pins 6

Upload: phungliem

Post on 18-May-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

마이크로프로세서응용마이크로프로세서응용

AT 128ATmega128Registers, Instructions, and Pins

6

Instruction Execution Timing g

Data Memory and Register Locations y g

I/O Reg 0I/O Reg 1

0x200x21

64 개의I/O 레지스터

내부 I/O 레지스터 입출력은 In, Out 명령을사용하면 된다.

I/O Reg 63 0x5F

Ext. I/O Reg 0Ext I/O Reg 1

0x600x61

외부 레지스터 입출력은 메모리 직접 주소방식을Ext. I/O Reg 1

0xFF

160 개의 외부I/O 레지스터

외부 I/O 레지스터 입출력은 메모리 직접 주소방식을사용하여야 한다.

레지스터 summary($00~$20)레지스터 y

레지스터 summary(21~3F)레지스터 y

Instruction Set summary y

ALU관련명령어 ALU 관련명령어

Arithmetic & Logic Instructions g 7

산술연산및논리연산명령어

통상명령어들은 1 클럭소요 결과를저장하기위해한개의 8 비트레지스터가사용

ADIW 명령어같은경우는 2 클럭소요 2개의레지스터 ( 16 비트워드단위)에결과를기록해야함터 ( ) 과 록

[ 산술 및 논리연산 명령어와 동작 ]

Instruction Set summary (2) y

분기관련명령어 분기관련명령어

Flow Control Instructions 9

분기명령어길이

변위주소방식 : 1 워드 즉시어드레싱모드 : 2 ( 명령어길이 + 즉시주소길이)

[ 프로그램 흐름제어 명령어와 동작 ]

Subroutine Call & Return 10

서브루틴호출과복귀

RCALL, CALL 명령어에의한서브루틴호출동작 PC, 명령어레지스터(IR), 스택(Stack), 스택포인터(SP) 와연계 서브루틴이호출되기전에되돌아올명령어주소를스택에저장

PC의값은서브루틴의시작주소 k로바뀜 PC 의값은서브루틴의시작주소 k 로바뀜

RET, IRET 명령어에의한서브루틴에서의복귀동작, 스택에저장한주소로 PC 를복귀 서브루틴호출이후의명령어실행

Subroutine Call & Return (2) 11

CALL 명령어실행과정

Subroutine Call & Return (3) 12

RET 명령어실행과정

Instruction Set summary (3) y

데이터이동관련명령어 데이터이동관련명령어

Data Transfer Instructions 14

레지스터와레지스터 : 보통 1 클럭소요 레지스터에즉치값 : 보통 1 클럭소요 레지스터와메모리 : 보통 2 클럭소요 레지스터와 I/O 공간 : 보통 1 클럭소요

비트 및 테스트 관련 명령어비트 및 테스트 관련 명령어

비트및비트테스트관련명령어 비트및비트테스트관련명령어

Pin Description p

Port A : Port A : 범용 I/O 포트 풀업저항내장

외부메모리사용시하위 Address bus 8 비트및데이터버스로사용

Port B : 8 비트양방향 I/O 포트풀업저항내장 풀업저항내장

최대 20 mA 받을수있음 SPI 버스및 PWM 신호로사용가능

A,B 모두 data direction register 를사용하여방향설정사용하여방향설정

Pin Description p

P t C Port C : 일반 I/O 포트로사용 외부메모리사용시상위주소버스외부메 리사용시상위주 버로사용

Pin Description p

Port D : 일반 I/O 포트로사용가능 아래와같은특별한기능으로주사용 아래와같은특별한기능으로주사용

Port D Pin Function

7 Timer/Counter 2 Clock Output

6 Timer/Counter 1 Clock Output

5 USART1 External Clock

4 Timer/Counter 1 Input Capture Pin

3 Ext Interrupt 3 / UART1 TxD3 Ext. Interrupt 3 / UART1 TxD

2 Ext. Interrupt 2 / UART1 RxD

1 Ext. Interrupt 1 / SDA

0 Ext. Interrupt 0 / SCL

Pin Description p

Port E : 일반 I/O 포트로사용가능 아래와같은특별한기능으로주사용 아래와같은특별한기능으로주사용

Port D Pin Function

7 Ext. Interrupt 7 / ICP3

6 Ext. Interrupt 6 / T3

/5 Ext. Interrupt 5 / OC3C

4 Ext. Interrupt 4 / OC3B

3 Analog Comparator Input 2 (-)3 Analog Comparator Input 2 (-)

2 Analog Comparator Input 1(+)

1 UART0 TxD

0 UART0 RxD

Pin Description p

P t F Port F : 일반 I/O 포트로사용 8 비트 A/D 변환기입력포트비 기 력

JTAG Test Data 인터페이스

Port G : 일반 I/O포트로사용 (5비트만사용) 일반 I/O 포트로사용 (5비트만사용) Real Time Clock Oscilator/Timer 외부메모리제어신호 (ALE, /RD,

/WR )/WR )

Pin Description p

XTAL1 XTAL2XTAL1, XTAL2 Crystal 을콘덴서와함께연결 OSC(Oscillator)를달아주어도된다.

CPU

XTAL1

XTAL2CPU

GND

RESET Active Low reset 이다.

Reset signal

+-5V RST switch

Clock Modes

Atmega8535 는여러가지의 Clock 옵션으로동작가능 AVR 의 configuration bits 를프로그램해서설정 한번만설정하면영구적으로사용가능 한번만설정하면영구적으로사용가능

Crystal Oscillator Mode ( Recommended)y

AVR 의 configuration bits 를프로그램해서설정AVR 의 configuration bits 를프로그램해서설정

11.0592 MHz C1,C2=22pF

External RC Mode

AVR 의 configuration bits 를프로그램해서설정

Pin Description p

VCC & GND Power signal 5V lt l t (78L05) l d 5V voltage regulator(78L05) employed

i t

LM7805CT

+5V

+-

12V9V

7.2V

in outGND

+5V

GNDGND

수고하셨습니다26