请问如何将一个方波降频 1000 倍但佔空比不变
下图是一个 500KHZ 的方波,HI 的部分占整个周期的1/4,请问如何将它降频 1000 倍变成 500HZ,并且佔空比不变,
可以用哪一种计数器或正反器来达成?
谢谢。 用计数器分频,比如说CD4017,十进制的,三级分频试试。 500Hz是精确的还是大约的、在一个范围内变化?
0.5us的脉宽,变化范围是多大?
如果都不变,那干脆生成一个500Hz、脉宽0.5ms的信号即可。
数字的方法:测试出周期和脉宽,然后分别乘上1000倍,再生成一个新的信号。
模拟+数字的方法:分频1000倍得到脉冲上沿,下降沿用延时电路,而延时多少要看在1000个输入脉冲里,总的上沿的合计。
只是一个思路,具体的还没去想,楼下可以继续。 兄台有没有叁考电路可以贴上来一下,麻烦你了。 先用390分频器分频25倍,再用4017做10分频,最后一级4017做四分频。一片390是双2-5 BCD分频器,也可以做成5*5分频
回 5楼(youngliu) 的帖子
为什么不用CD4017做三级10分频呢?10x10x10 刚好1000 lz想分频以后来测量宽度回 6楼(cqmiao) 的帖子
楼主要1/4占空比 引用第7樓albert於2011-08-0415:49發表的:lz想分頻以後來測量寬度 images/back.gif
哈!被你猜对了,所以才不能用软体来分频制造出新信号,
一定要用硬件电路分频 1000 倍将频率降低才好测量宽度。 将该方波信号通过低通滤波转成直流信号V,那么V和方波的占空比成正比关系。另外产生一个频率是方波信号1/1000的三角波,三角波的幅度和矩形波的幅度要对应。然后将直流信号V和三角波比较应该就能得到占空比不变,频率是原来1/1000的信号。
仿真图输出的信号占空比反了,交换比较器两个输入信号即可。 分频很简单,但是要占空比不变做不到,因为你要测量的宽度是会变的。 楼主的占空比不是准确的1/4吗 如果只想测量脉宽不在乎点误差的话分频+反相分频 应该可以 如果想测试脉宽,可以先把脉冲变成精确的0-10V的(或0-5V),然后用RC滤波,最后测试得到的直流电压即可。这就是最简单的开环PWM。 用单片机吧。
1)在第0个脉冲到来时,置位输出为高。
2)对输入计数,到计数为249时置输出为低。
3)对输入继续计数,到计数为999时复位计数器。
4)第1000个脉冲到来时,从1)开始重复上述过程。
这个过程也可以直接用硬件完成,不过现在的人比较多地了解单片机,而且单片机也容易实现。
引用第16楼lymex于2011-08-0423:43发表的:
如果想测试脉宽,可以先把脉冲变成精确的0-10V的(或0-5V),然后用RC滤波,最后测试得到的直流电压即可。这就是最简单的开环PWM。 images/back.gif
如果PWM的幅度稳定,那么测量出低通后的直流电压,换算为脉宽还是比较准确的。估计楼主是想做PWM频率变换吧!话说回来,如果只是测脉宽,计数应该更准吧。:) 单片机的方法只是理论上可行,实际做起来是有很大难度的,按楼主的数据,被测信号频率是500K,被测脉宽是500ns,如果单片机的主频是10M,时钟周期就是100ns,记数的细度是不够的,再加上指令执行的时间,可以说是没戏的。
可能楼主早就意识到这一点,才想着怎么分频又保持占空比不变。 我觉得计数比较准确,因为用PWM脉宽调变转成直流的方法会有解析度差的问题,
如果能把频率照比率降低 1000 倍,然後单片机的执行速度快一点,
这样就能很好的解析度,拜托大夥儿帮我想想办法吧。 引用第19楼jackrao于2011-08-0511:49发表的:
单片机的方法只是理论上可行,实际做起来是有很大难度的,按楼主的数据,被测信号频率是500K,被测脉宽是500ns,如果单片机的主频是10M,时钟周期就是100ns,记数的细度是不够的,再加上指令执行的时间,可以说是没戏的。
可能楼主早就意识到这一点,才想着怎么分频又保持占空比不变。 images/back.gif
确实如此,而且一旦采用中断方式,精确的比例就更不可控了。我觉得还是直接使用数字电路实现比较现实,精度和速度都没有问题。要实现其实并不难,基本结构是一个10bits主计数器,有两个由与非门构成的门限检出器,分别检测值249、999,一个触发器用于控制输出。
1)第0个脉冲到来,主计数器清零,输出触发器翻转,状态为高,输出触发器时钟门关闭;
2)门限检出器1在计数器值为248时打开输出触发器的时钟门;
3)第249个脉冲到来时输出触发器翻转,状态为低,输出触发器时钟门关闭;
4)门限检出器2在计数器值为999时打开输出触发器的时钟门;
5)第1000个脉冲到来时,从1)开始重复上述过程,此时第1000个脉冲等于新周期的第0个脉冲。
引用第21樓longshort於2011-08-0516:10發表的:
確實如此,而且一旦採用中斷方式,精確的比例就更不可控了。我覺得還是直接使用數字電路實現比較現實,精度和速度都沒有問題。要實現其實並不難,基本結構是一個10bits主計數器,有兩個由與非門構成的門限檢出器,分別檢測值249、999,一個觸發器用於控制輸出。
1)第0個脈衝到來,主計數器清零,輸出觸發器翻轉,狀態為高,輸出觸發器時鐘門關閉;
2)門限檢出器1在計數器值為248時打開輸出觸發器的時鐘門;
....... images/back.gif
分析得很详细,大侠对数字电路很有研究,方便请您画个图示意一下吗?简单的方块图或原理图都可以。
引用第22楼psir_murphy于2011-08-0517:01发表的:
分析得很详细,大侠对数字电路很有研究,方便请您画个图示意一下吗?简单的方块图或原理图都可以。
images/back.gif
不好意思,我不是什么大侠。方框图与原理图都差不多,匆匆赶画了一个,逻辑上肯定还隐藏一些错误,仅供参考。
那两个检测逻辑实际上就是两个多输入端的与门,您可以通过逻辑代数再将它简化一下。
引用第20楼psir_murphy于2011-08-0515:25发表的:
我觉得计数比较准确,因为用PWM脉宽调变转成直流的方法会有解析度差的问题,
如果能把频率照比率降低 1000 倍,然後单片机的执行速度快一点,
这样就能很好的解析度,拜托大夥儿帮我想想办法吧。images/back.gif
解析度差?这个就要看楼主的pwm信号精度要求到百分之几了,分辨率又要达到多少?从而得出直流电压的应该达到的精度。假如pwm信号的幅度是5V,分辨率要求1%,那么低通后电压的分辨率就是50mV,比较器也只要区分50mV的电压,问题不大。当然如果是要求0.1%的分辨率,那就比较难了。如果要求pwm的分辨率高,就适当提高pwm的幅度,比如提高到10V。
关键是:讨论到现在,对楼主的需求还是不太明白。比如,pwm占空比是否是变化的,精度又希望达到多少? 引用第21楼longshort于2011-08-0516:10发表的:
确实如此,而且一旦采用中断方式,精确的比例就更不可控了。我觉得还是直接使用数字电路实现比较现实,精度和速度都没有问题。要实现其实并不难,基本结构是一个10bits主计数器,有两个由与非门构成的门限检出器,分别检测值249、999,一个触发器用于控制输出。
1)第0个脉冲到来,主计数器清零,输出触发器翻转,状态为高,输出触发器时钟门关闭;
2)门限检出器1在计数器值为248时打开输出触发器的时钟门;
....... https://bbs.38hot.net/images/back.gif
按照这个思路,无论N%占空比的脉冲输入,输出的结果都是25%,已经没有测量的意义了,直接给个25%的结果就完了。
其实最靠谱的做法还是低通滤波再测直流。 引用第25楼jackrao于2011-08-0716:28发表的:
按照这个思路,无论N%占空比的脉冲输入,输出的结果都是25%,已经没有测量的意义了,直接给个25%的结果就完了。
其实最靠谱的做法还是低通滤波再测直流。
images/back.gif
您说得对,这个结果没考虑到。 向各位大大报告一下:
我制作了如下一个电路,总共是(÷2)×(÷5)×(÷2)×(÷5)=÷100,
但发现一个致命伤,就是从第一阶÷2开始,就无法反映周期的变动,
这样用除频的方式就不能用了,可能要改成单击电路(Single shot)可能比较有效。
引用第27楼psir_murphy于2011-08-1015:56发表的:
向各位大大报告一下:
我制作了如下一个电路,总共是(÷2)×(÷5)×(÷2)×(÷5)=÷100,
但发现一个致命伤,就是从第一阶÷2开始,就无法反映周期的变动,
这样用除频的方式就不能用了,可能要改成单击电路(Single shot)可能比较有效。
....... https://bbs.38hot.net/images/back.gif
周期是频率的倒数,应该是可以反映出来的,但是宽度肯定是反映不出来了,二分频后的占空比一定是50%的,输入的宽度信息就丢失了,之后就不可能再找回宽度信息了。
建议你还是用模拟电路做,真的,别折腾了,数字的方法在这里未必能有好的效果。 引用第28樓jackrao於2011-08-1016:59發表的:
週期是頻率的倒數,應該是可以反映出來的,但是寬度肯定是反映不出來了,二分頻後的佔空比一定是50%的,輸入的寬度信息就丟失了,之後就不可能再找回寬度信息了。
建議你還是用模擬電路做,真的,別折騰了,數字的方法在這裡未必能有好的效果。
images/back.gif
請問什麼是模擬電路?能否稍微解释一下,谢谢。
页:
[1]
2