1、复位
复位通过复位引脚RST输入,复位必须达到两个周期的高电平才能将系统复位。复位后,PC指针为0000H,因此0000H即为复位向量入口,复位后从此处开始运行程序。复位后P口(P0,P1,P2,P3)被设置为FFH,堆栈指针值为07H,其他特殊功能寄存器的初值均为00H,内部RAM的值不受复位影响,复位后,其值不确定。
2、寄存器列表
图1为OC8051的寄存器列表:
图1 OC8051寄存器列表
下面依次说明几个特殊功能寄存器功能。
PSW(程序状态字)
CY PSW.7 : 进位标志
AC PSW.6 : 辅助进位标志
F0 PSW.5 : 用户可用作通用标志
RS1 RS0 (PSW.4 PSW.3) : 寄存器组选择
00 :寄存器组0 地址范围00-07H
01 :寄存器组1 08-0FH
10 :寄存器组2 10-17H
11 :寄存器组3 18-1FH
OV PSW.2 : 溢出标志
- PSW.1 : 用户定义标志
P PSW.0 : 奇偶标志
IE(中断使能)
EA : 总中断使能,EA=0;所有的中断都不会被响应,EA=1,中断由各中断的独立使能位控制。
ET1 : 定时器1中断使能
EX1 : 外部中断1使能
ET0 : 定时器0中断使能
EX0 : 外部中断0使能
IP(中断优先级)
前面提到过,OC8051支持两级中断优先级,设为0:对应的中断为低优先级,设为1:对应的中断为高优先级。
PT1 : 定时器1中断优先级设置
PX1 : 外部中断1中断优先级设置
PT0 : 定时器0中断优先级设置
PX0 : 外部中断优先级设置
TCON(定时/计数器控制寄存器)
TF1 : 定时器1溢出标志,硬件置位,软件清0
TR1 : 定时器1运行控制,1:启动定时/计数器
TF0 : 定时器0溢出标志,硬件置位,软件清0
TR0 : 定时器0运行控制,1:启动定时/计数器
IE1 : 外部中断1沿标志,检测到外部中断沿,硬件置1,中断响应后,由硬件清0
IT1 : 外部中断1类型控制,1:下降沿触发;0:低电平触发
IE0 : 外部中断0沿标志,检测到外部中断沿,硬件置1,中断响应后,由硬件清0
IT0 : 外部中断0类型控制,1:下降沿触发;0:低电平触发
TMOD(定时/计数器模式控制寄存器)
高4bit控制定时器1,低4bit控制定时器0.
GATE : GATE=0,定时器的运行由TRx位(TCON寄存器)控制,GATE=1,由外部引脚INTx控制,INTx为1时,才能运行。
C/T : 定时/计数模式选择,计数模式下,对Tx输入引脚进行计数。
M1 MO : 模式选择
00 :13bit定时器模式
01 :16bit定时计数模式
10 :8bit自动重载定时计数模式
11 :两个独立的8bit定时计数模式,TL0占用Timer0控制线和中断线,TH0占用Timer1控制线和中断线;(此时原定时器1不能被使用,因为其控制线和中断线被占用)
3、P口的第二功能说明
下图显示了P3口的第二功能说明:
第2部分多次提到的INTx和Tx即此次的INT0,INT1,T0,T1引脚。另外P0和P2口还用作访问外部程序存储器,P0表示低8位地址,P2表示高8位地址,如果地址线小于8根,P2也可以不用做寻址;P0口还用作外部程序存储器返回的数据输入口。
相关文章