AVR128寄存器速查

  • 格式:doc
  • 大小:619.00 KB
  • 文档页数:19

1 ATMEGAL128

一、管脚定义

管脚 定义 第1功能 第2功能 第3功能

1 PEN 在线编程时允许串口下载

2 PE0/RXD0/ PDI IO口E0 串口0接收 编程数据输入

3 PE1/TXD0 /PDO IO口E1 串口0发送 编程数据输出

4 PE2/ AIN0/XCL0 IO口E2 模拟比较器+输入 串口0时钟

5 PE3/ AIN1/OC3A IO口E3 模拟比较器-输入 T3输出比较和PWM输出A

6 PE4/ INT4/OC3B IO口E4 外中断4 T3输出比较和PWM输出B

7 PE5/ INT5/OC3C IO口E5 外中断5 T3输出比较和PWM输出C

8 PE6/ INT6/T3 IO口E6 外中断6 T3时钟

9 PE7/INT7/ ICP3 IO口E7 外中断7 T3输入捕捉触发

10 PB0/SS IO口B0 SPI从机选择

11 PB1/SCK IO口B1 SPI时钟

12 PB2/MOSI IO口B2 SPI从机输入主机输出

13 PB3/MISO IO口B3 SPI从机输出主机输入

14 PB4/OC0 IO口B4 T0输出比较和PWM输出

15 PB5/OC1A IO口B5 T1输出比较和PWM输出A

16 PB6/OC1B IO口B6 T1输出比较和PWM输出B

17 PB7/OC2/OC1C IO口B7 T2输出比较和PWM输出 T2输出比较和PWM输出C

18 PG3/TOSC2 IO口G3 T0外接振荡器

19 PG4/TOSC1 IO口G4 T0外接振荡器

20 VCC 电源

21 GND 地

22 RESET 复位

23 XTAL2 时钟输入

24 XTAL1 时钟输入

25 INT0/PD0/SCL IO口D0 外中断0 IIC时钟

26 INT1/PD1/SDA IO口D1 外中断1 IIC数据

27 INT2/PD2/RXD1 IO口D2 外中断2 串口1接收

28 INT3/PD3/TXD1 IO口D3 外中断3 串口1发送

29 PD4/ICP1 IO口D4 T1输入捕捉触发

30 PD5/XCK1 IO口D5 串口1时钟

31 PD6/T1 IO口D6 T1时钟

32 PD7/T2 IO口D7 T2时钟 2 33 PG0/WR IO口G0 总线写

34 PG1/RD IO口G1 总线读

35 PC0/A8 IO口C0 总线地址第8位

36 PC1/A9 IO口C1 总线地址第9位

37 PC2/A10 IO口C2 总线地址第10位

38 PC3/A11 IO口C3 总线地址第11位

39 PC4/A12 IO口C4 总线地址第12位

40 PC5/A13 IO口C5 总线地址第13位

41 PC6/A14 IO口C6 总线地址第14位

42 PC7/A15 IO口C7 总线地址第15位

43 PG2/ALE IO口G2 扩展所存

44 PA7/AD7 IO口A7 总线地址数据第7位

45 PA6/AD6 IO口A6 总线地址数据第6位

46 PA5/AD5 IO口A5 总线地址数据第5位

47 PA4/AD4 IO口A4 总线地址数据第4位

48 PA3/AD3 IO口A3 总线地址数据第3位

49 PA2/AD2 IO口A2 总线地址数据第2位

50 PA1/AD1 IO口A1 总线地址数据第1位

51 PA0/AD0 IO口A0 总线地址数据第0位

52 VCC 电源

53 GND 地

54 PF7/ADC7/TDI IO口F7 模数转换通道7 JTAG测试数据输入

55 PF6/ADC6/TDO IO口F6 模数转换通道6 JTAG测试数据输出

56 PF5/ADC5/TMS IO口F5 模数转换通道5 JTAG测试模式选择

57 PF4/ADC4/TCK IO口F4 模数转换通道4 JTAG测试时钟

58 PF3/ADC3 IO口F3 模数转换通道3

59 PF2/ADC2 IO口F2 模数转换通道2

60 PF1/ADC1 IO口F1 模数转换通道1

61 PF0/ADC0 IO口F0 模数转换通道0

62 AREF AD模拟基准信号

63 AGND 模拟地

64 AVCC 模拟电源

二、寄存器地址

H\L F/7 E/6 D/5 C/4 B/3 A/2 9/1 8/0

1100-FFFF 外部SRAM

100-10FF 内部SRAM

AL- FF -

9H UCSR1C UDR1 UCSR1A UCSR1B UBRR1L UBRR1H

9L UCSR0C UBRR0H 3 8H TCCR3C TCCR3A TCCR3B TCNT3H TCNT3L

8L OCR3AH OCR3AL OCR3BH OCR3BL OCR3CH OCR3CL ICR3H

ICR3L

7H ETIMSK ETIFR TCCR1C OCR1CH OCR1CL

7L TWCR TWDR TWAR TWSR TWBR

6H OSCCAL XMCRA XMCRB EICRA SPMCSR

6L PORTG DDRG PING PORTF DDRF

5H SREG SPH SPL XDIV RAMPZ EICRB EISMK EIFR

5L TIMSK TIFR MCUCR MCUCSR TCCR0 TCNT0 OCR0 ASSR

4H TCCR1A TCCR1B TCNT1H TCNT1L OCR1AH OCR1A

L OCR1BH OCR1BL

4L ICR1H ICR1L TCCR2 TCNT2 OCR2 OCDR WDTCR SFIOR

3H EEARH EEARL EEDR EECR PORTA DDRA PINA PORTB

3L DDRB PINB PORTC DDRC PINC PORTD DDRD PIND

2H SPDR SPSR SPCR UDR0 UCSR0A UCSR0B UBRR0L ACSR

2L ADMUX ADCSRA ADCH ADCL PORTE DDRE PINE PINF

1H R31(ZH) R30(ZL) R29(YH) R28

(YL) R27(XH) R26(XL) R25 R24

1L R0-R23

0

(一)SREG:程序状态

I T H S V N Z C

(1)I: 全局中断使能

I=1:允许全局中断

C=0:禁止全局中断

(2)T:位复制存储

将寄存器某一位复制到T,或将T复制到寄存器某一位

(3)H:半进位标志位

H=1:低4位向高4位有进位

H=0:低4位向高4位无进位

(4)S:符号位

S=N异或V

(5)V:2进制补码溢出标志

V=1:2进制补码有溢出

V=0:2进制补码无溢出

(6)N:负数标志位

N=1:结果是负数

N=0:结果是正数

(7)Z:零标志

Z=1:结果是零

Z=0:结果不是零

(二、 三)SPH,SPL:堆栈指针

堆栈区的初地址,SPL是低8位,SPH是高8位

(四)MCUCR:控制 4 SRE SRW10 SE SM2 SM1 SM0 IVSEL IVCE

(1)SRE:外部扩展时能

SRE=1:允许外部扩展,三总线扩展

SRE=0:禁止外部扩展

(2)SE休眠模式使能

SE=1:允许休眠模式

SE=0:禁止休眠模式

(3)SM2,SM1,SM0:休眠模式选择

SM2 SM1 SM0

0 0 0 空闲模式

0 0 1 ADC噪声压制模式

0 1 0 掉电模式

0 1 1 省电模式

1 1 0 Standby模式

1 1 1 扩展Standby模式

(4)IVSEL:中断向量选择

IVSEL=1:中断向量地址选择Boot区起始地址

IVSEL=0:中断向量地址选择Flash区起始地址

(5)IVCE:中断向量选择使能

IVCE=1:使能中断向量选择

IVCE=0:禁止中断向量选择

(五)XMCRA:外部存储器控制A

- SRL2 SRL1 SRL0 SRW01 SRW00 SRW11

(1)

SRL2 SRL1 SRL0 分区限制

0 0 0 无低地址存储,高地址存储0x1100~0xFFFF

0 0 1 低地址存储0x1100~0x1FFFF,高地址存储0x2000~0xFFFF

0 1 0 低地址存储0x1100~0x3FFFF,高地址存储0x4000~0xFFFF

0 1 1 低地址存储0x1100~0x5FFFF,高地址存储0x6000~0xFFFF

1 0 0 低地址存储0x1100~0x7FFFF,高地址存储0x8000~0xFFFF

1 0 1 低地址存储0x1100~0x9FFFF,高地址存储0xA000~0xFFFF

1 1 0 低地址存储0x1100~0xBFFFF,高地址存储0xC000~0xFFFF

1 1 1 低地址存储0x1100~0xDFFFF,高地址存储0xE000~0xFFFF

(2)SRW00,SRW01,SRW10,SRW11是等待状态选择,其中SRWxy中x=1高地址,x=0低地址

SRWx1 SRWx0

0 0 无等待周期

0 1 读写操作插入一个等待周期

1 0 读写操作插入两个等待周期

1 1 读写操作插入两个等待周期。输入新地址之前再插入一个等待周期

(六)XMCRB:外部存储器控制B

XMBK - - - - XMM2 XMM 1 XMM0