打印

关于51单片机 计数器/定时器 的问题 求解释

[复制链接]
1789|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guozi83|  楼主 | 2011-6-15 16:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2011-6-15 17:06 | 只看该作者
下一脉冲再计数,另外还有一个GATE位

使用特权

评论回复
板凳
NE5532| | 2011-6-15 17:17 | 只看该作者
计数器就是对外部脉冲计数,下一个不来,是不会动的。

使用特权

评论回复
地板
guozi83|  楼主 | 2011-6-15 18:07 | 只看该作者
初学,没实际经验
题目:利用T0方式2实现以下功能:当T0(P3.4)引脚每输入一个负脉冲时,使P1.0输出一个500μs的同步脉冲.设晶振频率为6MHz,请编程实现该功能.

START:MOV TMOD,#06H
;T0方式2,外部计数方式
MOV TH0,#0FFH ;T0计数初值
MOV TL0,#0FFH
SETB TR0 ;启动T0计数
LOOPl:JBC TF0,PTF01
;查询T0溢出标志,TF0=1时转移,
且TF0=0(查P3.4负跳变)
SJMP LOOPl

PTF01:CLR TR0 ;停止计数
MOV TMOD,#02H ;T0方式2,定时
MOV TH0,#06H ;T0定时500μs初值
MOV TL0,#06H
CLR P1.0 ;P1.0清0
SETB TR0 ;启动定时500μs
LOOP2:JBC TF0,PTF02 ;查询溢出标志,
定时到TF0=l 转移,且TF0=0(第1个500μs到否 )
SJMP LOOP2
PTF02:SETB P1.0 ;P1.0置1(500μs到)
CLR TR0 ;停止计数
SJMP START

第一次计数溢出时跳转,开始进行定时
我的理解:按这程序猜测的话是 外部来来了负脉冲后开始持续计数,直至溢出  
是我哪里理解错了? 请指教

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

2

帖子

1

粉丝