51单片机计数器编程举例 计数值到一定大小后中断报警 -
来源: 网络用户发布,如有版权联系网管删除 2018-09-08
[导读]程序:ORG 0000HAJMP STARTORG 001BHAJMP TIMER1 ;定时器1的中断处理ORG 30HSTART: MOV SP,#5FHMOV TMOD,#01010000B ;定时/计数器1作计数用,模式1,0不用全置0MOV TH1,#0FFHMOV TL1,#0FAH ;预置值,要求每计到6个脉冲即
程序:
ORG 0000H
AJMP START
ORG 001BH
AJMP TIMER1 ;定时器1的中断处理
ORG 30H
START: MOV SP,#5FH
MOV TMOD,#01010000B ;定时/计数器1作计数用,模式1,0不用全置0
MOV TH1,#0FFH
MOV TL1,#0FAH ;预置值,要求每计到6个脉冲即为一个事件
SETB EA
SETB ET1 ;开总中断和定时器1中断允许
SETB TR1 ;启动计数器1开始运行.
AJMP $
TIMER1:
PUSH ACC
PUSH PSW
CPL P1.0 ;计数值到,即取反P1.0
MOV TH1,#0FFH
MOV TL1,#0FAH ;重置计数初值
POP PSW
POP ACC
RETI
END
上面这个单片机程序完成的工作很简单,就是在每6个脉冲到来后取反一次P1。0,因此实验的结果应当是:LM324后接的LED亮、灭6次,则P1。0口所接LED亮或灭一次。这实际就是我们上面讲的计数器的第二种应用:计数值到一定程度即中断报警。
查看评论 回复
"51单片机计数器编程举例 计数值到一定大小后中断报警 -"的相关文章
- 上一篇:STM32通用定时器详解 -
- 下一篇:14. 独立看门狗实验 -