最新avr寄存器详细资料补充汇总.docx
- 文档编号:2181744
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:47
- 大小:48.24KB
最新avr寄存器详细资料补充汇总.docx
《最新avr寄存器详细资料补充汇总.docx》由会员分享,可在线阅读,更多相关《最新avr寄存器详细资料补充汇总.docx(47页珍藏版)》请在冰豆网上搜索。
最新avr寄存器详细资料补充汇总
avr寄存器详细资料补充}
Atmega16单片机有32个通用I/O口,有PA~PD四组,每组都是8位。
其主要的寄存器有DDRXn(X=A,B,C,D;n=0,2,…,7,下同),PORTXn和PINXn。
I/O组合设置见表1。
表1I/O组合设置
DDRXn
PORTXn
I/O
上拉电阻
说明
0
0
输入
否
I/O三态输入
0
1
输入
是
I/O口带上拉电阻输入
1
0
输出
否
推免0输出
1
1
输出
否
推免1输出
1.PA口寄存器
(1)DDRA
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
DDRA7
DDRA6
DDRA5
DDRA4
DDRA3
DDRA2
DDRA1
DDRA0
(2)PORTA
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PORTA7
PORTA6
PORTA5
PORTA4
PORTA3
PORTA2
PORTA1
PORTA0
(3)PINA
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PINA7
PINA6
PINA5
PINA4
PINA3
PINA2
PINA1
PINA0
2.PB口寄存器
(1)DDRB
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
DDRB7
DDRB6
DDRB5
DDRB4
DDRB3
DDRB2
DDRB1
DDRB0
(2)PORTB
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PORTB7
PORTB6
PORTB5
PORTB4
PORTB3
PORTB2
PORTB1
PORTB0
(3)PINB
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PINB7
PINB6
PINB5
PINB4
PINB3
PINB2
PINB1
PINB0
3.PC口寄存器
(1)DDRC
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
DDRC7
DDRC6
DDRC5
DDRC4
DDRC3
DDRC2
DDRC1
DDRC0
(2)PORTC
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PORTC7
PORTC6
PORTC5
PORTC4
PORTC3
PORTC2
PORTC1
PORTC0
(3)PINC
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PINC7
PINC6
PINC5
PINC4
PINC3
PINC2
PINC1
PINC0
4.PD口寄存器
(1)DDRD
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
DDRD7
DDRD6
DDRD5
DDRD4
DDRD3
DDRD2
DDRD1
DDRD0
(2)PORTD
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PORTD7
PORTD6
PORTD5
PORTD4
PORTD3
PORTD2
PORTD1
PORTD0
(3)PIND
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
PIND7
PIND6
PIND5
PIND4
PIND3
PIND2
PIND1
PIND0
DDRX是方向寄存器,可读可写。
在写操作时用于制定PX口是作为输入口还是输出口;在读操作时,从DDRX寄存器读出来的是端口的方向设定值。
DDRX寄存器的初始值为0x00。
PORTX是数据寄存器,可读写。
在写操作时,从PORTX写入的数据存入内部锁存器,以确定端口的工作状态或者将写入的数据送到外部数据总线。
PORTX寄存器的初始值为0x00。
PINX用来访问端口X的逻辑值,且只允许读操作。
从PINX读入的数据只是X口引脚的逻辑
状态。
其初始值为高阻态。
三.中断寄存器
中断是指微处理器在程序执行期间响应外部的事务请求,暂停当前的处理器工作转而处理外部事件,外部事件处理完成之后返回原来工作暂停的地方继续执行程序。
Atmega16具有21个中断源,每个中断源都有独立的中断向量作为中断服务程序的入口地址,而且所有的中断源都有自己独立的使能位。
如果中断位I和中断向量使能位都置位,则中断发生,中断标志位置位,并执行中断服务程序。
中断向量表见表2,处于越低地址的
中断具有更高优先级。
表2中断向量表
向量号
程序地址
中断源
描述
1
0x00
RESET
外部引脚电平引发的复位,上电复位,掉电检测复位,看门狗复位,以及JTAGAVR复位
2
0x02
INT0
外部中断请求0
3
0x04
INT1
外部中断请求1
4
0x06
TIMER2COMP
定时器/计数器2比较匹配
5
0x08
TIMER2OVF
定时器/计数器2溢出
6
0x0a
TIMER1CAPT
定时器/计数器1事件捕捉
7
0x0c
TIMER1COMPA
定时器/计数器1比较匹配A
8
0x0e
TIMER1COMPB
定时器/计数器1比较匹配B
9
0x10
TIMER1OVF
定时器/计数器1溢出
10
0x12
TIMER0OVF
定时器/计数器0溢出
11
0x14
SPI,STC
SPI串行传输结束
12
0x16
USART,RXC
USART,Rx结束
13
0x18
USART,UDRE
USART数据寄存器空
14
0x1a
USART,TXC
USART,Tx结束
15
0x1c
ADC
ADC转换结束
16
0x1e
EE_RDY
EEPROM就绪
17
0x20
ANA_COMP
模拟比较器
18
0x22
TWI
两线串行接口
19
0x24
INT2
外部中断请求2
20
0x26
TIMER0COMP
定时器/计数器0比较匹配
21
0x28
SPM_RDY
保存程序存储器内容就绪
1.状态寄存器SREG
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
I
T
H
S
V
N
Z
C
I:
全局中断使能位。
在I置位后,单独的中断使能由不同的中断寄存器控制。
若I为0,则禁止中断。
2.MCU控制寄存器MCUCR
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
SM2
SE
SM1
SM0
ISC11
ISC10
ISC01
ISC00
SE:
MCU休眠使能位
SM1~SM0:
MCU休眠模式选择
SM2
SM1
SM0
休眠模式
0
0
0
空闲
0
0
1
ADC噪声抑制模式
0
1
0
掉电模式
0
1
1
省电模式
1
0
0
保留
1
0
1
保留
1
1
0
Standby
(1)模式
1
1
1
扩展Standby
(1)模式
ISC11~ISC10:
外部中断1的中断触发检测方式
ISC11
ISC10
INT1中断
0
0
低电平中断
0
1
INT1引脚上任意的逻辑电平变化都将引发中断
1
0
下降沿中断
1
1
上升沿中断
ISC01~ISC00:
外部中断0的中断检测方式
ISC01
ISC00
INT0中断
0
0
低电平中断
0
1
INT1引脚上任意的逻辑电平变化都将引发中断
1
0
下降沿中断
1
1
上升沿中断
通用中断控制寄存器GICR
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
INT1
INT0
INT2
-
-
-
IVSEL
IVCE
INT1:
使能外部中断请求1
INT0:
使能外部中断请求0
INT2:
使能外部中断请求2
4.通用中断标志寄存器GIFR
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
INTF1
INTF0
INTF2
-
-
-
IVSEL
IVCE
INTF1{INTF缩写:
interruptflag}:
外部中断标志INT1引脚电平发生跳变时触发中断请求,并置位相应的中断标志INTF1。
如果SREG的位I以及GICR寄存器相应的中断使能位INT1为”1”,MCU即跳转到相应的中断向量。
进入中断服务程序之后该标志自动清零。
此外,标志位也可以通过写入”1”来清零。
INTF0:
{INTF缩写:
interruptflag}外部中断标志INT0引脚电平发生跳变时触发中断请求,并置位相应的中断标志INTF0。
如果SREG的位I以及GICR寄存器相应的中断使能位INT0为”1”,MCU即跳转到相应的中断向量。
进入中断服务程序之后该标志自动清零。
此外,标志位也可以通过写入”1”来清零。
INTF2:
{INTF缩写:
interruptflag}外部中断标志INT2引脚电平发生跳变时触发中断请求,并置位相应的中断标志INTF1。
如果SREG的位I以及GICR寄存器相应的中断使能位INT2为”1”,MCU即跳转到相应的中断向量。
进入中断服务程序之后该标志自动清零。
此外,标志位也可以通过写入”1”来清零。
8
5.T/C中断屏蔽寄存器TIMSK
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
OCIE2
TOIE2
TICIE1
OCIE1A
OCIE1B
TOIE1
OCIE0
TOIE0
TOIE0{timeroverflowinterruptenable}:
T/C0溢出中断使能
当TOIE0和状态寄存器的全局中断使能位I都为”1”时,T/C0的溢出中断使能。
当T/C0发生溢出,即TIFR中的TOV0位置位时,中断服务程序得以执行。
OCIE0{outputcompareinterruptenable}:
T/C0输出比较匹配中断使能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 avr 寄存器 详细资料 补充 汇总
![提示](https://static.bdocx.com/images/bang_tan.gif)