基于51单片机的波形信号发生器设计与制作_第1页
基于51单片机的波形信号发生器设计与制作_第2页
基于51单片机的波形信号发生器设计与制作_第3页
基于51单片机的波形信号发生器设计与制作_第4页
基于51单片机的波形信号发生器设计与制作_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

湖南商务职业技术学院毕业设计

目录

1产品功能分析...........................................................................................................3

2设计方案遴选...........................................................................................................3

2.1单片机的选择...............................................................................................3

2.2系统框图设计...............................................................................................4

3产品硬件设计...........................................................................................................4

3.1AT89C51单片机核心电路设计....................................................................5

3.2按键电路设计...............................................................................................6

3.3LCD1602液晶显示模块电路..........................................................................7

3.4DAC0832电路设计........................................................................................8

3.5LM358运放电路设计......................................................................................8

4产品软件设计...........................................................................................................9

4.1主程序流程图...............................................................................................9

4.2子程序流程图.............................................................................................11

4.3程序设计与测试..........................................................................................16

4.4产品程序清单.............................................................................................17

5测试结果.................................................................................................................17

6产品使用说明.........................................................................................................21

6.1产品装配图.................................................................................................21

6.2产品调试.....................................................................................................22

6.3产品使用说明..............................................................................................23

7产品设计技术标准.................................................................................................29

8参考资料.................................................................................................................29

附录.............................................................................................................................30

附录1元器件清单........................................................................................30

附录2电路原理图........................................................................................31

附录3PCB设计图.........................................................................................32

附录4产品实物图........................................................................................33

1

湖南商务职业技术学院毕业设计

附录5主程序代码........................................................................................34

2

湖南商务职业技术学院毕业设计

1产品功能分析

波形信号发生器是现代测试领域内应用最为广泛的通用仪器之一,也是常

用的信号源,也可以称为函数信号发生器。波形信号发生器是一种能够产生多

种波形,如正弦波、方波、三角波、锯齿波等波形。在研制、生产、测试和修

理各种电子器件、部件以及整体设备时,一般都要用到信号源。同时,也在电

路实验和设施检测中拥有十分广泛的用处。波形信号发生器是能够产生大量的

信号,并保证精度高、稳定性高、可以重复性使用和简单操作性的电子仪器。

2设计方案遴选

在进行硬件电路搭建前必须得选择好合适的产品的零部件,以发挥器件的

基本功能。

一个完整的波形信号发生器需要几个零部件组成,有很多模块可以供我们

选择,不过需要在我们的经济水平以及产品来兼容性上来考虑,产品的基本形

式是由显示功能组成。

2.1单片机的选择

方案1:使用STM32系列单片机

STM32单片机该款产品的优缺点:STM32系列主要是为需求低成本,功耗低,

高性能的嵌入式应用设计的ARM,基本集成市场市面中工业领域的功能的

STM32,唯一美中不足的地方在于成本偏高,使用起来较为复杂,对一个学生来

讲,这两个缺点都是偏大的。

方案2:使用51系列单片

51单片机该款产品的优缺点:51单片机是属于很容易上手,并且很经典

的一款产品,软件到内部硬件都拥有整套的按位操作系统,一般可称为微处理

器,片内RAM双重功能地址区间是所拥有的功能,以及乘法和除法指令,使

用极为灵活,但是没有完美无瑕的产品以及毫无逻辑漏洞的程序,51单片机也

还是有缺点的,比如AD、EEPROM之类的功能需扩展,增加了硬软件的负

担,且保护芯片能力较差,很容易烧掉芯片,综合成本、技术成熟程序以及产

品的功能的需求,所以我选择了51系列的单片机。

3

湖南商务职业技术学院毕业设计

2.2系统框图设计

产品系统框图设计如下:

波形显示

电流、电

按键单片机数模转换输出

压转换

电源

图2.2.1系统框图

3产品硬件设计

由AT89C51单片机组成的此系统,LCD1602液晶显示器,按键模块,

DAC0832模块,LM358模块,以及电源组成。

电路板上有六个按键,一个是复位按键,一个是电源开关按键,剩下四个

是:设置波形切换,设置频率+、设置频率-、设置幅值频率大小。

在处于设置模式之中,LCD1602液晶显示器会有相对应的标志,设置切换

波形的时候,会有不同的波形,设置加减的时候,会有相对应的数字加减。想

要恢复初始化状态可以按复位键就可以回到初始位置。

4

湖南商务职业技术学院毕业设计

3.1AT89C51单片机核心电路设计

美国ATMEL公司生产推出的AT89C51单片机,是一种性能高、功耗低、带

4KFlashMemory的8位CMOS单片微型计算机芯片,片内含4Kbytes的可反复

擦写的只读程序存储器(OEROM)和128bytes的随机存取数据存储器(RAM),

器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指

令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大

AT89C51单片机可以提供高性价比的应用场合,也可以灵活的应用于各种控制

领域。

使用AT89C51单片机核心芯片的原因是它的优点有:

(1)与MCS-51产品指令系统完全兼容

(2)低功耗空闲和掉电模式

(3)三级加密程序存储器

(4)4K字节可擦写Flash闪速存储器

(5)6个中断源

(7)可编程串行UART通道

(8)2个16定时、计数器

AT89C51单片机原理图(a)所示:

图3.1.1AT89C51单片机原理图(a)

AT89C51单片机实物图(b)所示:

5

湖南商务职业技术学院毕业设计

图3.1.2AT89C51单片机实物图(b)

3.2按键电路设计

在这个电路设计当中,我们只需要用到4个按钮,来实现功能效果,所以

采用独立式未编码键盘结构。

独立式未编码键盘结构如图3.2.1所示:

图3.2.1独立式未编码键盘结构

6

湖南商务职业技术学院毕业设计

3.3LCD1602液晶显示模块电路

LCD1602液晶显示器以其微功耗、体积小、显示内容多、轻薄灵活的诸多

优点,在功耗低系统应用中得到越来越广泛的应用。在液晶电路连接上,

LCD1602显示模块可以直接和单片机AT89C51直接接口,液晶显示的D0-D7八

个双向端口接AT89C51单片机的P0口的P0.0-P0.7,单片机的P0口可以作为

通用的输入,输出端口使用,此时,若要驱动NMOS或其他拉电流负载时,需

外接上拉电阻,才能使该位高电平有效,所以中间要接10K的排阻,来决定显

示器高低的点位,是否要显示。

LCD液晶显示器电路原理图如3.3.1所示:

图3.3.1LCD液晶显示器电路原理图

LCD液晶显示器实物图如3.3.2所示:

图3.3.2LCD液晶显示器实物图

7

湖南商务职业技术学院毕业设计

3.4DAC0832电路设计

DAC0832芯片电路原理图如图3.4.1所示:

图3.4.1DAC0832芯片电路原理图

DAC0832是8分辨率的D/A转换集成芯片。和微处理器完全兼容。DA芯片

的优点是价格便宜、接口简单、转换控制容易。

3.5LM358运放电路设计

LM358管脚排列如图3.5.U11所示:

18

OUT1VCC

27

IN1-OUT2

36

IN1+IN2-

45

GNDIN2+

LM358

图3.5.1LM358管脚图

LM358是双运放集成电路。内部包含了两组一样的运算放大器,除了和电

源一起用,两组运放都是相互且独立的。具有电源电压范围宽,静态的功耗

小,可以一个电源使用,价格便宜。

LM358电路原理图如图3.5.2所示:

8

湖南商务职业技术学院毕业设计

图3.5.2LM358电路原理图

4产品软件设计

产品软件设计主要是由主程序和产生波形的子程序组成,重点时产生波形

的子程序的编程,通过编程来得到各种波形。产品软件根据功能分了以下几个

模块:主程序模块、锯齿波模块、三角波模块、正弦波模块、方波模块、延时

子程序模块等。其中各种波形的频率改变可通过采用插入延时子程序的方法来

实现。

显示波形模块是利用DAC0832的8位特点,把波形的数据以8位数据的形

式送进CPU中,只要一按键就能显示波形。

4.1主程序流程图

主程序流程图如图4.1所示:

9

湖南商务职业技术学院毕业设计

开始

Ye

输出对应波形

Key1按下了吗?s

No

Ye

加频率

Key2按下了吗?s

No

Ye

减频率

Key3按下了吗?s

No

Ye

调节频率步进值

Key4按下了吗?s

No

图4.1主程序流程图

产品软件的设计过程中主要实现利用按键来控制不同波形的输出,当按键

1按下时,波形发生器就能转换不同的波形;当按键2按下时,波形发生器就

10

湖南商务职业技术学院毕业设计

加频率;当按键3按下时,函数发生器就减频率;当按键4按下时,波形发生

器就会进入调节步进值。

4.2子程序流程图

正弦波流程图如图4.2.1所示:

开始

x=0

x=正弦函数表数据

x送到0832输出

No

x数组指针加一

x=129?

Yes

图4.2.1正弦波程序流程图

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

正弦波产生子程序如下:

ucharcodesin[64]={135,145,158,167,176,188,199,209,218,226,234,

240,245,249,252,254,254,253,251,247,243,237,230,222,213,204,193,182,

170,158,146,133,121,108,96,84,72,61,50,41,32,24,17,11,7,3,1,0,0,2,5,

9,14,20,28,36,45,55,66,78,90,102,114,128};

11

湖南商务职业技术学院毕业设计

矩形波流程图如图4.2.2所示:

开始

x=0

x送到0832输出

延时

x=0xff

x送到0832输出

延时

图4.2.2矩形波程序流程图

矩形波产生是当A中的内容为0时,输出对应模拟量,然后延时,当A中

的内容为0FFH时,同样输出对应模拟量,再延时,从而得到矩形波。

矩形波产生子程序如下:

ucharcodejuxing[64]={255,255,255,255,255,255,255,255,255,255,

255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,

255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0};

12

湖南商务职业技术学院毕业设计

三角波流程图如图4.2.3所示:

开始

x=0Yes

x=0?

x送到0832输出

No

x=x+1x送到0832输出

Nox=0?Yex=x-1

s

图4.2.3三角波程序流程图

三角波产生通过A中数值的加一递升,当A中的内容加到为0时,A中的

内容减一递减,从而循环产生三角波。

三角波产生子程序如下:

ucharcode

sanjiao[64]={0,8,16,24,32,40,48,56,64,72,80,88,96,104,

112,120,128,136,144,152,160,168,176,184,192,200,208,216,224,232,240,

248,248,240,232,224,216,208,200,192,184,176,168,160,152,144,136,128,

120,112,104,96,88,80,72,64,56,48,40,32,24,16,8,0};

13

湖南商务职业技术学院毕业设计

锯齿波流程图如图4.2.4所示:

开始

x=0x

x送到0832输出

x=x+1

YeNo

sx=0xff?

图4.2.4锯齿波程序流程图

锯齿波产生将00H转入寄存器A中,DAC0832输出A中的内容,当A中的

内容等于FFH返回开始,当A中的内容不通过FFH时,A中的内容增加,从而

波形输出。

锯齿波产生子程序如下:

ucharcodejuchi[64]={0,4,8,12,16,20,24,28,32,36,40,45,49,53,57,

61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,130,134,13

8,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,20

6,210,215,219,223,227,231,235,239,243,247,251,255};

14

湖南商务职业技术学院毕业设计

延时子程序流程图如图4.2.5所示:

开始

a赋初值

b赋初值

b减1,b是

否为0?No

Yes

Noa减1,a是否为

0?

Yes

返回

图4.2.5延时子程序流程图

延时程序如下:

voiddelay(uintxms)//延时函数

{

inta,b;

for(a=xms;a>0;a--)

for(b=110;b>0;b--);

15

湖南商务职业技术学院毕业设计

}

4.3程序设计与测试

对程序编写结束之后,通过软件对所编写的程序进行测试和编译,若是不

能通过编译,则需要进行修改。

程序编程图如4.3所示:

图4.3程序编程图

4.4产品程序清单

16

湖南商务职业技术学院毕业设计

5测试结果

仿真电路原理图如图5.1所示:

图5.1仿真电路原理图

(1)当按键1被按下第一次时,波形显示为正弦波状态。

仿真图如图5.2所示:

图5.2正弦波仿真图

17

湖南商务职业技术学院毕业设计

(2)当按键2被按下第二次时,波形由正弦波转换成方波。

仿真图如图5.3所示:

图5.3方波仿真图

(3)当按键3被按下第三次时,波形为三角波。

仿真图如图5.4所示:

图5.4三角波仿真图

18

湖南商务职业技术学院毕业设计

(4)当按键4被按下第四次时,波形为锯齿波。

仿真图如图5.5所示:

图5.5锯齿波仿真图

19

湖南商务职业技术学院毕业设计

6产品使用说明

6.1产品装配图

产品是单片机,LCD1602液晶显示模块,波形产生模块,幅值调节模块,

电源和按键模块组成。

装配图如下6.1所示:

LCD液晶显示器

AT89C51芯片

复位按键

12M晶振

DAC0832LM358

按键控制电源开关

图6.1装配图

20

湖南商务职业技术学院毕业设计

6.2产品调试

焊接完之后检查所有的器件是否焊接到了覆铜板上,对每一个焊点逐步检

查,以防少焊,漏焊以及虚焊等。

使用万能表来进行测试电路板,查看器件焊接的状况是否合格,电源线和

地线处是否有短路的现象。

产品通电检查。

将编写好的程序,编译烧录到单片机里。

程序烧录成功界面如图6.2所示:

图6.2程序烧录图

21

湖南商务职业技术学院毕业设计

6.3产品使用说明

1、接上电源,按下电源的开关,LCD液晶显示器显示画面。如图6.3.1所示:

图6.3.1LCD液晶显示

2、按下第一个键,可以切换四种波形。分别为方波、三角波、正弦波、锯齿

波。如图6.3.2所示:

22

湖南商务职业技术学院毕业设计

图6.3.2四种波形

3、频率的变化:

(1)按下第二个键,频率相对应减数值。如图6.3.3所示:

23

湖南商务职业技术学院毕业设计

图6.3.3频率减数值

(2)按下第三个键,频率相对应加数值。如图6.3.4所示:

图6.3.4频率加数值

24

湖南商务职业技术学院毕业设计

4、频率幅值的变化:

(1)按下第四个键,幅值当前显示0.1。如图6.3.5(1)所示:

图6.3.5(1)幅值

(2)按下第三个键,幅值相对应加频率数值。如图6.3.5(2)所示

图6.3.5(2)幅值加数值

25

湖南商务职业技术学院毕业设计

(3)按下第二个键,幅值相对应减频率。

如图6.3.5(3)所示:

图6.3.5(3)幅值减频率

(4)按下第三个键,幅值相对应加频率,直到幅值频率显示为1。此时波形的

频率都加一或者减一。如图6.3.5(4)所示:

图6.3.5(4)幅值加频率

26

湖南商务职业技术学院毕业设计

5、第五个键是复位键,可以返回到初始化状态。如图6.3.5(5)所示:

图6.3.5(5)复位键

27

湖南商务职业技术学院毕业设计

7产品设计技术标准

[1]J-STD-001E电气与电子组件的焊接要求

[2]IPC-A-610D(中文版),IPC-A-610E电子组件的可接受性要求

[3]IPC-7711/21电子组件和电路板的返工&返修

[4]GB/T11457-2006信息技术软件工程术语;

[5]GB/T8566-2007信息技术软件生存周期过程标准;

[6]GB/T8567-2006计算机软件文档编制规范。

8参考资料

[1]李双喜;张海涛;张平娟;陈杰平《电工电子技术工程训练实用教程》2016

[2]江志红《51单片机技术与应用系统开发案例精选》2008

[3]杨利军;李移伦;张文初《应用电子技术》2011

[4]舒底清《高等职业教育专业内涵建设》2013

[5]何立民《单片机应用技术选编1》1993

[6]何如兰《电子技术基础实验与实训教程》2017

28

湖南商务职业技术学院毕业设计

附录

附录1元器件清单

CommentDescriptionDesignatorFootprintLibRefQuantity

10uFPolarizedCapacitor(Radial)C1CAPR5-4X5CapPol11

20pF电容C2,C4CAPNTO2.54-3.05x1.78ACAP2

104pF电容C3,C5CAPNTO2.54-3.05x1.78ACAP2

LCD1602LCD1LCD1602LCD16021

Header2Header,2-PinP1,P2HDR1X2Header22

电源输入P3HDR1X3POWER1

2KR1AXIAL-0.3RES21

1KR2,R4,R5AXIAL-0.3RES23

10KR3AXIAL-0.3RES21

103PotentiometerRT1VR4POT21

S1,S2,S3,S4,

SWHDR1X2SW1_key5

S5

电源开关SW1HDR2X3SW11

AT89C51U1DIP40U11

LM358U2DIP8LM3581

DAC0832U3DIP20DAC08321

12MCrystalOscillatorY1AXIAL-0.316M1

29

湖南商务职业技术学院毕业设计

附录2电路原理图

30

湖南商务职业技术学院毕业设计

附录3PCB设计图

31

湖南商务职业技术学院毕业设计

附录4产品实物图

32

湖南商务职业技术学院毕业设计

附录5主程序代码

//基于51单片机波形信号发生器的设计与制作

//移动互联应用技术20移动互联一班董杏芝

#include<reg52.h>//包含头文件

#include<intrins.h>

#defineucharunsignedchar//宏定义

#defineuintunsignedint

sbits1=P3^5;//定义按键的接口

sbits2=P3^6;

sbits3=P3^7;

sbits4=P3^4;

sbitlcdrs=P2^7;//液晶控制位

sbitlcden=P2^6;

charnum,boxing,u;//定义全局变量

intpinlv=100,bujin=1,bujin1=1;

ucharcodetable[]="0123456789";//定义显示的数组

ucharcodetable1[]="Fout=Waveform:";

unsignedlongintm;

inta,b,h,num1;

//自定义字符

ucharcodezifu[]={

0x0e,0x11,0x21,0x10,0x00,0x00,0x00,

0x00,0x00,0x00,0x11,0x11,0x0e,0x00,//正弦波01

0x00,0x07,0x14,0x54,0x04,0x1c,0x00,

0x00,0x1c,0x04,0x04,0x04,0x07,0x00,//矩形波23

0x00,0x01,0x02,0x04,0x10,0x00,0x00,

0x00,0x10,0x38,0x04,0x01,0x00,0x00,//三角波45

0x00,0x01,0x03,0x05,0x09,0x11,0x00,0x00,//锯齿波6

};

ucharcodesin[64]={

135,145,158,167,176,188,199,209,218,226,234,240,245,249,252,254,254,253,251,24

7,243,237,230,222,213,204,193,182,170,158,

146,133,121,108,96,84,72,61,50,41,32,24,17,11,7,3,1,0,0,2,5,9,14,20,28,36,45,55,66,

33

湖南商务职业技术学院毕业设计

78,90,102,114,128

};//正弦波取码

ucharcodejuxing[64]={

255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,25

5,255,255,255,255,255,255,

255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

};//矩形波取码

ucharcodesanjiao[64]={

0,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152,160,168,176,184,1

92,200,208,216,224,232,240,248,

248,240,232,224,216,208,200,192,184,176,168,160,152,144,136,128,120,112,104,96,8

8,80,72,64,56,48,40,32,24,16,8,0

};//三角波取码

ucharcodejuchi[64]={

0,4,8,12,16,20,24,28,32,36,40,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,10

9,113,117,121,125,130,134,138,142,

146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,215,219,22

3,227,231,235,239,243,247,251,255

};//锯齿波取码

voiddelay(uintxms)//延时函数

{

inta,b;

for(a=xms;a>0;a--)

for(b=110;b>0;b--);

}

voidwrite_com(ucharcom)//写命令函数

{

lcdrs=0;

P0=com;

delay(1);

lcden=1;

delay(1);

lcden=0;

}

voidwrite_date(uchardate)//写数据函数

{

lcdrs=1;

P0=date;

delay(1);

lcden=1;

34

温馨提示

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

评论

0/150

提交评论