数字信号发生器原理Word文档格式.docx

上传人:b****5 文档编号:8361725 上传时间:2023-05-11 格式:DOCX 页数:15 大小:617.79KB
下载 相关 举报
数字信号发生器原理Word文档格式.docx_第1页
第1页 / 共15页
数字信号发生器原理Word文档格式.docx_第2页
第2页 / 共15页
数字信号发生器原理Word文档格式.docx_第3页
第3页 / 共15页
数字信号发生器原理Word文档格式.docx_第4页
第4页 / 共15页
数字信号发生器原理Word文档格式.docx_第5页
第5页 / 共15页
数字信号发生器原理Word文档格式.docx_第6页
第6页 / 共15页
数字信号发生器原理Word文档格式.docx_第7页
第7页 / 共15页
数字信号发生器原理Word文档格式.docx_第8页
第8页 / 共15页
数字信号发生器原理Word文档格式.docx_第9页
第9页 / 共15页
数字信号发生器原理Word文档格式.docx_第10页
第10页 / 共15页
数字信号发生器原理Word文档格式.docx_第11页
第11页 / 共15页
数字信号发生器原理Word文档格式.docx_第12页
第12页 / 共15页
数字信号发生器原理Word文档格式.docx_第13页
第13页 / 共15页
数字信号发生器原理Word文档格式.docx_第14页
第14页 / 共15页
数字信号发生器原理Word文档格式.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字信号发生器原理Word文档格式.docx

《数字信号发生器原理Word文档格式.docx》由会员分享,可在线阅读,更多相关《数字信号发生器原理Word文档格式.docx(15页珍藏版)》请在冰点文库上搜索。

数字信号发生器原理Word文档格式.docx

2.2设计方案

本次的设计任务是利用单片机实现四种波形输出,还有就是频率可调与频率显示,针对上述问题,做出如下分析,波形输出必然需要D/A转换,所以考虑到课设的性质,采用DAC0832芯片作为数模转换芯片,还有就是频率显示,因为是频率显示,所以采用三个七段共阴数码管显示频率,这样,在加上一些具体硬件和软件,即可满足设计要求。

2.3设计原理

用一块AT89C51实现键盘输入扫描与LED数码管显示控制,同时通过外中断向AT89C51发送频率控制与波形转换档位选择信息。

AT89C51通过接受外中断0的触发次数确定当前输出的波形,并且通过外中断1触发的次数确定当前波形的频率,总共合计16个状态,实现50HZ-200HZ的频率输出。

利用P1口和P2口实现频率显示数码管的控制,P1控制位选,P2控制段选,利用动态扫描方式进行显示。

利用DAC0832的双缓冲方式输出波形,外界两级集成运放实现信号放大与输出。

对于波形的产生,最简洁的办法是让单片机连续的输出一组数字量,并且每一个数字量都有一定的保持时间,这样在利用数模转换,即可实现不同波形的输出,可以将那些数字量统统放在一个表里,供输出是查找,至于那些数字量,自然是那些波形函数的一些点通过转换得到的八位二进制数或者是小于等于255的十进制数。

对于波形幅值的调节,可以通过对参考电压的调节实现,而频率的调节,则可以通过对每个数字量得保持时间的调节得到,显示部分前面已介绍,至此方案确定。

3.硬件设计

3.1单片机电路

单片机电路原理图如图1所示,单片机选选用Atmel公司的AT89C51,该芯片是一种高性能八位单片机,简单易控制,成本低,性能稳定,完全满足本系统的设计要求,复位电路和晶振电路是该单片机最简单的电路,复位电路采用最简单的上电复位,晶振频率为12MHz,晶振电容为30P.

图1单片机电路原理图

3.2D/A转换电路

D/A转换电路原理图如图2所示,主要包括D/A转换器、运算放大器和一些基准电压源。

D/A转换器选用前面提过的DAC0832。

D/A转换器的数据输如与单片机的P0口相连。

DAC0832的输入寄存器选择信号CS、DAC寄存器些宣统信号WR2和数据传送信号XFER直接与地相连,表明一直有效,输入寄存器些宣统信号WR1与单片机的写信号相连。

运放电路选用芯片AD711P。

该芯片具有低失真,高精度的特点。

图2D/A转换电路原理图

3.3频率数码显示电路

频率指示电路如图3所示,本系统的频率显示利用三个7段共阴数码管实现显示,利用P0口与P2口实现数码管的东太扫描,以达到显示的目的。

图3频率指示电路原理图

4.软件设计

4.1主程序流程图

主程序流程图如图4所示。

程序开始执行,中断初始化,调用显示函数,判断K值,K=0时,输出低电平,K=1时为方波输出;

K=2时为锯齿波输出;

K=3时为三角波输出;

K=4时为正弦波输出,痛过连续按键,可以依次在这四个波形之间切换。

图4主程序流程图

4.2方波流程图

图5方波产生流程图

4.3锯齿波产生流程图

 

图6锯齿波程序流程图

4.4三角波程序流程图

三角波程序流程图如图7所示,将0-255先送给DAC0832,然后在反过来将255-0送给DAC0832,从而可产生三角波。

图7三角波程序流程图

4.5正弦波程序流程图

正弦波程序流程图如图8所示。

正弦波波形设计通过查表指令得到。

当进入正弦波后,依次将一个256个数的表值送给DAC0832,即可得到波形。

图8正弦波程序流程图

4.6中断响应流程图

图9外中断流程图

外部中断0与外部中断1分别实现了波形频率调节与波形转换,通过对外部中断的计数实现了波形转换与频率增加。

4.7仿真结果:

图10方波波形

图11锯齿波波形

图12三角波波形

图13正弦波波形

5.总结

经过努力,本次单片机课程设计终于做完了,由于我知识水平有限,有很多不恰当的地方,请老师指正,我会虚心接受并修改。

在本次课程设计过程中,通过理论与实际的结合,增强了自己的动手能力和分析能力。

在课下与老师同学的交流和学习,思想上和专业知识课程上都提高了很多。

在此过程中,我学会了很多,也看到了很多自己的不足之处。

在单片机应用方面自己掌握还有待提高,在以后的学习生活中,我会更加努力学习专业知识,完善自我,为将来的发展做好充分的准备。

总之,在这次课程设计中,我受益匪浅,学到了很多书本上所没有的东西,懂得了理论和实际联系的重要性,使自身得到了锻炼。

明白了在以后的学习中,不仅要把理论知识掌握牢固,更要提高自己的动手能力、分析能力与实践能力。

参考文献

[1]江志红.51单片机技术与应用系统开发案例精选[M].:

清华大学,2008

[2]居义,马宁,易永红.单片机原理与工程应用[M].:

清华大学,2010

附录

程序清单:

#include<

reg51.h>

absacc.h>

#defineDAC0832XBYTE[0X0FFF]

intcodetable2[]={

100,102,104,107,109,112,114,117,119,121,

124,126,129,131,133,135,138,140,

142,144,147,149,151,153,155,157,

159,161,163,165,167,168,170,172,

174,175,177,178,180,181,183,184,

185,187,188,189,190,191,192,193,

194,194,195,196,197,197,198,198,

198,199,199,199,199,199,200,199,

199,199,199,199,198,198,198,197,

197,196,195,194,194,193,192,191,

190,189,188,187,185,184,183,181,

180,178,177,175,174,172,170,168,

167,165,163,161,159,157,155,153,

151,149,147,144,142,140,138,135,

133,131,129,126,124,121,119,117,

114,112,109,107,104,102,100,97,

95,92,90,87,85,82,80,78,75,

73,70,68,66,64,61,59,57,55,

52,50,48,46,44,42,40,38,36,

34,32,31,29,27,25,24,22,21,

19,18,16,15,14,12,11,10,9,

8,7,6,5,5,4,3,2,2,1,

1,1,0,0,0,0,0,0,0,0,

0,0,1,1,1,2,2,3,4,5,

5,6,7,8,9,10,11,12,14,

15,16,18,19,21,22,24,25,27,

29,31,32,34,36,38,40,42,44,

46,48,50,52,55,57,59,61,64,

66,68,70,73,75,78,80,82,85,

87,90,92,95,97,100

};

//正弦波形表

unsignedintcodeduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x0};

//数码管段选码

unsignedintcodewei[]={0xfe,0xfd,0xfb};

//数码管位选

unsignedintHZ=80;

//波形起始频率

unsignedintk=0,j=0;

//波形转换技术器

voiddelay(inti)//延时函数

{

while(i--);

}

voidfang()//方波函数

DAC0832=0;

delay(HZ*128);

DAC0832=0xff;

voidjvchi()//锯齿波函数

unsignedchari;

for(i=0;

i<

255;

i++)

{

DAC0832=i;

delay(HZ);

}

voidtran()//三角波函数

for(i=0;

{

DAC0832=i;

delay(HZ);

}

for(i=255;

i>

0;

i--)

voidsin()//正弦波函数

unsignedinti;

256;

DAC0832=table2[i];

voidint0(void)interrupt0//外中断0

HZ=HZ+10;

j=j+1;

if(j==16)j=0;

if(HZ==250)HZ=80;

voidint1(void)interrupt2//外中断1

k=k+1;

if(k>

=5)k=0;

voidmain(void)//主函数

IE=0x85;

TCON=0x05;

while

(1)

if(k==1)fang();

if(k==2)jvchi();

if(k==3)tran();

if(k==4)sin();

if(k==0)DAC0832=0;

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2