单片机波形发生器实习报告优秀免费版Word格式.docx

上传人:b****6 文档编号:18981118 上传时间:2023-01-02 格式:DOCX 页数:23 大小:648.71KB
下载 相关 举报
单片机波形发生器实习报告优秀免费版Word格式.docx_第1页
第1页 / 共23页
单片机波形发生器实习报告优秀免费版Word格式.docx_第2页
第2页 / 共23页
单片机波形发生器实习报告优秀免费版Word格式.docx_第3页
第3页 / 共23页
单片机波形发生器实习报告优秀免费版Word格式.docx_第4页
第4页 / 共23页
单片机波形发生器实习报告优秀免费版Word格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单片机波形发生器实习报告优秀免费版Word格式.docx

《单片机波形发生器实习报告优秀免费版Word格式.docx》由会员分享,可在线阅读,更多相关《单片机波形发生器实习报告优秀免费版Word格式.docx(23页珍藏版)》请在冰豆网上搜索。

单片机波形发生器实习报告优秀免费版Word格式.docx

查表法,数字频率合成技术,单片机,可调波形,双通道

引言

信号发生器输出的常规波形,常应用于电子电路的性能测试和参数测量。

但常规的波形发生器一般是只能同时产生一种可控的波形,为此设计一种基于单片机控制的信号波形发生器,以满足设计需求。

一、设计方案论述:

本课题的设计方案有四种:

(1)采用函数信号发生器ICL8038集成模拟芯片,它是一种可以同时产生方波、三角波、正弦波的专用集成电路。

但是这种模块产生的波形都不是纯净的波形,会寄生一些高次谐波分量,采用其他的措施虽可滤除一些,但不能完全滤除掉。

(2)传统的直接频率合成技术(DS)。

该类方法能实现快速频率变换,具有低相位噪声以及所有方法中最高的工作频率。

但由于采用大量的倍频、分频、混频和滤波环节,导致其结构复杂、体积庞大、成本昂贵,而且容易产生过多杂散分量。

(3)锁相环式频率合成器(PLL)。

该类技术具有良好窄带跟踪特性,可选择所需频率信号,抑制杂散分量,且省去大量滤波器,有利于集成化和小型化。

但由于锁相环本身是个惰性环节,锁定时间较长,因而频率转换时间较长,且由模拟方法合成的正弦波的参数(如幅度、频率和相位等)都难以定量控制。

(4)直接数字式频率合成器(DirectDigitalFrequency,DDS)。

该类方法具有高频率稳定度、高频率分辨率以及极短的频率转换时间。

此外,全数字化结构便于集成,输出相位连续,频率、相位和幅度均可实现程控,而且理论上能够实现任意波形。

经综合比较,第四种方法课通过要求的单片机实现程序控制,程序简单。

因此本实验采用第四种方案

二、系统工作原理

利用单片机的片内ROM存储所需的信号波形相位幅度值(又称波形表),根据外电路的输入信号利用查表方式查找片内ROMA中相应地址的相位幅度值。

将输图1

出的八位二进制数据进行D/A转换,I/V转换后输出。

根据正弦信号波形的频率和相位在波形表中查找相应的响应点,由于输出的常规波形都具有周期性,波形的产生以正弦波为例:

因其周期性,因此只需要设计一个完整的周期,信号的输出部分采用了D/A转换,因此为了适应D/A转换的特征,将正弦函数波形整体上移,时期最低点的值为0,如上图1所示。

D/A转换的最大输入值为255,因此对于周期函数,需要采样的点数最多不超过256个,本设计中采样点数设置为256,相位累加器的数值由累加器A的值传送,将A中的值作为偏移相位值,送还到指针,通过指针查找相应相位的幅度值,并通过P0口输出到D/A转换器转换成相应的模拟信号。

系统整体原理框图如下所示:

图2-1系统原理方框图

三、硬件设计及原理

3.1主控电路设计

单片机是整个波形发生器的核心部件,本次设计采用了应用广泛的MCS-51系列的AT89C51单片机。

单片机在整个系统中的作用是形成扫描码,进行键值识别、键处理、参数设置;

形成显示段码;

形成波形的数字编码,并输出到D/A接口电路。

拨码开关输入的值为查找一个值的周期,因此通过拨码开关实现波形周期的设置。

主控部分及时钟复位电路、变频电路设计原理图如图3.1所示:

图3.1

3.2D/A转换电路设计

D/A部分本设计采用ADC0832芯片实现,该芯片输出量是电流值,因此需要通过一个高阻抗的线性运放实现I/V(电流到电压)转换实现电压的输出。

由于本设计是面向双通道设计,所以需采用两列DA装换同时输出AD部分如图3.2所示

图3.2

为实现不同波形的同时产生,软件实现时采用复合查表方式。

由于查找表输出的速度很快,因此输出波形的可以近似成连续波形,在世博其上显示的波形则为模拟信号的波形图。

例如为同时输出正弦波形和三角波形,在执行完一次正弦波形查找输出操作后紧接着又执行一次三角波的波形查找操作,由于信号输出的端口使用的是同一个端口,又要能同时输出两种信号波形,因此采用两个DAC0832芯片通过总线接入到P0口,使用P3.7输出的信号作为DAC0832的片选信号,为实现该端口的任何一种状态均能选择到一个芯片,因此该端口的信号一个直接接到一个DAC0832的CS端,另一个通过一个反相器接入到另外一个DAC0832的CS端。

经运放实现I/V转换后的电压值可以直接输出到示波器观察到相应的波形情况。

3.3键盘/显示接口电路设计

因为本设计按键较少,所以键盘采用独立式键盘,一个按键对应一个IO口,P1.0对应输出方波按键,P1.2对应输出三角波按键,P1.3对应正弦波输出按键,当两个键同时按下

是,会同时输出两列波。

显示部分采用LED显示,输出方波时显示“1”,三角波时显示“2”,正弦波时显示“3”.

4、系统软件设计

4.1程序总体设计

程序是本设计中的重点。

单片机的功能与它的程序有很大关系,本设计中,为实现输出三种波形,并且实现同时可以输出两列波要使单片机定时向数模转换器发送数据,数据的不同将实现不同的波形输出。

大致程序流程图如4.1:

详细的流程图如图4.2

图4.1

图4.2

4.2键盘扫描程序

将P1口得值送给累加器A,如果有键按下,P1的相应位为0,否则为1,所以可以根据判断P1口得值来分析哪一个键按下,具体程序如下:

MAIN:

MOVA,P1//扫描按键

SUBBA,#249//当SW3和SW2按键按下,跳转到REL1,输出三角波和正弦波

JZREL1

SUBBA,#1//当SW1和SW3按下,跳转到rel2,输出矩形波和正弦波

JZREL2

SUBBA,#1//当sw3按下,跳转到rel4,只输出正弦波

JZREL4

SUBBA,#1//当sw1和sw2按键按下,跳转到rel3,输出矩形波和三角波

JZREL3

SUBBA,#1//当sw2按键按下,跳转到rel5,只输出三角波

JZREL5

SUBBA,#1//当sw1按键按下,跳转到rel6,只输出矩形波

JZREL6

LJMPMAIN

4.3波形产生程序

为了简化设计程序三种波形均采用查找表,以正弦波为例,方波,三角波类似。

REL4:

MOVA,P1//由于程序较长JZ直接跳转不到相应位置,需加一个中间跳转

CJNEA,#251,MAIN

LJMPDAN1

DAN1:

MOVR0,#00H//当sw3按下,跳转到rel4,只输出正弦波

LOOP3:

MOVA,P1

CJNEA,#251,OVER1

MOVA,R0

MOVDPTR,#TAB2//TAB2是正弦波的取值表

MOVCA,@A+DPTR

MOVP3,#30H

MOVP0,A

INCR0

MOVP2,#0FFH

MOVA,P2

CPLA

MOVR3,A

L304:

DECR3

CJNER3,#255,L304

CJNER0,#255,LOOP3

LJMPDAN1

OVER1:

LJMPMAIN

RET

四.系统调试与结果分析

用WAVE6000编译调试运行生成.HEX文件,使用Proteus设计电路(电路图见附录一),将.HEX文件加载到AT89C51上,进行硬软结合综合仿真,以正弦波为例进行仿真分析:

频率调试

正弦波仿真频率最低时只有5HZ

正弦波仿真频率最高时200HZ幅度测试

最低幅度0.4mv

最高幅度为2.5mv

频率调节可以实现从5HZ到200HZ,步进为0.76HZ

虽然幅度都很低,不过最高幅度是最低幅度的6倍,在应用是可在加以放大器可以实现从0.8V到5V的幅度调节,可以满足一般信号发生器的要求。

其他仿真输出波形如下所示

方波波形三角波形

正弦波形方波和正弦波形同时发生

三角和正弦波形同时发生方波和三角波形同时发生

总结

通过调试可得,我们设计的电路能够完成产生方波、三角波、正弦波,并对进行调幅与调频操作,而且可以同时输出两列波。

在调试的过程中不是一帆风顺的,有很多的问题都是自己摸索和在与同学交流的过程中得到了解决。

在设计的过程中,我先完成的是发生三种波形,通过编程实现并调试成功,同时也实现了调幅与调频,但是怎么实现双通道输出波形把我们难住了,使设计无法进行,通过询问老师,经过老师的指导和同学交流后,如果三种波形的产生都采用一种方法--查表法,同时输出几列波成为了可能,由于双通道输出对IO口数量的要求加大,老师建议我们采用总线结构共用数据总线,通过片选实现同时输出两列波,对此进行了尝试,完成了设计并调试成功。

调试过程是发现问题的过程,这要求我们耐心和心细,有一种严谨的科学态度,以能够更好的实现我们的设计。

通过为期两周的课程设计,在老师的精心指导下和同学合作之下最终成功地完成了此次设计,并从中学到了很多的知识和经验,对单片机以及汇编语言有了更深层次的理解。

本次课程设计使我认识到:

设计思路是实施操作的扎实基石。

一个良好的设计思路,是电路的生命。

宁愿在思路设计上多花上50%的时间。

因为前期看似慢,实际上恰恰给后期的制作带来很大的方便,效果往往是更节省了许多时间。

活学活用。

这次设计让我真正体会到了书本知识永远是基础,而基础正是你向高层次迈进的扎实阶梯,没有这个基础,就无法实现技术上的腾飞。

在实践当中,灵活运用书本上所讲的知识,万变不离其中,只有扎实掌握了核心的方法,才有可能做到活用巧用。

参考文献

[1]周兴华《手把手教你单片机》北京航空航天大学出版社。

[2]张友德、赵志英、徐时亮《单片微机原理应用与实验》复旦大学出版社。

[3]姚福安《电子电路设计与实践》山东科学与技术出版社。

[4]张毅刚、彭喜圆《MCS-51单片机应用设计》哈尔滨工业大学出版社。

[5]康华光、华中理工大学电子学教研室《电子技术基础》高等教育出版社。

[6]高吉祥、唐朝京编著《全国大学生电子设计竞赛培训系列教程》清华大学出版社。

附录1:

Proteus仿真电路图

附录二:

Protel原理图

附录三:

PCB图

源程序代码

ORG0000H

ORG0100H

REL1:

MOVR0,#00H//当SW3和SW2按键按下,跳转到REL1,输出三角波和正弦波

LOOP:

MOVA,P1

CJNEA,#249,MAIN

MOVDPTR,#TAB1

CLRP3.7

MOVDPTR,#TAB2

SETBP3.7

L301:

CJNER3,#255,L301

CJNER0,#255,LOOP

LJMPREL1

REL5:

CJNEA,#253,MAIN

LJMPDAN2

REL6:

CJNEA,#254,MAIN

LJMPDAN3

REL2:

MOVR0,#00H//当SW1和SW3按下,跳转到rel2,输出矩形波和正弦波

LOOP1:

CJNEA,#250,MAIN

MOVDPTR,#TAB

L302:

CJNER3,#255,L302

CJNER0,#255,LOOP1

LJMPREL2

RET

REL3:

MOVR0,#00H//当sw1和sw2按键按下,跳转到rel3,输出矩形波和三角波

LOOP2:

CJNEA,#252,OVER

L303:

CJNER3,#255,L303

CJNER0,#255,LOOP2

LJMPREL3

OVER:

DAN2:

MOVR0,#00H//当sw2按键按下,跳转到rel5,只输出三角波

LOOP4:

CJNEA,#253,OVER2

MOVP3,#24H

L305:

CJNER3,#255,L305

CJNER0,#255,LOOP4

OVER2:

DAN3:

MOVR0,#00H//当sw1按键按下,跳转到rel6,只输出矩形波

LOOP5:

CJNEA,#254,OVER3

MOVP3,#79H

L306:

CJNER3,#255,L306

CJNER0,#255,LOOP5

LJMPDAN3

OVER3:

//矩形波列表

TAB:

DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH

DB00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H

//三角波列表

TAB1:

DB00H,02H,04H,06H,08H,0AH,0CH,0EH,10H,12H,14H,16H,18H,1AH,1CH,1EH

DB20H,22H,24H,26H,28H,2AH,2CH,2EH,30H,32H,34H,36H,38H,3AH,3CH,3EH

DB40H,42H,44H,46H,48H,4AH,4CH,4EH,50H,52H,54H,56H,58H,5AH,5CH,5EH

DB60H,62H,64H,66H,68H,6AH,6CH,6EH,70H,72H,74H,76H,78H,7AH,7CH,7EH

DB80H,82H,84H,86H,88H,8AH,8CH,8EH,90H,92H,94H,96H,98H,9AH,9CH,9EH

DB0A0H,0A2H,0A4H,0A6H,0A8H,0AAH,0ACH,0AEH,0B0H,0B2H,0B4H,0B6H,0B8H,0BAH,0BCH,0BEH

DB0C0H,0C2H,0C4H,0C6H,0C8H,0CAH,0CCH,0CEH,0D0H,0D2H,0D4H,0D6H,0D8H,0DAH,0DCH,0DEH

DB0E0H,0E2H,0E4H,0E6H,0E8H,0EAH,0ECH,0EEH,0F0H,0F2H,0F4H,0F6H,0F8H,0FAH,0FCH,0FEH

DB0FEH,0FCH,0FAH,0F8H,0F6H,0F4H,0F2H,0F0H,0EEH,0ECH,0EAH,0E8H,0E6H,0E4H,0E2H,0E0H

DB0DEH,0DCH,0DAH,0D8H,0D6H,0D4H,0D2H,0D0H,0CEH,0CCH,0CAH,0C8H,0C6H,0C4H,0C2H,0C0H

DB0BEH,0BCH,0BAH,0B8H,0B6H,0B4H,0B2H,0B0H,0AEH,0ACH,0AAH,0A8H,0A6H,0A4H,0A2H,0A0H

DB9EH,9CH,9AH,98H,96H,94H,92H,90H,8EH,8CH,8AH,88H,86H,84H,82H,80H

DB7EH,7CH,7AH,78H,76H,74H,72H,70H,6EH,6CH,6AH,68H,66H,64H,62H,60H

DB5EH,5CH,5AH,58H,56H,54H,52H,50H,4EH,4CH,4AH,48H,46H,44H,42H,40H

DB3EH,3CH,3AH,38H,36H,34H,32H,30H,2EH,2CH,2AH,28H,26H,24H,22H,20H

DB1EH,1CH,1AH,18H,16H,14H,12H,10H,0EH,0CH,0AH,08H,06H,04H,02H,00H

//正弦波列表

TAB2:

DB0A0H,0A2H,0A4H,0A6H,0A8H,0AAH,0ABH,0ADH,0AFH,0B1H,0B2H,0B4H,0B6H,0B7H,0B9H,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1