各种工作寄存器(定时器/中断)
扫描二维码
随时随地手机看文章
以下内容参考郭天祥的书籍:
EA:全局中断允许位,要想打开任何中断,EA都必须为1.然后再允许某个特定的中断。ES:串行口中断允许。ES=1时,串口接收或者发送完成数据以后会引起中断(TI=1,或者RI=1)ET1:定时计数器1中断允许。ET1=1时,当定时计数器1计数满,溢出后引起中断,可在中断函数中处理定时器。EX1:外部中断1允许位。EX=1时,外部条边沿(或者电平)中断信号来后,会引起外部中断,可在外部中断函数中处理事件。ET0/EX0功能跟上面一样,只是换了个定时器或者外部中断。
PS:串行口中断优先级控制位。PS=1设定串行口为高优先级中断;PS=0为低优先级中断。
PT1:T1中断优先级控制位。PT1=1设定定时器T1为高优先级中断;PT1=0为低优先级中断。
PX1:外部中断1优先级控制位。PX1=1设定定时器外部中断1为高优先级中断;PX1=0为低优先级中断。
PT0:T0中断优先级控制位。PT0=1设定定时器T0为高优先级中断;PT0=0为低优先级中断。
PX0:外部中断0优先级控制位。PX0=1设定定时器外部中断0为高优先级中断;PX0=0为低优先级中断。
例:设有如下要求,将T0、外中断1设为高优先级,其它为低优先级,求IP的值。
IP的首3位没用,可任意取值,设为000,后面根据要求写就可以了因此,最终,IP的值就是06H。
在上例中,如果5个中断请求同时发生,求中断响应的次序。
响应次序为:定时器0->外中断1->外中断0->实时器1->串行中断。
其中低四位定义定时器/计数器T0,高四位定义定时器/计数器T1,各位的说明:
Ⅰ,GATE——门控制。
●GATE=1时,由外部中断引脚INT0、INT1来启动定时器T0、T1。
当INT0引脚为高电平时TR0置位,启动定时器T0;
当INT1引脚为高电平时TR1置位,启动定时器T1。
●GATE=0时,仅由TR0,TR1置位分别启动定时器T0、T1。
Ⅱ,C/T——功能选择位
C/T=0时为定时功能,C/T=1时为计数功能。
置位时选择计数功能,清零时选择定时功能。
Ⅲ,M0、M1——方式选择功能
由于有2位,因此有4种工作方式
=================================================================
M1M0 工作方式 计数器模式 TMOD(设置定时器模式) ==
0 0 方式0 13位计数器 TMOD=0x00 ==
0 1 方式1 16位计数器 TMOD=0x01 ==
1 0 方式2 自动重装8位计数器 TMOD=0x02 ==
1 1 方式3 T0分为2个8位独立计数器,T1为无中断重装8位计数器 TMOD=0x03 ==
=================================================================
=============================================================================================
TF1 TCON.7 8FH 定时器1溢出标志;当定时器/计数器发生溢出时由硬件置位;该位可以用软件清零,当CPU转向中断服务程序时该位被自动清零,要注意的是, 如果使用定时器中断,那么改位不用人为操作,但是是用软件的话,查询到该位置1后,就需要用软件清0.
TR1 TCON.6 8EH 定时器1运行控制,由软件置位和清零,分别可以启动和停止定时/计数器1,当GATE=1,且INT1=1时,TR1=1启动定时器。当GATE=0, TR1=1启动定时器。
TF0 TCON.5 8DH 定时器0标志
TR0 TCON.4 8CH 定时器0运行控制
IE1 TCON.3 8BH 外部中断1的中断标志,当探测到外部中断1时由硬件置位,当转入中断服务 程序后用软件清零
IT1 TCON.2 8AH 外部中断1控制位,其置位和清零由软件设置,分别对应着外部中断1的下降沿触发和低电平触发
当IT1=1,为电平触发方式,每个机器周期的S5P2采样INT1引脚,若INT1脚为低电平,则置1,否则IE1清0。
当IT1=0,INT1为跳变延触发方式,当第一个周期采样到INT1位低电平时,则IE1=1,表示外部中断1正在向CPU申请中断。当CPU响应中断,转向中断服务程序时,该位由硬件清0.
IE0 TCON.1 89H 外部中断0的中断标志
IT0 TCON.0 88H 外部中断0控制位
=============================================================================================
可以通过TMOD寄存器中的M1M0来进行工作方式的选择