




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、changchun institute of technology基于单片机双通道的多波形发生器double channel waveform generator based on microcontroller设计题目: 基于单片机双通道的多波形发生器 学生姓名: 学院名称: 专业名称: 班级名称: 学 号: 完成时间: 2011年7月6号 2011 年 7月 6 日组员: 基于单片机双通道的多波形发生器摘要:利用单片机控制灵活的特点,采用软件方式实现信号生成,系统采用查表法基本工作原理,使用片内rom 波形查询表实现相幅转换. 系统采用 80c51 单片机实现数据处理, dac0832 实
2、现d/ a 转换, 采用拨码开关设置频率的参数,采用按键选取波形。使用led七段数码管作为波形的代号。实现了正弦波、方波、三角波信号生成、幅值和频率调节,各种波形信号的参数控制,根据按键的设置可以同时输出两列波。关键词: 查表法,数字频率合成技术,单片机,可调波形,双通道引言 信号发生器输出的常规波形,常应用于电子电路的性能测试和参数测量。但常规的波形发生器一般是只能同时产生一种可控的波形,为此设计一种基于单片机控制的信号波形发生器,以满足设计需求。一、设计方案论述:本课题的设计方案有四种: (1)采用函数信号发生器icl8038集成模拟芯片,它是一种可以同时产生方波、三角波、正弦波的专用集成
3、电路。但是这种模块产生的波形都不是纯净的波形,会寄生一些高次谐波分量,采用其他的措施虽可滤除一些,但不能完全滤除掉。 (2) 传统的直接频率合成技术(ds)。该类方法能实现快速频率变换,具有低相位噪声以及所有方法中最高的工作频率。但由于采用大量的倍频、分频、混频和滤波环节,导致其结构复杂、体积庞大、成本昂贵 ,而且容易产生过多杂散分量。 (3)锁相环式频率合成器( pll)。该类技术具有良好窄带跟踪特性,可选择所需频率信号,抑制杂散分量,且省去大量滤波器,有利于集成化和小型化。但由于锁相环本身是个惰性环节,锁定时间较长,因而频率转换时间较长,且由模拟方法合成的正弦波的参数(如幅度、频率和相位等
4、)都难以定量控制。 (4)直接数字式频率合成器(direct digital frequency ,dds)。该类方法具有高频率稳定度、 高频率分辨率以及极短的频率转换时间。此外 ,全数字化结构便于集成 ,输出相位连续,频率、 相位和幅度均可实现程控 ,而且理论上能够实现任意波形。经综合比较,第四种方法课通过要求的单片机实现程序控制,程序简单。因此本实验采用第四种方案二、系统工作原理 利用单片机的片内rom 存储所需的信号波形相位幅度值(又称波形表),根据外电路的输入信号利用查表方式查找片内roma中相应地址的相位幅度值。将输 图1出的八位二进制数据进行d/a转换,i/v转换后输出。 根据正弦
5、信号波形的频率和相位在波形表中查找相应的响应点,由于输出的常规波形都具有周期性,波形的产生以正弦波为例:因其周期性,因此只需要设计一个完整的周期,信号的输出部分采用了d/a转换,因此为了适应d/a转换的特征,将正弦函数波形整体上移,时期最低点的值为0,如上图1所示。 d/a转换的最大输入值为255,因此对于周期函数,需要采样的点数最多不超过256个,本设计中采样点数设置为256,相位累加器的数值由累加器a的值传送,将a中的值作为偏移相位值,送还到指针,通过指针查找相应相位的幅度值,并通过p0口输出到d/a转换器转换成相应的模拟信号。系统整体原理框图如下所示:键盘扫描单 片 机 8051 led
6、数码管d/a转换波形输出 图2-1 系统原理方框图三、硬件设计及原理3.1主控电路设计单片机是整个波形发生器的核心部件,本次设计采用了应用广泛的mcs-51系列的at89c51单片机。单片机在整个系统中的作用是形成扫描码,进行键值识别、键处理、参数设置;形成显示段码;形成波形的数字编码,并输出到d/a接口电路。拨码开关输入的值为查找一个值的周期,因此通过拨码开关实现波形周期的设置。主控部分及时钟复位电路、变频电路设计原理图如图3.1所示: 图3.13.2 d/a转换电路设计 d/a部分本设计采用adc0832芯片实现,该芯片输出量是电流值,因此需要通过一个高阻抗的线性运放实现i/v(电流到电压
7、)转换实现电压的输出。由于本设计是面向双通道设计,所以需采用两列da装换同时输出ad部分如图3.2所示 图3.2 为实现不同波形的同时产生,软件实现时采用复合查表方式。由于查找表输出的速度很快,因此输出波形的可以近似成连续波形,在世博其上显示的波形则为模拟信号的波形图。 例如为同时输出正弦波形和三角波形,在执行完一次正弦波形查找输出操作后紧接着又执行一次三角波的波形查找操作,由于信号输出的端口使用的是同一个端口,又要能同时输出两种信号波形,因此采用两个dac0832芯片通过总线接入到p0口,使用p3.7输出的信号作为dac0832的片选信号,为实现该端口的任何一种状态均能选择到一个芯片,因此该
8、端口的信号一个直接接到一个dac0832的cs端,另一个通过一个反相器接入到另外一个dac0832的cs端。经运放实现i/v转换后的电压值可以直接输出到示波器观察到相应的波形情况。3.3 键盘/显示接口电路设计 因为本设计按键较少,所以键盘采用独立式键盘,一个按键对应一个io口,p1.0对应输出方波按键,p1.2对应输出三角波按键,p1.3对应正弦波输出按键,当两个键同时按下是,会同时输出两列波。显示部分采用led显示,输出方波时显示“1”,三角波时显示“2”,正弦波时显示“3”.4、 系统软件设计4.1程序总体设计 程序是本设计中的重点。单片机的功能与它的程序有很大关系,本设计中,为实现输出
9、三种波形,并且实现同时可以输出两列波要使单片机定时向数模转换器发送数据,数据的不同将实现不同的波形输出。大致程序流程图如4.1:详细的流程图如图4.2 图4.1 图4.2 4.2键盘扫描程序 将p1口得值送给累加器a,如果有键按下,p1的相应位为0,否则为1,所以可以根据判断p1口得值来分析哪一个键按下,具体程序如下:main: mov a,p1 /扫描按键 subb a,#249 / 当sw3和sw2按键按下,跳转到rel1,输出三角波和正弦波 jz rel1 subb a,#1 /当sw1和sw3按下,跳转到rel2,输出矩形波和正弦波 jz rel2 subb a,#1 /当sw3按下,
10、跳转到rel4,只输出正弦波 jz rel4 subb a,#1 /当sw1和sw2按键按下,跳转到rel3,输出矩形波和三角波 jz rel3 subb a,#1 /当sw2按键按下,跳转到rel5,只输出三角波 jz rel5 subb a,#1 /当sw1按键按下,跳转到rel6,只输出矩形波 jz rel6 ljmp main4.3波形产生程序为了简化设计程序三种波形均采用查找表,以正弦波为例,方波,三角波类似。rel4: mov a,p1 /由于程序较长jz直接跳转不到相应位置,需加一个中间跳转 cjne a,#251,main ljmp dan1 dan1: mov r0,#00h
11、 /当sw3按下,跳转到rel4,只输出正弦波loop3:mov a,p1 cjne a,#251,over1 mov a,r0 mov dptr,#tab2 /tab2是正弦波的取值表 movc a,a+dptr mov p3,#30h mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,al304: dec r3 cjne r3,#255,l304 cjne r0,#255,loop3 ljmp dan1over1:ljmp main ret四.系统调试与结果分析用wave6000编译调试运行生成 .hex文件,使用proteus设计电路(
12、电路图见附录一),将.hex文件加载到at89c51上,进行硬软结合综合仿真,以正弦波为例进行仿真分析: 频率调试 正弦波仿真频率最低时只有5hz 正弦波仿真频率最高时200hz 幅度测试最低幅度0.4mv最高幅度为2.5mv频率调节可以实现从5hz到200hz,步进为0.76hz虽然幅度都很低,不过最高幅度是最低幅度的6倍,在应用是可在加以放大器可以实现从0.8v到5v的幅度调节,可以满足一般信号发生器的要求。其他仿真输出波形如下所示 方波波形 三角波形 正弦波形 方波和正弦波形同时发生 三角和正弦波形同时发生 方波和三角波形同时发生总结 通过调试可得,我们设计的电路能够完成产生方波、三角波
13、、正弦波,并对进行调幅与调频操作,而且可以同时输出两列波。在调试的过程中不是一帆风顺的,有很多的问题都是自己摸索和在与同学交流的过程中得到了解决。在设计的过程中,我先完成的是发生三种波形,通过编程实现并调试成功,同时也实现了调幅与调频,但是怎么实现双通道输出波形把我们难住了,使设计无法进行,通过询问老师,经过老师的指导和同学交流后,如果三种波形的产生都采用一种方法-查表法,同时输出几列波成为了可能,由于双通道输出对io口数量的要求加大,老师建议我们采用总线结构共用数据总线,通过片选实现同时输出两列波,对此进行了尝试,完成了设计并调试成功。调试过程是发现问题的过程,这要求我们耐心和心细,有一种严
14、谨的科学态度,以能够更好的实现我们的设计。 通过为期两周的课程设计,在老师的精心指导下和同学合作之下最终成功地完成了此次设计,并从中学到了很多的知识和经验,对单片机以及汇编语言有了更深层次的理解。本次课程设计使我认识到:设计思路是实施操作的扎实基石。一个良好的设计思路,是电路的生命。宁愿在思路设计上多花上50%的时间。因为前期看似慢,实际上恰恰给后期的制作带来很大的方便,效果往往是更节省了许多时间。活学活用。这次设计让我真正体会到了书本知识永远是基础,而基础正是你向高层次迈进的扎实阶梯,没有这个基础,就无法实现技术上的腾飞。在实践当中,灵活运用书本上所讲的知识,万变不离其中,只有扎实掌握了核心
15、的方法,才有可能做到活用巧用。参考文献 1 周兴华手把手教你单片机北京航空航天大学出版社。 2 张友德、赵志英、徐时亮单片微机原理应用与实验复旦大学出版社。 3 姚福安电子电路设计与实践山东科学与技术出版社。 4 张毅刚、彭喜圆mcs-51单片机应用设计哈尔滨工业大学出版社。 5康华光、华中理工大学电子学教研室电子技术基础高等教育出版社。 6高吉祥、唐朝京编著全国大学生电子设计竞赛培训系列教程 清华大学出版社。 附录1:proteus仿真电路图附录二:protel原理图附录三:pcb图附录三:源程序代码org 0000h ljmp main org 0100hmain: mov a,p1 /扫
16、描按键 subb a,#249 / 当sw3和sw2按键按下,跳转到rel1,输出三角波和正弦波 jz rel1 subb a,#1 /当sw1和sw3按下,跳转到rel2,输出矩形波和正弦波 jz rel2 subb a,#1 /当sw3按下,跳转到rel4,只输出正弦波 jz rel4 subb a,#1 /当sw1和sw2按键按下,跳转到rel3,输出矩形波和三角波 jz rel3 subb a,#1 /当sw2按键按下,跳转到rel5,只输出三角波 jz rel5 subb a,#1 /当sw1按键按下,跳转到rel6,只输出矩形波 jz rel6 ljmp mainrel4: mov
17、 a,p1 /由于程序较长jz直接跳转不到相应位置,需加一个中间跳转 cjne a,#251,main ljmp dan1 rel1: mov r0,#00h / 当sw3和sw2按键按下,跳转到rel1,输出三角波和正弦波 loop: mov a,p1 cjne a,#249,main mov a,r0 mov dptr,#tab1 movc a,a+dptr clr p3.7 mov p0,a mov a,r0 mov dptr,#tab2 movc a,a+dptr setb p3.7 mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,
18、al301: dec r3 cjne r3,#255,l301 cjne r0,#255,loop ljmp rel1 retrel5: mov a,p1 /由于程序较长jz直接跳转不到相应位置,需加一个中间跳转 cjne a,#253,main ljmp dan2rel6: mov a,p1 /由于程序较长jz直接跳转不到相应位置,需加一个中间跳转 cjne a,#254,main ljmp dan3 rel2: mov r0,#00h /当sw1和sw3按下,跳转到rel2,输出矩形波和正弦波 loop1:mov a,p1 cjne a,#250,main mov a,r0 mov dpt
19、r,#tab movc a,a+dptr clr p3.7 mov p0,a mov a,r0 mov dptr,#tab2 movc a,a+dptr setb p3.7 mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,al302: dec r3 cjne r3,#255,l302 cjne r0,#255,loop1 ljmp rel2 ret rel3: mov r0,#00h /当sw1和sw2按键按下,跳转到rel3,输出矩形波和三角波loop2:mov a,p1 cjne a,#252,over mov a,r0 mov dpt
20、r,#tab movc a,a+dptr clr p3.7 mov p0,a mov a,r0 mov dptr,#tab1 movc a,a+dptr setb p3.7 mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,al303: dec r3 cjne r3,#255,l303 cjne r0,#255,loop2 ljmp rel3over: ljmp main retdan1: mov r0,#00h /当sw3按下,跳转到rel4,只输出正弦波loop3:mov a,p1 cjne a,#251,over1 mov a,r0 m
21、ov dptr,#tab2 movc a,a+dptr mov p3,#30h mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,al304: dec r3 cjne r3,#255,l304 cjne r0,#255,loop3 ljmp dan1over1:ljmp main retdan2 : mov r0,#00h /当sw2按键按下,跳转到rel5,只输出三角波loop4:mov a,p1 cjne a,#253,over2 mov a,r0 mov dptr,#tab1 movc a,a+dptr mov p3,#24h mov
22、p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3,al305: dec r3 cjne r3,#255,l305 cjne r0,#255,loop4 ljmp dan2over2:ljmp main retdan3: mov r0,#00h /当sw1按键按下,跳转到rel6,只输出矩形波loop5:mov a,p1 cjne a,#254,over3 mov a,r0 mov dptr,#tab movc a,a+dptr mov p3,#79h mov p0,a inc r0 mov p2,#0ffh mov a,p2 cpl a mov r3
23、,al306: dec r3 cjne r3,#255,l306 cjne r0,#255,loop5 ljmp dan3over3:ljmp main ret / 矩形波列表 tab: db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0f
24、fh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,
25、0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,0
26、0h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,0
27、0h,00h,00h,00h,00h,00h,00h db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h /三角波列表 tab1: db 00h,02h,04h,06h,08h,0ah,0ch,0eh,10h,12h,14h,16h,18h,1ah,1ch,1eh db 20h,22h,24h,26h,28h,2ah,2ch,2eh,30h,32h,34h,36h,38h,3ah,3ch,3eh db 40h,42h,44h,46h,48h,4ah,4ch,4eh,50h,52h,54h,56h,58h,5ah,
28、5ch,5eh db 60h,62h,64h,66h,68h,6ah,6ch,6eh,70h,72h,74h,76h,78h,7ah,7ch,7eh db 80h,82h,84h,86h,88h,8ah,8ch,8eh,90h,92h,94h,96h,98h,9ah,9ch,9eh db 0a0h,0a2h,0a4h,0a6h,0a8h,0aah,0ach,0aeh,0b0h,0b2h,0b4h,0b6h,0b8h,0bah,0bch,0beh db 0c0h,0c2h,0c4h,0c6h,0c8h,0cah,0cch,0ceh,0d0h,0d2h,0d4h,0d6h,0d8h,0dah,0d
29、ch,0deh db 0e0h,0e2h,0e4h,0e6h,0e8h,0eah,0ech,0eeh,0f0h,0f2h,0f4h,0f6h,0f8h,0fah,0fch,0feh db 0feh,0fch,0fah,0f8h,0f6h,0f4h,0f2h,0f0h,0eeh,0ech,0eah,0e8h,0e6h,0e4h,0e2h,0e0h db 0deh,0dch,0dah,0d8h,0d6h,0d4h,0d2h,0d0h,0ceh,0cch,0cah,0c8h,0c6h,0c4h,0c2h,0c0h db 0beh,0bch,0bah,0b8h,0b6h,0b4h,0b2h,0b0h,
30、0aeh,0ach,0aah,0a8h,0a6h,0a4h,0a2h,0a0h db 9eh,9ch,9ah,98h,96h,94h,92h,90h,8eh,8ch,8ah,88h,86h,84h,82h,80h db 7eh,7ch,7ah,78h,76h,74h,72h,70h,6eh,6ch,6ah,68h,66h,64h,62h,60h db 5eh,5ch,5ah,58h,56h,54h,52h,50h,4eh,4ch,4ah,48h,46h,44h,42h,40h db 3eh,3ch,3ah,38h,36h,34h,32h,30h,2eh,2ch,2ah,28h,26h,24h,22h,20h db 1eh,1ch,1ah,18h,16h,14h,12h,10h,0eh,0ch,0ah,08h,06h,04h,02h,00h /正弦波列表 tab2: db 80h,82h,84h,86h,88h,8ah,8ch,8eh,90h,92h,94h,96h,98h,9ah,9ch,9eh db 0a0h,0a2h,0a4h,0a6h,0a8h,0aah,0abh,0adh,0afh,0b1h, 0b2h,0b4h, 0b6h,0b7h,0b9h,0ba
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 多媒体设计中用户体验提升的可行策略试题及答案
- 华为机械机试题库及答案
- 新安全生考试题及答案
- 牢记知识点的软件评测师试题及答案
- 社会工作者个案管理考核题目及答案
- 二级考试备考计划与试题及答案
- 情感化设计在多媒体应用中的意义试题及答案
- 高分通过软件评测师考试的试题及答案
- 幼儿心理初级社工考试试题及答案
- 系统分析师成功背景分析试题及答案
- 2023年高考真题-生物(辽宁卷) 含答案
- 叉车出租行业市场调研分析报告
- 专题02代数推理题(真题2个考点模拟16个考点)(原卷版+解析)
- 变压器维修投标方案
- 2025届山东师范大学附中高考适应性考试历史试卷含解析
- 四川省高职单招餐饮类《中式烹饪技艺》复习备考试题库-下(判断、简答题)
- DL∕T 5783-2019 水电水利地下工程地质超前预报技术规程
- SMP-04-022-00 共线生产管理规程
- 中考字音字形练习题(含答案)-字音字形专项训练
- 北京市西城区2023-2024学年七年级下学期期末考试数学试卷
- 2024年连云港市名小六年级毕业考试语文模拟试卷
评论
0/150
提交评论