《能力拓展训练》说明书-基于数字滤波的单片机仿真和C语言开发报告.doc_第1页
《能力拓展训练》说明书-基于数字滤波的单片机仿真和C语言开发报告.doc_第2页
《能力拓展训练》说明书-基于数字滤波的单片机仿真和C语言开发报告.doc_第3页
《能力拓展训练》说明书-基于数字滤波的单片机仿真和C语言开发报告.doc_第4页
《能力拓展训练》说明书-基于数字滤波的单片机仿真和C语言开发报告.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

武汉理工大学能力拓展训练说明书目录摘要i1 绪论11.1仿真软件介绍11.2数字滤波器介绍12 单片机和ad/da相关知识32.1 51单片机相关知识32.2 ad转换器相关知识42.3 da转换器相关知识53 数字滤波器设计63数字滤波器系统设计63.1 数字滤波器理论分析设计63.2 单片机电路73.3 数据采集电路83.4 数模转换输出电路93.5供电电路和参考电压93.6 数字电压表系统电路原理图104 程序设计104.1程序流程图114.2 ad转换器程序114.3 程序代码126 心得与体会15参考文献161 绪论1.1仿真软件介绍现代工业控制系统中,电路系统越来越复杂,因而带来的相互干扰也越来越强烈,模拟滤波电路已经不能满足要求,数字滤波应运而生。数字滤波器的实现过程的实现过程是把输入的模拟信号数字化,也就是由采样器对输入的模拟信号进行周期性的采样,并对每个样本进行量化和编码,即模数转换。从adc输出的数字信号送入到数字信号处理器进行处理变化,处理器输出的数字信号再通过数模转换为模拟信号,这个过程要用到dac来转换实现模拟信号的输出。1.2数字滤波器介绍proteus isis是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,该软件的特点是:(1)现了单片机仿真和spice电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、rs232动态仿真、i2c调试器、spi调试器、键盘和lcd系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。(2)支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各种外围芯片。(3)提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如keil c51 uvision2等软件。(4)具有强大的原理图绘制功能。可以仿真51系列、avr、pic、arm、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,proteus建立了完备的电子设计开发环境。在proteus绘制好原理图后,调入已编译好的目标代码文件:*.hex,可以在proteus的原理图中看到模拟的实物运行状态和过程。 proteus 是单片机课堂教学的先进助手。 proteus不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。 课程设计、毕业设计是学生走向就业的重要实践环节。由于proteus提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台。2 单片机和ad/da相关知识2.1 51单片机相关知识51单片机是对目前所有兼容intel 8031指令系统的单片机的统称。该系列单片机的始祖是intel的8031单片机,后来随着技术的发展,成为目前广泛应用的为单片机之一。单片机是在一块芯片内集成了cpu、ram、rom、定时器计数器和多功能i/o口等计算机所需要的基本功能部件的大规模集成电路,又称为mcu。51系列单片机内包含以下几个部件:一个位cpu;一个片内振荡器及时钟电路;4kb的rom程序存储器;一个128b的ram数据存储器;寻址64kb外部数据存储器和64kb外部程序存储空间的控制电路;32条可编程的i/o口线;两个16位定时计数器;一个可编程全双工串行口;个中断源、两个优先级嵌套中断结构。51系列单片机如下图:图1 51单片机引脚图2.2 ad转换器相关知识adc0809是美国国家半导体公司生产的cmos工艺8通道,8位逐次逼近式转换器。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行a/d转换。(1)主要特性: 1)8路输入通道,8位a/d转换器,即分辨率为8位。 2)具有转换起停控制端。 3)转换时间为100s(时钟为640khz时),130s(时钟为500khz时) 4)单个+5v电源供电 5)模拟输入电压范围0+5v,不需零点和满刻度校准。 6)工作温度范围为-40+85摄氏度 7)低功耗,约15mw。 (2)内部结构adc0809是cmos单片型逐次逼近式a/d转换器,内部结构如图1322所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型a/d转换器、逐次逼近寄存器、逻辑控制和定时电路组成。 图2 adc0809引脚2.3 da转换器相关知识根据对dac0832的数据锁存器和dac寄存器的不同的控制方式,dac0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式。主要性能如下:(1)分辨率为8位; (2)电流稳定时间1us; (3) 可单缓冲、双缓冲或直接数字输入; (4) 只需在满量程下调整其线性度; (5)单一电源供电(+5v+15v); (6) 低功耗,20mw。 dac0832引脚功能电路应用原理图dac0832是采样频率为八位的d/a转换芯片,集成电路内有两级输入寄存器,使dac0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路d/a异步输入、同步转换等)。所以这个芯片的应用很广泛,关于dac0832应用的一些重要资料见下图: d/a转换结果采用电流形式输出。若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。运放的反馈电阻可通过rfb端引用片内固有电阻,也可外接。dac0832逻辑输入满足ttl电平,可直接与ttl电路或微机电路连接。图2 adc0809引脚图2 adc0809引脚图3 dac0832引脚3 数字滤波器设计3数字滤波器系统设计3.1 数字滤波器理论分析设计数字滤波方法有很多种,如中值滤波、算术平均滤波、加权平均滤波,限幅滤波等等。本次课程设计我选用的是限幅滤波方法限幅滤波的基本原理是把两次相邻时刻(n和n-1)的采样值yn和yn-1相减,求出其差值,以绝对值表示,然后将这个差值与两次采样允许的最大偏差值y比较,如果两次采样值的差值超过了允许的最大偏差值y,则认为发生了随机干扰,并认为最后一次采样值yn非法,应予剔除。剔除yn后,可用yn-1代替yn;若未超过允许的最大偏差值范围,则认为本次采样值有效。可用如下公式表示:|yn-yn-1|y;则yn有效|yn-yn-1|y;则yn-1有效此算法的样例子程序如下:#define a 10 /a值可根据实际情况调整char data; /上一次的数据char filter_1()char datanew; /新数据变量datanew=get_data(); /获得新数据/滤波算法if (datanew-dataa)|(data-datanewa)return data;return datanew;该算法主要用于处理变化比较缓慢的数据,如温度、物体的位置等。使用时关键在于最大偏差值的y的选择,通常可根据经验获得,也可按照输出参数可能的最大变化速度vmax及采样周期t来决定y的值,即y=vmaxt。3.2 单片机电路单片机最小系统如下图所示,各个引脚都已经标出,而且四个i/o口都已经用排阵引出,方便外接i/o扩展用。图4 单片机最小系统使用51系列单片机at89c51,利用这个单片机进行编程,实现对输入信号的滤波。我使用了p0口作为接受ad转换的结果的端口,而p1口则输出数据到da转换器。另外还利用了p2作为控制端口,p2.0-p2.2用来控制ad转换器,而p2.3-p2.6外接四个开关,用来实现滤波方式的选择。3.3 数据采集电路由于adc0809是带地址锁存的模数转换器件,adda、addb、addc为模拟通道选择,编码为000111分别选中in0in7。ale为地址锁存信号,其上升沿锁存adda、addb、addc的信号,译码后控制模拟开关,接通八路模拟输入中相应的一路。clk为输入时钟,为ad转换器提供转换的时钟信号,典型工作频率为640khz。start为ad转换启动信号,正脉冲启动addaaddc选中的一路模拟信号开始转换。oe为输出允许信号,高电平时候打开三态输出缓存器,是转换后的数字量从d0d7输出。eoc为转换结束信号,启动转换后eoc变为低电平,转换完成后eoc编程高电平。图5 adc模数转换3.4 数模转换输出电路这里我用了da0832来进行数模转换。da0832的引脚图如下图所示:图6 dac数模转换da0832有三种数模转换方法,直通方式、单缓冲方式、双缓冲方式,因为单片机输出后可以直接进行数模转换,所以这里我采用了不需要单片机控制的最为简单的直通方式,但是da0832若用于直通方式。若用于直通方式下,则gnd均接地,而vcc和ile则接正电源。vref是参考电源。iout1、iout2是两个输出端。da0832输出的是电流,要利用运算放大器转换成电压信号。3.5供电电路和参考电压由于此次系统的芯片工作电压为+5v,所以用常用的三端稳压器lm317和lm337构成的电源系统供电,其中adc0809要提供一个准确的参考电源才能正常的工作,而lm317正好能够达到要求。图7 系统供电部分3.6 数字电压表系统电路原理图 如下是此次设计仿真的数字滤波器电路总原理图。此图总共分为三个部分,分别是采用电路adc,处理分析部分单片机,调理信号输出部分dac。图8 数字滤波器设计总原理图4 程序设计4.1程序流程图开始结束初始化ad采样量化单片机处理da转换输出图9 程序流程图4.2 ad转换器程序因为start为转换启动信号,在其上跳变时,所有内部寄存器清零,在其下跳变时,开始进行ad转换。所以设计程序时,要先让start为0,在让start为1,最后让start为0。开始采集数据后就要让oe为1,进行数据输入。同时数据采集结束时,利用查询语句,查看eoc是否为1,如果是1,则处于等待状态,如果变成1,则可以进行数据输入了。ad转换的程序如下:start = 0;start = 1;start = 0;while(eoc=0);oe = 1;a = p0;这里a是一个变量,用来存储ad输入的数据4.3 程序代码#include #define uchar unsigned char#define a 0.005#define n 11sbit oe = p20;sbit start = p21;sbit eoc = p22;uchar a;uchar bufn =0;void change()int i;for(i=0;i a ) | ( value - new_value a ) )return value;return new_value;uchar adc0808_read(void) uchar res; start = 0; start = 1; start = 0; while(eoc=0); oe = 1; a = p0; res=a; return res;void main()while(1)p1 = adc0808_read();5 仿真及结果分析通过正确的编写程序和不断调试发现,比较理想的滤波效果的仿真结果如下图所示限幅滤波的效果:图10 仿真结果限幅滤波的效果是和a值有关的,一般情况下,a值越小,则代表允许的噪声要越小,限幅滤波很适用于使幅值突变的噪声。限幅滤波适用于变化缓慢的场合,比如主要用于处理变化比较缓慢的数据,如温度、物体的位置等。使用时关键在于最大偏差值的y的选择,通常可根据经验获得。而且通过仿真过程中不断修改a的值,滤波效果会明显发生变化,通过改变信号的频率,滤波的结果也会发生明显变化,当信号的频率过高时,滤波效果会使最终的波形发生明显的失真现象。6 心得与体会通过与同学的讨论与认真计算设计分析所完成的,课程设计的任务是设计、组装并调试一个数字电压表测量系统。需要我们综合运用单片机等课程的知识,通过查阅资料、方案论证与选定;设计和选取电路和元器件;分析指标及讨论,完成设计任务。在这次课程设计中,我学会了怎样去根据课题的要求去设计电路和调试电路。动手能力得到很大的提高。从中我发现自己并不能很好的熟练去使用我所学到的高频电路知识。在以后学习中我要加强对使用电路的设计和选用能力。但由于电路比较简单、定型,而不是真实的生产、科研任务,所以我们基本上能有章可循,完成起来并不困难。把过去熟悉的定型分析、定量计算逐步,元器件选择等手段结合起来,掌握工程设计的步骤和方法,了解科学实验的程序和实施方法。这对今后从事技术工作无疑是个很好的训练。通过这种综合训练,我们可以掌握电路设计的基本方法,提高动手组织实验的基本技能,培养分析解决电路问题的实际本领,为以后毕业设计和从事电子实验实际工作打下基础。同时也让我充分认识到自己的空想与实践的差别,认识莫眼高手低,莫闭门造车,知识都在不断更新和流动之中,而扎实的基础是一切创造的源泉,只有从本质上理解了原理,才能更好的于疑途寻求柳暗花明,实现在科学界的美好畅游和寻得创造的快乐。还有就是每次在组团做试验都会感觉特别的充实,我们可以按照自己设计的电路去完成,老师也不是死板的要求我们怎么怎么,而是给了我们尽可能大的自己决定的余地,这次的元器件都是按照我们设计出来的电路参数给定的,而且每位老师都很耐心的为我们解决试验中所出现的问题,最后真心的感谢老师对我们课程设计的建议和帮助,我们才得以圆满的完成这次课程设计!参考文献1 李群芳,肖看.单片机原理接口与应用.北京:清华大学出版社,20052余永权.atmel89系列单片机应用技术.北京:北京航空航天大学出版社,203陈小忠.单片机实用接口技术子程序.人民邮电出版社,20054阎石.数字电子技术基础(第三版).北京:高等教育出版社,20035高峰.单片微机应用系统设计及应用技术.北京:机械工业出版社,2004ut2apodfxxc02gybkskcww97mrqqwhoj5tl15zt6jipyytycummtarp3v1n5luizi3xh3bhwyreko8d9g7nmzqowpjetldrw08gvs8dsdqqygc3ce7moo2tlf0jf1gk74iuxybmtivr97ckrfvqult5fn2t6mpjr6rbzvpsortzvij5nb5ndvvsr4iwr1twlfkglspzuhrjq3cmzu98euouijdlszqpmvrw9zkupxf8wfug9l2g9277g2rtipa1ypczeuqxpkbhtvdcooqozxuz3vjrzmocijym62zchmeootyes8ebmm932tbz2yo09rtszeys8zrd2yktj8l6jeazvajnfbtrylvsm6ofbftoxvrffn7owiygjlamkunxjybz5rrb7r4vsur9zpfzfmfsjhcfca37lnw2vvlrkn7r8psz1bn6oric5hu5z6hcxayqynpog8duybawqsl20csg06dh2sm8hltgpkicskrgopdpuhbj1lmpk7lydvc6nnmwl3fwhzftfvyaary7lhssxj10v3ph3y19bxyr77ib7cpzsu2tijqe3hkqkkau9kskcphkxuikvvyjzpg2yijrkqfbggovyqkuxnwi9omnjtt6qilzxtyrf7d20fbmabcfiixrqkusvnxbppfuxyq1fjskfsubkgs2duvqc9sz4jkbgn4qqv66pyoarjurnfj3txyfclzieeptwfjthpheipdfnqnr2hjqkv2dzwtmpdjqkbcxmovdsjqctjagjmdlskpgad2s0h0vmzgaht36gyuez7umank1ndreubeqdgrx0venqgnsyib2ilq3siqrnl4m56t7z8y8da5k0kupn5nzg4jvjdtffhyt82aogqkxo4vblmleiy2p7hthbho07rcfttxodydppdtqso7wxd0j6fkklgm4wodzplhtrr2xgqn13hqy59zu1gegdyqnihntavsieuefqcyfucjwd3vk5i7ykmhundmiz ut2apodfxxc02gybkskcww97mrqqwhoj5tl15zt6jipyytycummtarp3v1n5luizi3xh3bhwyreko8d9g7nmzqowpjetldrw08gvs8dsdqqygc3ce7moo2tlf0jf1gk74iuxybmtivr97ckrfvqult5fn2t6mpjr6rbzvpsortzvij5nb5ndvvsr4iwr1twlfkgls

温馨提示

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

最新文档

评论

0/150

提交评论