测量信号频率的源程序

[复制链接]
2535|3
 楼主| icmap 发表于 2008-12-26 01:37 | 显示全部楼层 |阅读模式
本帖最后由 icmap 于 2010-2-10 13:39 编辑

,dTime0<br />    mov     dTimeA1,dTime1<br />    mov     dTimeA2,dTime2<br /><br />    mov     dCountA1,th0      ;读 Count<br />    mov     dCountA0,tl0<br />    mov     a,th0<br />    xrl     a,dCountA1<br />    jz      a_T1Int01<br />    mov     dCountA0,tl0<br />a_T1Int01:<br /><br />    mov     a,dCountA1<br />    clr     c<br />    subb    a,dCountA1Old<br />    jnc     a_T1Int02<br />    inc     dCountA2<br />a_T1Int02:<br />    mov     dCountA1Old,dCountA1<br /><br />    setb    bDataReady<br /><br />a_T1Int90:<br />    pop     b<br />    pop     acc<br />    pop     psw<br />a_T1IntEnd:<br />    reti<br /><br />    END<br />
zgh9780 发表于 2008-12-27 18:10 | 显示全部楼层

请教

硬件上是不是应该把频率信号连到单片机的记数器上?
这个程序能不能跑在AT89C51上
谢谢
zgh9780 发表于 2008-12-28 18:41 | 显示全部楼层

谢谢

我明天到公司就先试
zgh9780 发表于 2008-12-29 22:28 | 显示全部楼层

谢谢大哥,还有事请教

    nop     ;在这里添加计算代码,具体除法的实现请自行解决。
    nop     ;当 dTimeA0 的单位为 0.1ms 时,频率计算公式如下
    nop     ;频率=10000*(dCountA-dCountB)/(dTimeA-dTimeB)
我的理解,最后测的频率就是记数差/所用时间就行了,
还有 //程序起始地址 这// 是不是可以换成;

谢谢

您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

180

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部