单片机计数器问题

来源:百度知道 编辑:UC知道 时间:2024/06/28 06:12:55
使用单片机T0计数外部脉冲,计数结束后如何从T0中取数,有人说TH0,TLO
可是为什么我取出的TH0,TLO都是0呢,请懂单片机的人进来看一下,谢谢

先对T0进行设置
TMOD=0x05;(方式1,最大计数值65536)
IE=0x82;(开中断)
TR0=1;(启动计数器)

计数结束读TH0和TLO就OK了,外部脉冲频率要小于振荡脉冲频率的1/24.

你是在中断后取的吧?那时TH0,TLO不都已经溢出清零了吗。你可以这样设计程序:把TH0,TLO设置成计一次外部脉冲就中断一次,然后设一个变量初值为零,每中断一次这个变量就在中断程序中加一,最后读取这个变量的值就知道外部脉冲的个数啦~~~试试看吧,你也可以通过外部中断这样实现,就不用设置TH0,TLO了啊~~~~~~~加油啊!!!

是不是你的初始化代码不对啊?贴出来看看。
M我也行滴