ZKX's LAB

51单片机数字频率计结论 基于51单片机的数字频率计出了显示频率还可以添加哪些简易功能

2020-10-05知识21

基于51单片机的数字频率计出了显示频率还可以添加哪些简易功能 既然是 频率相关的,已经有输入频率了,就加个输出频率嘛。要做输出频率的话,就要考虑好频率输出范围,如果是单片机内置PWM模块,那PWM 的频率范围就是输出频率范围了。如果是采用定时器输出频率,那么输出频率范围就根据定时器的值计算了。再高级点,加个占空比,不仅频率可调,占空比也可调。另外还要考虑下,输出频率值的确定。一般由用户使用键盘输入,你要高级点的,可以使用遥控输入。

51单片机数字频率计结论 基于51单片机的数字频率计出了显示频率还可以添加哪些简易功能

基于51单片机的数字频率计(0—10MHZ) 再加两个数码管,用 T1 引脚检测频率,打开T1中断,每中断一次 加1计数,满1秒中后停止T1计数,读出T1计数器的 TH1 TL1,频率=65536 x 中断次数+TH1 HL1。前提是 选择高速单片机,即只要 T1 引脚 能够响应 10M 的频率就没有问题因为 要 计数 65536 次才 T1才会中断一次。

51单片机数字频率计结论 基于51单片机的数字频率计出了显示频率还可以添加哪些简易功能

用51单片机做的频率计为什么会有误差? 1M,似乎不太好弄,如果要求比较精确的话;100HZ~1M,换成同期:1US~10MS,周期/2=(0.5US~5MS),0.5US的脉宽.24M晶振都做不到的;检测一个脉宽起码也行四五条指令吧。用汇编:loop:JB DATA_IN,$;高电平等待JNB DATA_IN,$;低电平等待INC TIMES;脉宽数加1AJMP loop;再用定时器定时:如:10MS,记录这10MS内TIMES变化了多少次,再换算成频率;注意误差范围。频率低的话10MS得换大些。显示部分也可用定时器来做。综合以上,应该还是能做的;如能选些6T 或 1T的51单片机肯定没问题,传统的12T的估计有点难

51单片机数字频率计结论 基于51单片机的数字频率计出了显示频率还可以添加哪些简易功能

#c语言#单片机#unsigned#定时器#频率计

随机阅读

qrcode
访问手机版