(5) ET0(IE.1):定时器0中断允许位。ET0=1,允许定时器0中断;ET0=0,禁止定时器0中断。
(6) EX0(IE.0):外部中断0中断允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。
3、 工作方式控制寄存器(TMOD)
定时器/计数器的工作方式寄存器TMOD
定时器/计数器是一种可编程部件,在工作之前必须通过软件设定它的工作方式,即对工作方式寄存器TMOD中每位进行设定。下面介绍每位的含义:
TMOD(89H)
其中低4位定义定时器/计数器0,高4位定义定时器/计数器1,对应功能相同。各位定义功能如下:
M1M0为操作方式选择位,其定义方式如下:
M1M0 操作方式 功能说明
0 0 方式0 13位计数器
0 1 方式1 16位计数器
1 0 方式2 自动再装入的8位计数器
1 1 方式3 仅将定时器/计数器0分成两个8位计数器。定时器/计数器1无效(停止计数)
(1) M1和M0工作方式控制位
M0和M1为工作方式控制位,确定4种工作方式。
(2) C/T定时器/计数器方式选择位
C/T=0,设置为定时方式,对机器周期进行计数;
C/T=1,设定为计数方式,对外部信号进行计数,外部信号接至T0(P3.4)或T
(P3.5)引脚。
(3) GATE门控位
GATE=0时,只要用软件使TR0(或TR1)置1就能启动定时器T0(或T1);
GATE=1时,只有在INT0(或INT1)引脚为高电平的情况下,且由软件使TR0(或TR1)置1时,才能启动定时器T0(或T1)工作。
经过上面寄存器的介绍设置中断控制方式,中断响应是对中断源提出的中断请求的接受,是在中断查询之后进行的,当查询到有效的中断请求时,紧接着就进行中断响应。中断响应的主要是由硬件自动生成一条长调用指令LCALL。生成完LCALL指令后,紧接着就由CPU执行。首先将程序计数器PC的内容压入堆栈以保护断点,再将中断入口地址装入PC,使程序执行转向相应的中断区入口地址。但各中断区只有8个单元。一般情况下难以安排下一个完整的中断服务程序。因此通常总是在各个中断区入口地址放置一条无条件转移指令,使程序执行转向在其他地址存放的中断服务程序。
设计控制程序
状态流程图
根据定时控制要求设计按键检测,秒减1中断,动态显示状态流程图以便下面程序编写,
(按键检测流程图) (动态显示流程图)
主程序
根据状态流程图设计编写程序
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP D0
ORG 001BH
AJMP D1
ORG 0030H
MAIN:MOV TMOD,#11H
MOV TH0,#3CH
MOV TL0,#0B0H
MOV TH1,#0ECH
MOV TL1,#78H
MOV IE,#8AH
MOV 30H,#70H
MOV 31H,#00H
MOV R0,#40H
MOV R3,#04H
MOV R2,#0FEH
MOV R7,#14H
SETB TR1
CLR 00H
W3:MOV A,30H
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR
MOV 40H,A
MOV A,30H
SWAP A
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR
MOV 41H,A
MOV A,31H
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR
MOV 42H,A
MOV A,31H
SWAP A
MOV DPTR,#TAB
ANL A,#0FH
MOVC A,@A+DPTR
M
首页 上一页 1 2 3 4 5 6 下一页 尾页 4/6/6
单片机控制的计数计时器(四)由毕业论文网(www.huoyuandh.com)会员上传。