低频函数发生器小论.doc_第1页
低频函数发生器小论.doc_第2页
低频函数发生器小论.doc_第3页
低频函数发生器小论.doc_第4页
低频函数发生器小论.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

低频函数发生器 摘 要:函数发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。本设计是基于C8051F410单片机设计的低频函数发生器,可产生三角波、方波、正弦波,其波形的频率、峰-峰值可以通过程序控制改变。关键词:信号发生器;单片机;波形0 引 言在电子系统中经常需要采用频率和幅度可调的低频信号发生器。但市面上能看到的仪器在频率精度、带宽、波形种类及程控方面都已不能满足许多方面实际应用的需求。本系统可以产生正弦波、方波、三角波,其频率范围为0.1Hz100Hz,步进0.1Hz,峰-峰值范围为0V20V,步进0.1V;系统通过LCM3310显示屏显示其输出波形名称、频率、峰-峰值;并可通过按键改变其输出波形、频率、峰-峰值;通过串口与上位机通信,并实时显示及改变输出波形、频率、峰-峰值。该低频信号发生器具有低功耗、程控性、高稳定性、结构简单等特点。1 基本原理图1 低频函数发生器系统框图系统框图如图1所示,C8051F410单片机是系统的核心控制芯片,通过其IDAC功能模块和定时器模块产生波形信号;波形输出模块主要是将核心控制芯片的IDAC输出的电流信号转换为电压信号,并将其放大,达到设计指标;键盘输入模块用于调整波形名称、频率、峰-峰值;NOKIA3310显示屏为该系统的LCM显示模块,用于显示输出波形名称、频率值、峰-峰值;串口通信模块实现了与PC的实时通信。用户既可以通过系统按键调节低频函数发生器的输出波形、频率、峰-峰值,又可以通过PC机界面调整低频函数发生器输出波形的参数并显示。为了减小电源纹波噪声的干扰,本系统采用线性稳压电源作为供电电源,为系统提供+5V和15V直流电压。*指导教师:吴兴波(1964-),男,吉林通化人,吉林化工学院副教授,主要从事电子技术方面的研究. 联系电话2 硬件电路设计2.1 主系统电路设计C8051F410内部包含一个低压降稳压器(REG0)1。从VREGIN引脚输入到REG0的电压可达5.25V。REG0的输出可以用软件选择2.1V或2.5V。当被使能时,REG0的输出连到VDD引脚,为微控制器核供电,并可为外部器件提供电源,稳压器的输入(VREGIN)和输出(VDD)与地之间都应接入一个起保护作用的旁路电容(4.7uF+0.1uF)。键盘电路由五个按键组成,分别为“波形选择”、“模式选择”、“频率+10Hz(峰-峰值+10V)”、“频率+1Hz(峰-峰值+1V)”、“频率+0.1Hz(峰-峰值+0.1V)”。波形按键用于选择输出波形信号,可以选择正弦波、方波、三角波;模式按键用于选择需更改波形的频率、峰-峰值等参数,+10、+1、+0.1按键用于在模式选择确定的基础上更改参数值,分别在原来基础上+10Hz/+10V、+1Hz/+1V、+0.1Hz/+0.1V,当参数超出设定的最大值时参数变为当前数据减去设定的最大值。NOKIA3310显示屏用于显示波形名称、频率、幅值及模式提示标志。电路如图2所示。图2 主系统图2.2 直流稳压电源设计图3 直流稳压电源电路图电路图如图3所示,市电经变压器降压后通过整流桥整流和电容滤波,输入到7815和7915三端稳压块稳压,分别得到+15V和-15V的电源。其中电容C9、C10、C12、C13用于储能滤波;电容C8和C15用于抵消输入线较长时的电感效应,以防止电路产生自激振荡;C11与C14用于消除输出电压中的高频噪声。+5V电源工作原理与+15V产生原理相同,其输入电源引用了+15V电源。2.3 信号放大电路设计电路图如图4所示,设计中,单片机IDAC模块会产生02mA的电流信号,其经过电阻R3转换成02V的电压信号。经过电压跟随器LM358N(1)后增大电流-电压转换电路的输出阻抗。LM358N(2)构成一个差分比例放大电路,调节电阻R3与R8的值相等,参数对称,则差分放大电路的输出 (1)调节电阻R6,使Ui2的电压为1V,通过差分放大电路消除直流分量。同时调节电阻R3和R8的阻值,使放大倍数为10倍,则输出电压的峰-峰值可达到-10V10V,达到设计指标。 图4 信号放大电路2.4 串口通讯模块设计C8051F410单片机与PC的接口电路中采用芯片MAX232。具体电路如图5所示。图5 串口电路由1、2、3、4、5、6脚和4只电容构成电荷泵电路,产生+12V和-12V两个电源,提供给MAX232串口电平。芯片工作中,将单片机输出的0/5V信号转换成极性相反,电压为+/-10V与PC机串口信号兼容的电压信号2,完成单片机与PC机的数据交换。本系统中,单片机会将波形名称、频率、峰-峰值等数据通过串口通讯传送给PC机,同理,PC机也会将其设定好的数据传送给单片机,形成实时的数据交换。3 程序设计本设计中,应用到C8051F410单片机的定时器及IDAC产生频率和幅值稳定的波形,通过UART完成与上位机的通信。系统中,为了减少程序的运行周期,在参数调整时,计算对应波形数据并存入到存储波形数据的数组中,由于C8051F410内部数据存储器太小,但是有位于外部数据存储器空间的2048字节RAM,所以将数组存放到外部数据地址空间中,用数据调用方式替代数据的计算方式。系统程序流程图如图6所示:图6 程序流程图系统中,为了减少程序的运行周期,在参数调整时,计算对应波形数据并存入到存储波形数据的数组中,并将数组存放到外部数据地址空间中,用数据调用方式替代数据的计算方式3。由于单片机的执行效率很低,在单片机的程序设计中一般不会执行数学函数的计算,如sin()函数的计算。但是在一些特殊情况下,不得不用一些数学函数,因此将其数学函数的计算放到函数初始化用计算,将连续的函数进行离散化。并将计算结果存入数组中,将后续程序中数学函数计算改成数据的调用4。在低频函数发生器中。波形数据的产生就是运用了这一理论。正弦波信号离散化数据产生代码如下:for(i=0;iPOINTS;i+)/正弦波数据初始化WAVE_TABi=(int)(2047*sin(2*Pi*(float)(i)/POINTS)/2000*voltage)+2048;三角波信号离散化数据产生代码如下:for(i=0;iPOINTS/2;i+) /三角波数据初始化 WAVE_TABi= (int)(float)(i)*4095/(POINTS/2)-2048)/2000*voltage)+2048;for(i=POINTS/2;iPOINTS;i+)WAVE_TABi=(int)(2047(float)(float)(i)-POINTS/2)*4095/(POINTS/2)/2000*voltage)+2048;方弦波信号离散化数据产生代码如下:for(i=0;iPOINTS/2;i+) /方波数据初始化 WAVE_TABi= (int)(double)(2047)/2000*voltage)+2048;for(i=POINTS/2;iPOINTS;i+)WAVE_TABi= (int)(double)(-2047)/2000*voltage)+2048;4 PC机界面设计利用串口进行通信,除了通信所需要的硬件与线路外,更重要的是要有一套相关的通信软件。尽管市面上有许多商品通信软件,但很多情况下商品通信软件满足不了实际工作的需要。因为大多数的通信软件都是用一种定制模式,虽然可以完成收发文件等众多功能,但还是不能满足系统开发的需要。为方便软件开发人员编写串口通信程序,微软公司Microsoft Visual Basic开发软件推出了MSComm控件,使串口编程变得非常容易。本设计中,采用Microsoft Visual basic 6.0编写了带串口通信的低频函数发生器用户界面5。通过PC界面,更容易观察到低频函数发生器输出信号的参数,并可通过PC机改变输出信号的参数。用户界面如图7所示。图7 低频函数发生器PC机用户界面低频函数发生器用户界面设计中,应用到数据拆分与合并的技术。单片机发给PC机的数据是一整串数据,它包含了波形名称、频率、峰-峰值等数据,在用户界面中中需要显示波形名称、频率、峰-峰值时,就要将数据串拆分出各部分对应的数据并显示出来。反之,当用户界面修改了参数,PC系统会将波形名称、频率、峰-峰值等参数合并成单片机正确识别的格式,才能形成正确的通讯。5 结论本系统所产生的三种波形分别为正弦波、方波、三角波。频率范围在0.1Hz100Hz,峰-峰值范围在0V20V内可调。系统通过LCM3310显示屏显示输出波形名称及波形的频率、峰-峰值,并可通过按键改变输出波形及其频率、峰-峰值。并编写PC机控制软件,实现了本系统与PC机的通信。以C8051F410为核心的低频函数发生器实现了正弦波、方波、三角波的输出。其频率实现了在0.1Hz100Hz之间频率步进0.1Hz,峰-峰值在0V20V内步进0.1V。通过测量,频率误差小于0.05Hz,峰-峰值误差小于0.04V。与上位机的通信正常,达到了设计指标。参考文献1 许玲,程小琰.C8051F020单片机的特点及其在通信系统中的应用J.河南机电高等专科学校学报.2006(06)2 吴兴中,欧青立.一种PC与单片机多机RS232串口通信设计J.国外电子测量技术. 2009(01)3 童长飞编著.C8051F系列单片机开发与C语言编程M.北京航空航天大学出版社, 20054 曾志海,陈欣卓,胡瑞华.基于C8051F005的数字正弦函数发生器的设计J.自动化仪表. 2006(05)5 徐永洪,符影杰,江峰,范献林.基于VB 6.0的串口通信实现J.仪器仪表用户. 2004(01)Low Frequency Function GeneratorLIU Chang-sheng , WU Xing-bo*(Class-0803, Major of Electronic and Information Engineering, College of Information &Control Engineering)Abstract: Function generator is always used for signal generator, it is widely applied in the field of electronic circuit, automatic control system and teaching experiment. This design is

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论