1、该方案很好的结合了FPGA芯片的可编程性和STM32的高速性。但对两者的通信设计要求有较高的要求。系统实现结果虽然精度高,但复杂性也高,实现难度大。方案三:基于单片机STC12C5a60S2作为设计核心的数字频率计,辅以数字译码和显示电路单元构成整个工作系统。对不同频率范围物理信号进行频率测定。单片机具有更为灵活和便于调试编程程序且引脚多。STC12C5a60S2是一种集合于CPu、RAM、ROM、定时器、计数器以及多功能1/0端口等多种元件,拥有40种引脚、32种外部输人喻出1/0端口、2种外中断口、2个16进制可编制程序语音的定时计数器和2个全双工串行通讯端口。运行效率高,其金振频率可达2
2、4兆赫兹,运作周期则为500毫秒。单片机频率计不仅反应快,精度高,操作也非常人性化,而且应用范围大&带宽大以及成本低廉、小巧方便。它可以用来测量一定电压范围内正弦波、三角波及方波。本设计是基于单片机为主控制电路,配合着一定的外围芯片及电路而设计的一款处理数字信号的高频频率计,测量范围能达到,其新颖之处在于运用了简单高效的测频方法,采用自动分频的方式使基于单片机的频率计能够在低成本的前提下完成较高精度的高频数字信号的频率测量。综合以上三种方案,选择方案三。2系统理论分析与计算2.1频率和周期测量的分析与计算 2.1.1 频率的定义 据频率的定义,某一信号在T秒内重复变化N次,则该信号的频率F为:
3、F=N/T2.1.2频率的测量方法分析根据2.1.1的公式,我们可以得到频率计算的几种方法。电子计数式方法主要包括脉冲数定时测频法(M法)、脉冲周期测频法(T法)、脉冲数倍频测频法(AM法)、脉冲数分频测频法(AT法),脉冲平均周期测频法(M汀法)和多周期同步测频法等。(1)脉冲数定时测频法(M法):记录时间(TC)内确定被测物理信号的脉冲数量(Mx),则频率值F=M/TC。(2)脉冲周期测频法(T法):物理信号在一个运行周期T以内,记录频率信号的变化次数M,则频率值F 为 F= M/ T(3)脉冲数倍频测频法(AM法):本方法是为解决脉冲数定时测频法(M法)在测定低频物理量精度低问题中总结出
4、来的。利用A倍频将被测物流信号频率放大至原来的A倍,则频率值FA/To(4)脉冲数分频测频法(AT法):本方法是为解决脉冲周期测频法,在测定高频物理量精度问题中总结出来的。利用A分频将被测物理信号的周期延长至原来的A倍,则频率值(F)为=AM。(5)脉冲平均周期测频法(M/T法):本方法以Tc表示闸门时间,利用两个计数仪表分开记录被测物理信号的脉冲数量F和标准物理信号的脉冲数量(M),则频率值F=F M/M(6)多周期同步测频法:本方法同样以TC表示闸门时间,以Td表示同步门控时间,利用计数仪表实现对物理信号频率值的测定,频率值(Fx)为F= F2.1.3采用脉冲分频测频法测量频率综合考虑以上
5、计算方法,采用(4)的脉冲分频测频法(AT法)来解决频率的测量问题。对高频部分采取外部分频的方法,将频率用外部分频电路将频率降低到单片机能处理的频率,以1s为阀值时间,对正弦信号频率的变换次数进行计数。按方法(4)的公式算出信号的频率。2.2时间间隔测量的分析与计算2.2.1 时间间隔根据题目是的说明,题目的时间间隔是指A、B两路同频信号之间的时间间隔T2.2.2 时间间隔测量的分析与计算将两路同频周期方波信号A和B进行异或,得到一个方波的波形,对所得波形进行低通滤波,整流后达到一条与时间间隔在数值上成正比的直流信号。对信号进行24位AD采集,这里的AD采集芯片为24位的HX711芯片。采样后
6、把数据输送到单片机,进行处理后在显示器上输出。即可达到问题所需的测量结果。2.3脉冲信号占空比测量的分析与计算2.3.1脉冲信号占空比测量的分析与计算通过单片机对信号进行周期的初次测量,判断频率是否超过200KHz,如果没有超出范围,则由单片机直接进行脉宽测量,并计算占空比。否则,需对信号进行低通滤波,通过HX711芯片进行24位AD采集,采集的数据将与原信号的占空比成正比,最后由单片机对采集数据进行数据处理,并把结果在5110液晶显示屏上显示。至此,问题的脉冲信号占空比测量即可完成。3电路与程序设计3.1电路的设计3.1.1系统总体框图图3-1-1 系统总体框图系统总体框图描述:以上基本设计
7、原理图就是以STC12C5A单片机为设计核心的高精度频率计设计系统总体框图。将被测物理量信号进人到频率测量模块,此模块功能主要为完成题目所需的测量要求服务。然后将处理的信号进人到单片机的计数器和定时器,并对被测物理量信号频率进行计数。以预先已编好程序实现单片机自动调制测定的量程显示出测定频率,并将数据结果于数字显示电路当中显示,这里采取5110液晶芯片进行显示。据此原理分析,该系统的设计核心基础为单片机,系统具有所应用的元件较少且电路设计简便的优点,最后的调制过程只需将程序设定编程稍作修改即可实现对不同频率范围内的物理信号频率测定和输出显示的过程。完全可以满足题目的设计要求。3.1.2频率测量
8、模块子系统框图与电路原理图1、频率测量模块子系统框图图3-1-2 频率测量模块子系统框图2、频率测量模块1频率和周期测量电路图3-1-3 频率和周期测量系统电路图3、频率测量模块2时间间隔测量系统电路图3-1-4 时间间隔测量系统电路图4、频率测量模块3脉冲信号占空比测量系统电路 图3-1-5 脉冲信号占空比测量系统电路图3.1.3控制器模块子系统框图与电路原理图1、控制器模块子系统框图图3-1-6 控制器模块子系统框图2、控制器模块子系统电路图3-1-7 控制器模块子子系统电路图3.1.4电源模块电源由变压部分、滤波部分、稳压部分组成。为整个系统提供5V或者3.3电压,确保电路的正常稳定工作
9、。这部分电路比较简单,采用稳压芯片即可实现。图3-1-8 电源模块子子系统电路图3.2程序的设计3.2.1程序功能描述与设计思路1、程序功能描述:根据题目要求软件部分主要实现数据的采集和显示。(1)数据采集功能:对电路对信号的频率和周期的测量结果采集到单片机。(2)显示部分:显示信号的频率。2、程序设计思路:程序设计主要分为三部分,数据采集,数据处理和结果显示。数据的采集分为直接输入和AD采集两种。在频率周期测量部分,采取直接把经过分频的方波信号输入到单片机进行处理,而时间间隔测量则采用AD转换来获得。数据处理则把采集回来的数据经过运算得出题目所需要的结果。显示模块块即把经过处理后显示的结果在
10、液晶版上显示出来。3.2.2程序流程图1、主程序流程图图3-2-1 主程序流程图2、频率和周期测量子程序流程图图3-2-2 频率和周期测量子程序流程图3、时间间隔测量子程序流程图图3-2-2 时间间隔测量子程序流程图4、脉冲信号占空比测量子程序流程图 4测试方案与测试结果4.1测试方案(1)软件仿真:图4-1-1 频率和周期测量仿真图图4-1-2 时间间隔测量仿真图(2)软硬件联合调试方案过程图片:图4-1-3 软硬件联合调试过程图4.2 测试条件与仪器测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。测试仪器:高精度的数字毫伏表,模拟示波器,数
11、字示波器,数字万用表,指针式万用表,信号发生器。4.3 测试结果及分析4.3.1测试结果(数据) 表格1 频率测量数据记录表 实际值峰峰值1Hz500Hz100KHz500KHz1MHz20MHz20mV6Hz510Hz1000014Hz4999987Hz9999932Hz20000256Hz50mV4Hz523Hz1000017Hz4999993Hz10000064Hz20000000Hz250mV517Hz5000023Hz500mV3Hz1000002Hz5000017Hz750mV1000004Hz5000014Hz1000mV1000000Hz4999994Hz4.3.2测试分析与结
12、论根据上述测试数据,由此可以得出以下结论:1、在低频部分,频率测量误差较大。由于阀值时间设计为1秒,在低频部分时,会对采集计数产生较大的误差。2、在中高频部分,频率测量值稳定,且精度达到,满足设计要求。3、在输入信号峰峰值较小时,信号的测量值误差较大,这是由于测量信号幅值小对测量产生较大误差。综上所述,本设计达到设计要求。5 参考文献1李全利.单片机原理及接口技术.第二版高等教育出版社.20092郭天祥.51单片机C语言教程.北京工业出版社.2009 3 李群芳.单片微型计算机与接口技术.电子工业出版社.20074 周航慈.单片机程序设计基础.北京航空航天大学出版社.20016 心得与体会 本
13、次比赛过程是难忘的,在不断的调试当中,你会发现电子真是一件有趣的事情。当然,在比赛过程中收获最大的还是队友间的合作精神。这次的电子设计大赛,我们选着的题目是数字频率计,对电路的要求非常高,所以负责调试的队友的任务异常艰巨。每天晚上都需要调试到深夜,但我们依然没有放弃比赛,在一次一次的相互鼓励和支持下,坚持到比赛结束,完成了比赛。希望本次的作品能获得好成绩!附录1:电路原理图附录2:源程序/*程序1部分代码*/#includestc12c5a.h#include nokia_5110.hbmp_pixel.h#define delay_time 25767sbit s2=P12;sbit s1=
14、P11;sbit s0=P10;sbit zm1=P15;unsigned char fp;unsigned int zmshijian=0,jishu=0;unsigned char ge1,shi1,bai1,qian1,wan1,shiwan1,baiwan1,qianwan1,wanwan1;bit a=1;unsigned long pl=0;unsigned char code shu=16,17,18,19,20,21,22,23,24,25;void main() zm1=1; LCD_init(); /初始化液晶 LCD_clear(); s2=1;s1=1; s0=1;TM
15、OD=0x25; /定时器t1:8位自动重装,计数器t0:16位 TH1=0x38; TL1=0x38; TH0=0; TL0=0; EA=1; ET1=1; ET0=1; while(1) LCD_write_chinese_string(2,1,12,6,11,2); ge1=pl%10; shi1=pl%100/10; bai1=pl%1000/100; qian1=pl%10000/1000; wan1=pl%100000/10000; shiwan1=pl/100000%10; baiwan1=pl/1000000%10; qianwan1=pl/10000000%10; wanwa
16、n1=pl/100000000; pl=0;/*程序2部分代码*/sbit dt=P14;sbit sck=P15;sbit zm2=P16;unsigned long addat=0;unsigned char ge2,shi2,bai2,qian2,wan2,shiwan2,baiwan2,qianwan2;void initad() unsigned char j=0,i=0; dt=1; sck=0; while(dt); for(;i26;i+) sck=1; j+;j+; 附录3:主要元件清单序号名称数量备注1电压比较器MAX9615进行电压比较2计数器74LVC161计数3数据选择器74LS151数据选择4异或门74LS86构建与非门二极管6整形、稳压低功耗肖特基的TTL非门74HC04724位A/D转换器HX711模数转换
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1