|
发表于 2014-6-21 23:34:04
|
显示全部楼层
1/ 时基是2us,单位是us,换成单位秒,需要乘1000000。
如果是1个测量脉冲中时基计数1个,那么频率为1000000/2 = 500000HZ
如果是1个测量脉冲中时基计数2个,那么频率为1000000/2*2 = 250000HZ
如果是250个测量脉冲中时基计数N个,那么频率为1000000/((N*2)/250) = 250000000/(N*2) = 125000000/N
为了保留2位小数点,再乘上100,变成12500000000/n 。这里N是250个测量脉冲之间时基的计数值
这样的计算全部采用整数计算,而且只作一次整数除法,大大加快了计算时间,提高效率。结果显示时,把小数点向前移2位显示即可,比使用浮点运算快几十倍。
2/ 建议使用测周法。保证流量小时的精度。其实你还是要把实际的情况摸清楚,比如最小流量的频率,整个测量频率误差的允许范围,以及测量的频度要求:比如是1秒一次,还是1秒要测5次。要根据这些实际的情况设计具体的测量的方法。比如1秒1次,测量的精度可以高些,频率能测量最低接近1HZ,而1秒测5次的话,测量精度就会低,而且最低测量频率要大于5HZ.
只有在真正掌握频率测量的原理和方法的基础上,才能设计出符合实际应用的代码。光会个C语言编程远远不够。
|
|