便携式信号发生器及示波器设计—软件设计_第1页
便携式信号发生器及示波器设计—软件设计_第2页
便携式信号发生器及示波器设计—软件设计_第3页
便携式信号发生器及示波器设计—软件设计_第4页
便携式信号发生器及示波器设计—软件设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、四川大学锦江学院毕业论文(设计) 毕业论文(设计)题 目 便携式信号发生器及示波器设计软件设计 院 系 电子信息学院 专 业 电子信息工程 年级 2010级 学生姓名 苟 浩 学 号 100610103 指导教师 沈毅斌 III便携式信号发生及示波器设计软件设计电子信息工程专业学生 苟浩 指导教师 沈毅斌【摘 要】本设计以单片机控制技术为核心,3.2寸触摸液晶屏作为控制及显示设备,凭借基于直接式数字频率合成器的芯片AD9851作为信号源和高速AD采样芯片AD9280制作。通过编写单片机STC15F2K61S2相关控制代码,在触摸液晶屏实现功能选择,数字输入及结果显示,包括信号发生器和简易示波器

2、。信号发生器需达到输出指定频率的正弦信号并在屏幕上显示,简易示波器则需完成对数据的采集和计算并将波形及相关参数显示在屏幕上。该设计简洁便携,价格便宜,能满足大部分场合的需求。【关键词】触摸屏 单片机 信号发生器 示波器 The Design of Portable signal generator and oscilloscopeSoftware Design 【Abstract】 The design of single-chip control technology as the core, 3.2-inch LCD touch screen as the control and disp

3、lay equipment, with direct digital frequency synthesizer based chip AD9851 AD as a signal source and high-speed sampling chip AD9280 production. By writing the relevant code to the microcontroller STC15F2K61S2 in LCD touch screen function selection and results achieved, including signal generators a

4、nd simple oscilloscope. Required to achieve the specified signal generator output frequency sinusoidal signal and displayed on the screen, you need to complete a simple oscilloscope data collection and calculation parameters and waveforms and displayed on the screen. The design is simple, portable,

5、inexpensive, can meet the needs of the majority of occasions.【Keywords】Touchscreen; Microcontroller; Signal Generator; Oscilloscope;目 录1 绪论11.1 背景11.2 现状与发展11.3 论文主要工作22 方案论证32.1 单片机的通信方案论证32.2 串口收发方式的方案论证43 理论分析与计算53.1 Vpp、Vmax、Vmin的计算53.2 Vrms的计算53.3 扫频参数与晶振时间的计算64 软件设计64.1 主程序74.2 信号发生器子程序84.3 示波

6、器子程序105 硬件设计125.1 高速AD采集前置电路125.2 高速AD采样电路125.3 DDS信号源电路136 系统测试146.1 测试仪器146.2 示波器功能测试146.3 信号发生器功能测试156.4 系统整机测试157 总结以及展望16致 谢18参考文献19附 录201 绪论随着我国高速发展,信息时代已悄然来临,电子电气与数字信息深入了百姓生活中的方方面面。越来越多的基建设施开始修建并投入使用。为了降低维护人员的工作强度提高工作人员的效率,国内已经涌现出大批便携式的测量仪涉及到各个工业民用领域。数字示波器、信号发生器都是常用的检测测量仪器, 也是用处最广泛的仪器。但传统的示波器

7、及信号发生器的体积都比较大, 不像万用表那样携带方便, 一般只能在固定场合使用。而工程测量中往往不可能时时刻刻携带笨重的“台式”仪器,因此市场对手持测量仪器的操作简单、快捷,用途多样化的需求越来越明显。其操作简单、快捷,实时性强,在电子测量领域得到了广泛的应用。很好的弥补了固定测量设备灵活性差,功能单一的缺点,可以有效的完成检测及测试任务,能有效提高户外测量人员的工作效率。因此设计一种具有这两种测量功能的测量仪,体积小、如普通万用表大,质量轻、操作简单,通过触屏进行功能选择,即可实现这两种基本测量的仪器具有重要意义。1.1 背景目前仪器仪表呈现出高速发展趋势,20世纪中期以后,随着自动控制理论

8、的产生和自动控制技术的逐渐成熟,以A /D (数字/模拟转换)环节为基础的数字式仪器仪表得到快速发展。伴随着通讯、计算机、软件和新材料、新技术等的高速发展与成熟,人工智能化在线测控成为可能,使仪器走向智能化、虚拟化、网络化。数字仪器、智能仪器、个人计算机仪器、虚拟仪器和网络仪器代表了20世纪现代科学仪器发展的主流与方向。仪器仪表行业“十二五”规划要求把传感器及智能化仪器仪表摆到推动制造业转型升级的重要位置,在工信部相关资源中对传感器及智能化仪器仪表的研发及产业化予以支持【1】。我国仪器仪表行业广泛通过电子商务领域进行应用,为该行业发展做出了强有力的贡献。而随着十二五的到来,我国仪器仪表行业也必

9、将进入一个超 高速发展阶段。未来五年,仪器仪表行业总产值将达到或接近万亿元,年平均增长率高达15%。未来五年,我国仪器仪表行业将应用电子商务开拓市场,其必将成为行业持续发展的主流趋势【1】。所以便携式仪器弥补了传统仪器的不足,价格便宜,将具有更大的市场。1.2 现状与发展尽管在国家宏观调控政策的引导与控制下,我国仪器仪表行业在近些年来取得了前所未有的高速发展,然而核心技术的缺失,大量高尖端产品仍然依赖国外进口,这是我国仪器仪表行业面临的严峻考验之一。中国仪器仪表行业协会顾问董景辰曾经指出:其实很早就有人看到,现今仪器仪表行业企业小、散、乱的状况也是阻碍本行业发展的重要原因之一。但是在经济高速发

10、展时期,市场需求很大,小、散、乱企业生产的产品也都能完成销售任务,因此企业没有动力,也没有需求来改变这一现状。事实上,市场经济的无序竞争确实要为当今仪器仪表行业的一部分现状买单。然而,由于企业实力不强,造成在技术研发和制造生产过程方面的人才与资金投入严重不足,致使国内产品和国外相比还有很大差距却更是主要的原因【2】。1、 加大技术研发和制造投入我国仪器仪表虽然占有市场的大量份额,但主要聚集在低端市场。大部分高端精密仪器仍然需要进口,大部分技术和产品研发还处在跟踪国外的状态。为了面对国际市场竞争的残酷性,仪器仪表企业必须加大技术研发和制造投入,掌握核心技术这样才能在残酷的市场中获得一席之地。2、

11、 规范仪器仪表行业当今我国大部分仪器仪表企业主要面向低端民用市场,企业多,技术难度低,导致在低端市场竞争激烈,甚至出现恶性竞争,产品质量无法保证。因此需要规范仪器仪表行业使仪器仪表行业走向良性发展。3、 政策的大力支持随着国家大力振兴发展高新产业、推进两化融合,国民经济中各行业自动化程度逐步提高,对仪器仪表的需求持续增长,故仪器仪表行业虽然也受到国内外经济疲软的影响,但受到的冲击程度较小,行业在整体上仍保持了平稳增长【3】。1.3 论文主要工作 本设计以2块单片机(分别用A和B表示)STC15F2K61S2最小系统为核心,以高速AD采集模块,DDS信号发生器以及3.2寸触摸液晶屏作为外围器件。

12、A的最小系统连接3.2寸触摸屏并通过串口与B相连,B连接高速AD采集模块(AD9280)和DDS信号发生器(AD9851)。系统上电后,通过触摸显示屏选择功能,A接受到命令后传给B,由B驱动相关电路完成采集或信号输出工作。本文主要介绍便携式发生器及示波器的软件设计、实现过程。 第一章 绪论。主要介绍了便携式信号发生器及示波器的开发背景、国内外发展现状、论文主要工作。第二章 方案与论证。对单片机通信方式及部分代码的编写方式进行功能分析,设计几种方案,并进行其可行性、技术路线、关键技术以及技术难点与解决方案的分析,最终选出最可行的方案。第三章 相关计算公式理论。主要介绍示波器的有效电压,频率,幅值

13、等的计算。第四章 软件设计。先进行单片机程序设计,程序编好后就进行对其进行测试。第五章 硬件设计。先进行原理图的设计,用AD画出原理图,再进行PCB的设计,但一定要注意元器件参数与测试方法的选择,最近进行电路板的焊接。第六章 系统的调试与结论。调试软件,并对系统进行整合,观测项目结果。2 方案论证本设计基于STC15F2K61S2单片机,高速AD9280及DDS信号发生器AD9851实现信号发生器和简易示波器设计。在触摸液晶屏实现功能选择,数字输入及结果显示;信号发生器功能实现输出指定频率的正弦信号并在屏幕上显示;简易示波器功能完成对数据的采集和计算并将波形及相关参数显示在屏幕上。软件流程图如

14、下图所示。图1 软件流程图系统上电后,单片机A接受到的来至触摸屏的控制信号和控制参数通过串口传给单片机B,单片机B在根据相关命令驱动相关电路并将结果回执给单片机A,单片机A对回执数据处理后显示在屏幕上。2.1 单片机的通信方案论证单片机的通信主要完成单片机与单片机或单片机与其他外设的数据交换。要求传输稳定占有很少的系统或硬件资源。当前单片机主机从机之间的通信主要有SPI、UART、I2C三种方式。2.1.1 SPI(Serial Peripheral Interface-串行外设接口)SPI总线接口系统是一种同步串行外设接口,它可以使MCU与多种外围设备以串行方式进行通信以完成信息流的交换。主

15、要优缺点如下1、传输速度快,为全双工通信其传输速度较I2C快很多能达到几Mbps。2、虽然SPI传输速度较快,但他占用了较多的I/O口,且没有应答机制无法确认是否完成接收。接收框图如下图所示。图2 SPI接收结构图2.1.2 I2C内部整合电路用于MCU及其外围设备的连接。是当今微电子通信和电子控制领域中使用最广泛的一种总线标准。它是同步通信的特殊形式中的其中一种,I2C具有接口线少,控制方式简单有效,器件封装形式较小,通信速率较高等优点。但本设计中STC15F2K61S2单片机不具备I2C硬件接口,只能通过代码软件模拟通信方式,代码工作量较大。因此不采用此方式进行通信。2.1.3 UART(

16、Universal Asynchronous Receiver/Transmitter-通用异步收发传输器)UART是一种通用串行数据总线,用于异步通信。该通用串行总线为双向通信,可以实现全双工传输和接收。且大部分单片机都带有1个或多个UART。UART通信方式代码简单,传输效率高,且只占用2个I/O口,其性能指标,与简单的代码设计完全能满足本次作品设计所以在本设计中我选择UART方式进行通信。2.2 串口收发方式的方案论证串口收发方式主要有中断方式和查询方式,中断方式比较适合处理具有随即特性的事件,事件发生后向cpu提出申请,然后cpu会保存当前的任务转去处理事件。编程时采用查询方式则需要程

17、序不断查询标志位来确定事件是否已经发生,而中断方式要编写中断服务子程序来处理中断事件。中断方式和查询方式其区别简单总结如下图所示图3 查询与中断方式总结图中断方式与查询方式相比能节约系统开销不浪费CPU资源,但在本设计中主从机串口不仅都用来发送命令数据也都有接收命令数据且数据的收发时间段是已知的。为方便代码编写,明确程序流程。在本系统中查询方式与中断方式相比系统开销相差无几。综上所述,本次设计采用查询方式设计以方便代码的编写。3 理论分析与计算本设计主要通过高速AD采样实现便携式示存储波器功能,便携式示波器需要完成对波形常见参数的计算包括Vpp、Vmax、Vmin、Vrms。其中不同波形的Vr

18、ms计算不同且较为复杂。3.1 Vpp、Vmax、Vmin的计算AD9820为8位高速AD芯片,量程为02V,本设计加入了前置梳理电路使量程变为-5V+5V,模数转换后值为0255。因此可计算出分辨率为10/256=0.0390625V。在值为127时输入电压为零。大于127时输入电压为正,小于127输入电压为负。Vmax的值为AD采集数据中对应的最大数值当Vmax大于127时其值为(最大采集数值-127)*0.0390625。小于127时其值为最大采集数值*0.0390625-5。同理Vmin为值为AD采集数据中对应的最小数值当Vmin大于127时其值为(最小采集数值-127)*0.0390

19、625。小于127时其值为最小采集数值*0.0390625-5。Vpp为峰峰值其计算方法为Vpp=Vmax-Vmin (1)3.2 Vrms的计算Vrms指交流电的有效值是根据电流的热效应规定的让交变电流和直流电通过同样的电阻,如果它们在同一时间内产生的热量相等,就把这一直流电的数值叫做这一交流电的有效值简而言之就是周期电源中用运算平均功或平均能之大小值,称为有效值。有一周期T的交电压,在一周期时间內对一负载R所做的功为【5】 (2)而在同一時間直电压V对负载R所做的功為 (3)两者做功相同则有 (4)变换得 (5)这个电压即为有效电压也称均方根值。本设计中考虑到单片机的性能只对正弦波、三角波

20、、方波进行Vrms计算,从软件设计上让系统自动判断波的类型较为复杂,所以当用户观察到波形后手动选择计算类型计算相关参数。正弦波的有效值为 (6)三角波的有效值为 (7)方波的有效值为 (8)3.3 扫频参数与晶振时间的计算本设计中选用的晶振为24MHz,且STC15F2K61S2是1T单片机此时1时钟周期等于1机器周期,但在本设计中为方便计算并减小误差定时器任然选用12T模式因此可根据时钟晶振的振荡频率计算出机器周期,因此一个计数周期T=1/(24Mhz/12)=0.5us (9)扫频模式中需要用户输入起始频率、终止频率、步进及扫频时间这些相关参数。步进次数=(终止频率-起始频率)/步进,步进

21、时间=扫频时间/步进次数。通过定时器0的多次定时计数即可确定时间进行相应的幅值最终完成扫频功能。4 软件设计在硬件的基础上对软件进行设计,系统设计要求包括两大功能简易信号发生器和简易示波器用户可以根据需要自行选择相应的功能。其中简易信号发生器要求用户能随意选择模式或更改参数,简易示波器要求能进行波形显示、部分参数显示、存储、时间轴可调等。以上功能也是相关模块的基本功能,实现这些功能使得系统更加人性化更具有实用性。因此根据系统软件设计要求将软件划分为:信号发生器、简易示波器两大模块。4.1 主程序主程序完成系统初始化并等待用户进行功能选择,其中初始化包括初始化触摸显示屏、串口等。图4 程序流程图

22、系统上电随即开始运行进入主程序,进入主程序后先开始初始化,初始化包括整个系统所需要的一系列外设,最先开始初始化触摸显示屏随后是串口。初始化完成后系统将功能显示输出在屏幕上等待用户进行功能选择。选择相应功能后即进入相应的子模块。主要(关键)代码:main() spistar() ;/模拟SPI初始化Lcd_Init(); /tft初始化uart_init(); /串口初始化LCD_Clear(WHITE); /清屏BACK_COLOR=BLACK;POINT_COLOR=WHITE; kaishijiemian();while(1) Convert_Pos(); /检测触摸屏 if(tp_pix

23、lcd.x87) & (tp_pixlcd.x200) & (tp_pixlcd.y100)&(tp_pixlcd.x290)&(tp_pixlcd.y320) tp_pixlcd.x=0;tp_pixlcd.x=0; a=a*10; LCD_Fill(100,0,239,50,WHITE); LCD_ShowNum(100,20,a,10); 该模块的程序过于冗长,这里只简要介绍键盘,与频率字转换代码。用户通过屏幕上的键盘输入参数,此段代码程序即完成此功能记录下每一个用户按下的键值依次向左移位即得到用户输入数据,输入的数据通过频率转换程序发送给下位单片机,下位单片机接收到数据后即开始相应的工作。此处的频率转换字代码主要是为了方便串口传输。4.3 示波器子程序当用户在功能选择界面选择简易存储示波器时即进入示波器子程序。本程序主要完成三种功能,分别是波形显示、存储、显示上次波形。其中波形显示能完成时间轴4倍放大与缩小,并计算部分参数。存储将采集的数据信息存入EEPROM以便在显示上次波形功能中完成显示。图6 程序流程图用户选择示波器功能进入示波器子程序,该子程序仍有波形采集与读取保存波形两大功能,前者

温馨提示

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

评论

0/150

提交评论