彻底搞定8051(寄存器篇)
2007-04-15 21:30阅读:
P3为两用端口:
P3.0RXD串行口通讯输入
P3.1TXD串行口通讯输出
P3.2INT0外部中断0
P3.3INT1外部中断1
P3.4T0定时器/计数器0
P3.5T1定时器/计数器1
P3.6WR外部随机存取器的写入信号
P3.7RD外部随机存取器的读取信号
8051程序设计只读存储器特殊地址
名
称中 断 源向 量 位 置
系统重置RESET00H
外部中断0INT003H
定时器0中断TIMER00BH
外部中断1INT113H
定时器1中断TIMER11BH
串行口中断UART23H
8051特殊功能寄存器
名称 用途 地址
*ACC 累加器B E0H
*B 寄存器B F0H
*PSW 程序状态字语 D0H
SP 堆栈指计 81H
DPTR 数据指计(DPH,DPL) 83H,82H
P0 I/O端口0 80H
P1 I/O端口1 90H
P2 I/O端口2 A0H
P3 I/O端口3 B0H
*IP 中断优先顺序控制 B8H
*IE 中断使能控制 A8H
TMOD 计时器模式控制 89H
*TCON 计时器控制 88H
TH0 计时器0高字节寄存器8CH
TL0 计时器0低字节寄存器8AH
TH1 计时器1高字节寄存器8DH
TL1 计时器1低字节寄存器8BH
*SCON 串行端口控制 98H
SBUF 串行端口数据缓冲器 99H
PCON 电源控制 87H
*:表示位可寻址
8051内部控制寄存器只有6个:
1. IE,IP寄存器用于中断控制
2. TMOD,TCON寄存器计时/计数器用
3. SCON寄存器串行口传输控制
4. PCON寄存器省电模式操作
IE中断控制寄存器(可位寻址)
B7B6B5B4B3B2B1B0
EA-ET2ESET1EX1ET0EX0
EA(IE.7):当EA=0时停止所有的中断位(禁止中断)
当EA=1时各个中断的产生由个别允许位来决定
IE.6:保留位
ET2(IE.5):允许计时器2的中断(8052使用)
ES(IE.4):允许串行口的中断
ET1(IE.3):允许计时器1的中断
EX1(IE.2):允许外部中断1的中断
ET0(IE.1):允许计时器0的中断
EX0(IE.0):允许外部中断0的中断
IP中断优先次序寄存器(可位寻址)
B7B6B5B4B3B2B1B0
--PT2PSPT1PX1PT0PX0
PT2(IP.5):设定计时器2的优先次序(8052使用)
PS(IP.4):设定串行口的优先次序
PT1(IP.3):设定计时器1的优先次序
PX1(IP.2):设定外部中断1的优先次序
PT0(IP.1):设定计时器0的优先次序
PX0(IP.0):设定外部中断0的优先次序
TMOD计时器模式控制寄存器(不可位寻址)
B7B6B5B4B3B2B1B0
GATEC/TM1M0GATEC/TM1M0
GATE:
计时器工作门控制,当GATE=1时,INT0与INT1引脚为高电位,同时TCON中的TR0或TR1
控制位1时,计时/计数器0或1才会工作。若GATE=0,只要将TR0或TR1控的,控制位设
为1,计时/计数器0或1即可工作。
C/T:作计时/计数器功能的选择位,C/T=1为计数器,由外部引脚T0或T1输入计数脉冲。
C/T=0为计时器,由内部系统时钟提供计时工作脉冲。
M1:模式选择位1
M0:模式选择位0
M1M0工作模式
0013位计时/计数器
0116位计时/计数器
108位自动载入计时/计数器
11计时器1停止工作,计时器0分为两个独立的8位计时器TH0与TL0
TCON计时器控制寄存器(可位寻址)
B7B6B5B4B3B2B1B0
TF1TR1TF0TR0IE1IT1IE0IT0
TF1(TCON.7):计时器1溢出标志,当计时溢出时由硬件位设定为1,在执行相对的中断服务程
序后则自动清0。
TR1(TCON.6):计时器1起动控制位,可以由软件来设定或清除,当TR1=1时起动计时器工作,
TR1=0时关闭。
TF0(TCON.5):计时器0溢出标志,当计时溢出时由硬件设定为1,在执行相对的中断服务程
序后则自动清0。
TRO(TCON.4):计时器1起动控制位,可以由软件来设定或清除,当TR0=1时起动计时器工作,
TR0=0时关闭。
IE1(TCON.3):外部中断1工作标志,当外部中断被检查出来时,硬件自动设定此位,在执行
中断程序后,则自动清0。
IT1(TCON.2):外部中断1工作形式的选择,IT1=1时,由下降沿产生外部中断,IT1=0时,
则由低电平产生中断。
IE0(TCON.1):外部中断0工作标志,当外部中断被检查出来时,硬件自动设定此位,在执行
中断程序后,则自动清0。
IT0(TCON.0):外部中断0工作形式的选择,IT0=1时,由下降沿产生外部中断,IT0=0时,
则由低电平产生中断。
SCON串行口控制寄存器(可位寻址)
B7B6B5B4B3B2B1B0
SM0SM1SM2RENTB8RB8TIRI
SM0(SCON.7):串行端口模式设定位0
SM1(SCON.6):串行端口模式设定位1
SM2(SCON.5):8051连接多重处理器通信的控制位
REN(SCON.4):串行通信接收允许信号,该位可以由软件来设定。
TB8(SCON.3):在串行通信模式2和模式3操作时第9个传送数据位
RB8(SCON.2):在串行通信模式2和模式3操作时第9个接收数据位
TI(SCON.1):串行通信传送的中断标志。
RI(SCON.0):负责串行通信接收的中断处理标志。
SM0SM1工作模式说明工作频率
000移位寄存器FOSC/12
0118位串行传送可变
1029位串行传送FOSC/64或FOSC/32
1139位串行传送可变
PCON电源控制寄存器(不可寻址)