怎样用51单片机检测频率??例如怎样辨别频率小于10Hz,怎样有大于等于10Hz...
根据使用需要确定,举例:如果要产生标准的串口波特率,应使用10592MHz,如果要让51单片机产生整数的时钟频率可使用12MHz或者24MHz单片机。另外根据单片机本身的参数,不要选择过高的频率,否则会工作不稳定。
很明显啊,在测量小于1Hz频率时,测量时间必须大于1s,比如10s,20s或者更长时间,这样才能保证测量准确。既然你一次定时0.5s不能变,那就有程序控制累加多个0.5s的测量结果再计算频率值。
定时计数法,适用于频率较高的情况。测量脉宽法,适用于频率较低的情况。原理,都是计数。
测频率时,频率高的时候,采用“定时计数法”。楼上给出的“开启一个定时器,计算一定时间t内的count值”,就是这种方法。但是,频率低的时候,这种方法是不适用的。因为想要计几个数,就要花费很长的时间。
单片机计数,输入的计数频率不可以超过主频的一半,以12M晶振,12分频来算,主频是1M,那么最高计数频率为500KHz。
看你程序对实时性的要求。建议使用定时器定时查询IO口的状态,记录两次IO状态不同时定时器的中断次数就可以算出来了。
单片机如何同时测多路信号频率
硬件检测模块硬件上需要加一个检测模块(将模拟信号如温度、压力等变换成电信号0~5V),还需要一个多路开关,用来切换你要测量的多路模拟信号,选中一个送入模数转换器。
外部连接一个多通道输入的ADC芯片,单片机按照一定的周期驱动模拟开关切换到不同的模拟通道,设计模数转换控制器的控制程序,可以进行定时模拟信号采集和显示。
两种。定时计数法,适用于频率较高的情况。测量脉宽法,适用于频率较低的情况。原理,都是计数。
市电220V中基频是50Hz,而且幅度最大,其他高频的成分幅度小,都叠加在50Hz的基频上。
使用单片机测量频率的方法有哪几种,他们的原理是什么?
1、测频法:在限定的时间内(如1秒钟)检测脉冲的个数。测周法:测试限定的脉冲个数之间的时间。
2、最后,为了测量交流电压的频率,可以设计一个定时器或使用单片机内部的定时器来测量一个完整的周期的时间,通过已知的周期时间来计算频率。
3、电压直接用ADC来测量。电流通过电阻转换为电压,再由ADC测量。频率通过计数器或者定时器测量。当然通过V/F变换,把电压电流信号转换为频率信号,也能完成测量。串行口采集频率的说法还没听说过。
本文转载自互联网,如有侵权,联系删除