我下个星期要求做一个基于AT89C51系列的单片机的数字频率计设计,希望大家帮帮忙

有具体步骤的,谢谢
利用51系列单片机设计一频率计,能够实现频率、周期、脉宽和占空比的测量。用按键进行测试功能的选择。
使用proteus、keilC软件,最后有汇编程序或者C语言程序。

数字频率计单片机部分其实是好做得,无非就是用测频法(两个定时器配合,一个定时,一个计数)对付高频信号,用测周法对付低频信号(一个外部中断+一个定时器),程序量虽然有点,不过用C语言的话,也就是500行里面的事。
最难的地方在于前端模拟部分,进来的信号可不是那么听话的,有些信号幅度很小,只有几十个mV,有些幅度偏一边,比如整个波形都在正半轴里面等等,有些频率很高,比如10MHz以上,有些幅值很高,比如10几V,直接送单片机肯定翘翘了。需用模拟电路和分频电路把它们一个个调理成峰峰值5V,低电平0V的脉冲方波才可以送单片机测量。这个前端电路,特别是在频率很高的情况下,不太好做。还要考虑到精度的要求。
在这个时候,仿真软件说实在的帮不了什么忙。还得靠经验和技术,一点点试验最终完成。
PS:你不会是参加比赛吧?
这题目怎么看着眼熟啊。
这题目用汇编,要死人的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-05-15
proteus、EWB都是仿真的利器。
单片机的数字频率计设计侧重的几个方面:
单片机定时器/计数器的功能、通信(串行),软件编程(推荐KEIL uv2/3,很好很强大)。
若要求做出成品的话,还要学习一下protel的PCB制版,单片机程序烧录也是少不了的。若只是仿真的话,Proteus就可以轻松搞定了。
第2个回答  2010-05-15
单片机不是有两个定时、计数器么一个做定时用,一个计数,定时器定时一秒,计数器不停计数,当计时器到一秒的时候读取计数器的值,这样不就计算出频率了么???
第3个回答  2010-05-15
你安装个proteus吧 它能在线仿真
相似回答