找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5385|回复: 18
收起左侧

51单片机测信号周期,如何转换成频率

  [复制链接]
ID:72088 发表于 2018-4-25 18:32 | 显示全部楼层 |阅读模式
用51单片机做过闸门1s测频率,现在测低频,想用周期法测量,周期测出了,不知道如何求倒数,T=1/f,汇编程序
回复

使用道具 举报

ID:111634 发表于 2018-4-25 19:32 | 显示全部楼层
本帖最后由 zl2168 于 2018-4-25 19:39 编辑

51单片机计算倒数,很复杂繁琐。但可预先计算好,然后查表,这样既方便又快速。不过,你用一秒作周期测试,就不必计算了。频率的单位就是Hz,只要计数每秒有多少脉冲就行。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:111634 发表于 2018-4-25 19:33 | 显示全部楼层
本帖最后由 zl2168 于 2018-4-25 19:36 编辑

实例73  测量脉冲频率
Proteus仿真一下,确认有效。
实例73 测量脉冲频率.rar (52.74 KB, 下载次数: 44)

评分

参与人数 1黑币 +5 收起 理由
新乡家电维修 + 5

查看全部评分

回复

使用道具 举报

ID:314956 发表于 2018-4-25 19:40 | 显示全部楼层
测频法,1/200=0.5% 测周,200/10M=2*10^-5=0.003%

评分

参与人数 2黑币 +25 收起 理由
新乡家电维修 + 5 赞一个!
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:294610 发表于 2018-4-25 19:44 | 显示全部楼层
还是对照表查吧

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:316547 发表于 2018-4-25 20:02 | 显示全部楼层
简单,这个书上有
回复

使用道具 举报

ID:123289 发表于 2018-4-25 22:30 | 显示全部楼层
除法程序是是属于基本功一类的程序,范例很多。建议自己写一写。
回复

使用道具 举报

ID:72088 发表于 2018-4-26 08:51 | 显示全部楼层
1353314846 发表于 2018-4-25 19:40
测频法,1/200=0.5% 测周,200/10M=2*10^-5=0.003%

不懂,解释下好吗
回复

使用道具 举报

ID:72088 发表于 2018-4-28 11:12 | 显示全部楼层
zl2168 发表于 2018-4-25 19:32
51单片机计算倒数,很复杂繁琐。但可预先计算好,然后查表,这样既方便又快速。不过,你用一秒作周期测试, ...

1秒是以前做闸门频率计用的,现在想做测周期的频率计,周期时间好测,就是转换倒数不会
回复

使用道具 举报

ID:111634 发表于 2018-4-28 21:28 | 显示全部楼层
本帖最后由 zl2168 于 2018-4-28 21:39 编辑

求倒数,用c编程,比较方便;用汇编,很麻烦,提示你到专门的汇编函数库去找,不要自己编,自己编99%错。
回复

使用道具 举报

ID:111634 发表于 2018-4-28 21:33 | 显示全部楼层
你是大学生,不会编程,还可理解。数学式子不会列么?周期是us,倒数后乘上10的6次方;周期是ms,倒数后乘上10的3次方。
回复

使用道具 举报

ID:302639 发表于 2018-12-24 19:34 | 显示全部楼层
想知道你是如何测周期的,使用的汇编还是C?
回复

使用道具 举报

ID:72088 发表于 2019-5-15 08:17 | 显示全部楼层
zl2168 发表于 2018-4-25 19:32
51单片机计算倒数,很复杂繁琐。但可预先计算好,然后查表,这样既方便又快速。不过,你用一秒作周期测试, ...

我定时1秒测频率我会用,现在要测低频,周期法测低频效果最好,现在想用周期测,程序麻烦很多了,要计算
回复

使用道具 举报

ID:777603 发表于 2020-12-27 21:28 | 显示全部楼层
楼主想要你的测周期的
回复

使用道具 举报

ID:72088 发表于 2021-4-25 17:08 | 显示全部楼层
黄冬梅 发表于 2020-12-27 21:28
楼主想要你的测周期的

低频用测周期法测频率,高频直接闸门测频率。总的来说还是用来测频的
回复

使用道具 举报

ID:775776 发表于 2021-4-25 18:01 | 显示全部楼层
汇编得查表 用c语言就一句话的事
回复

使用道具 举报

ID:789726 发表于 2021-4-25 19:44 | 显示全部楼层
周期法测量为:Tx=NTc=N/Fc通过这个公式来测就可以其中Tc是固定的
回复

使用道具 举报

ID:922247 发表于 2021-5-17 11:34 | 显示全部楼层
51单片机计算倒数,很复杂繁琐。但可预先计算好,然后查表,这样既方便又快速。不过,你用一秒作周期测试,就不必计算了。频率的单位就是Hz,只要计数每秒有多少脉冲就行。
回复

使用道具 举报

ID:72088 发表于 2022-8-28 10:39 | 显示全部楼层
已经解决了,找到四字节无符号除法程序,
频率=1/周期(秒)
单片机测得是US周期,就有公式
频率=1000000/周期us

SZJCF:
        MOV R2,20H        ;被除数
        MOV R3,21H        ;被除数
        MOV R4,22H        ;被除数
        MOV R5,23H        ;被除数


        MOV R6,24H                ;除数
        MOV R7,25H                ;除数
DIVD:CLR C ;比较被除数和除数
        MOV A,R3
        SUBB A,R7
        MOV A,R2
        SUBB A,R6
        JC DVD1
        SETB OV ;溢出
        RET
DVD1:MOV B,#10H ;计算双字节商
DVD2:CLR C ;同时左移一位
        MOV A,R5
        RLC A
        MOV R5,A
        MOV A,R4
        RLC A
        MOV R4,A
        MOV A,R3
        RLC A
        MOV R3,A
        XCH A,R2
        RLC A
        XCH A,R2
        MOV F0,C ;保存溢出位
        CLR C
        SUBB A,R7 ;计算(R2R3-R6R7)
        MOV R1,A
        MOV A,R2
        SUBB A,R6
        ANL C,/F0 ;结果判断
        JC DVD3
        MOV R2,A ;够减,
        MOV A,R1
        MOV R3,A
        INC R5 ;
DVD3:
       DJNZ B,DVD2 ;计算完十六位商


回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表