当前位置:文档之家› 简易波形发生器的设计

简易波形发生器的设计

目录第一章单片机开发板 (1)1.1 开发板制作 (1)1.1.1 89S52单片机简介 (1)1.1.2 开发板介绍 (2)1.1.3 89S52的实验程序举例 (3)1.2开发板焊接与应用 (4)1.2.1开发板的焊接 (4)1.2.2开发板的应用 (5)第二章函数信号发生器 (7)2.1电路设计 (7)2.1.1电路原理介绍 (7)2.1.2 DAC0832的工作方式 (9)2.2 波形发生器电路图与程序 (10)2.2.1应用电路图 (10)2.2.2实验程序 (11)2.2.3 调试结果 (15)第三章参观体会 (16)第四章实习体会 (17)参考文献 (18)第一章单片机开发板1.1 开发板制作1.1.1 89S52单片机简介图1.1 89s52 引脚图如果按功能划分,它由8个部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EP ROM)、I/O口(P0口、P1口、P2口、P3口)、串行口、定时器/计数器、中断系统及特殊功能寄存器(SF R)的集中控制方式。

各功能部件的介绍:1)数据存储器(RAM):片内为128个字节单元,片外最多可扩展至64K字节。

2)程序存储器(ROM/EPROM):ROM为4K,片外最多可扩展至64K。

3)中断系统:具有5个中断源,2级中断优先权。

4)定时器/计数器:2个16位的定时器/计数器,具有四种工作方式。

5)串行口:1个全双工的串行口,具有四种工作方式。

6)特殊功能寄存器(SFR)共有21个,用于对片内各功能模块进行管理、监控、监视。

7)微处理器:为8位CPU,且内含一个1位CPU(位处理器),不仅可处理字节数据,还可以进行位变量的处理。

8)四个8位双向并行的I/O端口,每个端口都包括一个锁存器、一个输出驱动器和一个输入缓冲器。

这四个端口的功能不完全相同。

A、P0口既可作一般I/O端口使用,又可作地址/数据总线使用;B、P1口是一个准双向并行口,作通用并行I/O口使用;C、 P2口除了可作为通用I/O使用外,还可在CPU访问外部存储器时作高八位地址线使用;D、P3口是一个多功能口除具有准双向I/O功能外,还具有第二功能。

控制引脚介绍:1)电源:单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。

2)时钟引脚XTAL1、XTAL2时钟引脚外接晶体与片内反相放大器构成了振荡器,它提供单片机的时钟控制信号。

时钟引脚也可外接晶体振荡器。

振蒎电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器3)RST:当振荡器运行时,在此引脚外加上两个机器周期的高电平将使单片机复位(RST)。

我们在此引脚与VCC之间连接一个约8.2千欧的下拉电阻,与引脚之间连接一个约10微法的电容,以保证可靠复位。

在单片机正常工作时,此引脚应为≤0。

5V低电平。

4)ALE:当访问单片机外部存储器时ALE(地址锁存允许)输出脉冲的负跳沿用于16位地址的底8位的锁存信号。

即使不访问外部锁存器,ALE端仍有正脉冲信号输出,此频率约为时钟振荡器的1/6。

但是每当访问外部数据存储器时,在两个机器周期中ALE只出现一次,即丢失一个ALE脉冲。

因此,严格来说,用户不能用ALE做时钟源或定时。

ALE端可以驱动8个TTL负载5)/PSEN(29脚):此脚的输出是单片机访问外部程序存储器的读选通信号。

在由外部程序存储器取指令(或常数)期间,每个机器周期PSEN两次有效。

但在此期间,每当访问外部数据存储器时,这两次有效的/PSEN信号不出现。

/PSEN可以驱动(吸收或者输出电平)8个LSTTL负载。

6)/EA/VPP(31脚):当EA端保持高电平时,单片机访问内部存储器,但在PC值超过0FFFH时,讲自动转向执行外部存储器内的程序。

当/EA保持低电平时,则只访问外部程序存储器,不管是否有内部存储器。

1.1.2 开发板介绍本次的生产实习的第一个任务是89S52单片机开发板的设计与焊接。

在以往我们的单片机原理课上我们主要学习了51系列的单片机的原理与功能应用,89S52尚未涉及,这次有机会可以利用S52进行开发与设计。

图1.2 生产单片机开发板89S52实际图上述图片就是在实际工作中工厂所开发与应用的成品。

外部扩展口,LED电子显示灯,等外部扩展设备以及多芯片都是S52所具有的特性。

有别于51芯片,S52有自身的独特性。

使用89S52单片机,可进行51单片机的学习实验以及实际项目的开发;ISP下载线编程,方便灵活,免除购置编程器的费用;典型实用电路,16个功能模块。

模块间各自独立,接口均由排针引出,使用插线可将模块间任意组合,开发和实验各种项目,真正的自由组合,绝非那些只能做固定实验的实验板;丰富的实验程序,全部的C语言源代码,几乎到每句非常详细的注释,便于学习和理解。

实验程序中还包括几乎接近实用产品设计的实验:产品计数器、倒计时器、数字电压表、摇骰机、交通路口拍照系统、工厂自动生产线、温度采集记录器;由具有十余年实际产品设计经验的工程师亲自编写的教程,贴近实用,通俗易懂;全部采用优质元器件,性能可靠,整体美观实用。

S52开发板的模块特点:双路电源模块:提供全板各模块电源,专为A/D和D/A单元模块提供一路稳定的参考电源;单片机核心系统模块:实验板的核心,全部引脚均由双排插针引出,便于引脚的复用;LED 指示灯模块:8位LED高亮指示灯,可做跑灯、信号提示等实验;蜂鸣器、继电器控制模块:可作报警、大负载的开关控制实验;按键输入模块:4位独立按键,可作按键输入实验;光藕隔离输入输出模块:可做霍尔脉冲计数、直流电机等实验;数码管显示模块:4位共阳极数码管,可做各种数码管显示实验;锁存器模块:便于系统的扩展实验;模拟信号调理模块:电压输入、温度传感器输入信号的调理,可做为A /D的前级输入和理解运算放大器的应用原理;A/D转换模块:采用8路输入的8位并行A/D芯片ADC0809,可做相应的A/D实验;D/A转换模块:采用8位并行D/A芯片DAC0832,可做相应的D/A实验;UART模块:可做与PC机的各种通讯实验;液晶显示接口模块:可做段式液晶0804以及字符液晶1602实验;存储器模块:采用I2C总线的AT24C02,可做I2C和有关的存储实验;实时时钟模块:采用飞利浦的PCF8563,可做相应实时时钟的实验;红外遥控模块:可做红外遥控器解码实验。

1.1.3 89S52的实验程序举例S52可以实现多种的实验程序,其中包括LED指示灯实验:5种跑灯实验,掌握单片机I/O口作为输出的设计方法;按键输入实验:2种按键实验,掌握单片机I/O口作为输入的设计方法;蜂鸣器、继电器实验:蜂鸣器、继电器控制实验各1种,掌握报警控制和大功率器件控制原理;数码管实验:3种动态扫描实验,学习数码管的使用及动态扫描显示控制方法;计数中断实验:学习霍尔元件及光耦的工作原理和使用、中断概念以及计数器的设计实验;定时器实验:2种实验,学习定时器原理及加深中断概念的理解,倒计时器的设计实验;通讯实验:3种不同的实验(查询、中断、协议),掌握串行通讯的原理和编程的方法;段式液晶实验:2种实验,掌握段式液晶的原理、使用及编程方法;A/D实验:2种实验,学习和掌握A/D原理、统一编址概念及A/D转换计算方法;数字电压表实验:利用A/D转换器和段式液晶设计接近实用的数字电压表;温度传感器实验:学习传感器的原理和使用以及信号调理方法、运算放大器的应用;字符液晶实验:学习和掌握字符型液晶显示器的原理、编程与使用;存储器实验:学习I2C总线原理和掌握E2PROM存储器24CXX的编程与使用方法;实时时钟实验:学习实时时钟的应用原理以及掌握PCF8563编程与使用的方法;D/A实验:2种实验,学习和掌握D/A原理以及D/A转换计算方法;锁存器实验:学习和掌握锁存器原理,模拟摇骰机的设计;红外遥控实验:学习红外遥控的编码原理,掌握对红外遥控器的解码方法。

在本次实习中,我们主要掌握并利用发光二极管的LED亮灯实验程序。

在S52开发板上的8个LED二极管显示灯可以实现多种多样的程序效果,以下为可实现的程序范例(流水灯程序) :#include<reg52.h> //头文件#define uchar unsigned char#define uint unsigned intvoid delay(uint); //声明延时函数void main(void){uint i;uchar temp;while(1){temp=0x01; //给初值,第一个灯灭for(i=0;i<8;i++) //8个流水灯逐个闪动{P1=~temp; //将temp取反再赋值给P1口delay(100); //调用延时函数temp<<=1; //流水灯左移}temp=0x7F; //给初值,第一个灯亮。

for(i=0;i<8;i++) //8个流水灯依次反向全部点亮{P1=temp; //将temp赋给P1delay(100); //调用延时函数temp>>=1; //流水灯右移}}}void delay(uint t) //定义延时函数{register uint bt;for(;t;t--)for(bt=0;bt<255;bt++);}1.2开发板焊接与应用1.2.1开发板的焊接由于本次的开发板电路已经给出,所以只需要按照元件的各自位置的插槽进行放置即可,但要求根据开发板画出电路的PROTEL电子原理图。

图1.3 89S52实习用开发电路图本次实习已不是第一次进行焊接练习,单片机的开发板焊接已经比较熟练。

单片机的电路焊接应注意以下事项:注意电解电容、发光二极管、蜂鸣器的正负极性不能接反、三者均是长的管脚接正极、短的管脚接负极,如接反轻则烧毁元气件,重则发生轻微爆炸;三极管9015的E、B、C、注意接法,板子上面有相应的图形形状,按照那个图形焊接;焊接元气件的过程之中焊接时间应在2-4秒。

焊接时间不宜过长,否则不仅会烧毁元气件、而且易使焊点容易脆裂;电阻焊接过程中注意相应的阻值对应,不要焊错。

否则影响相应的电流大小;排阻焊接过程之中、RP1、RP2、RP3、有公共端应该接VCC、其余管脚为相应的独立端、排阻焊接过程之中用万用表测量各排阻的阻值、对照说明书焊接相应的排阻;ISP插槽应该注意方向。

缺口对应板子的外面、如果接反下载线将不能接好;数码管的焊接应该是有小数点的一侧在下面、接反影响数码管的显示;发光二极管要注意正负极性,长端为正极,短端为负极。

在焊接时也一定要注意焊接元件的顺序,基本上秉承着方便性原则,先焊接大部件,在焊接小部件,焊接元件管脚多时(双排40脚排针)要注意焊接工艺,尤其注意的是在焊接芯片插槽时切不可把芯片连到插槽上一同焊接,因为焊接时过热的温度会烧坏芯片,一定要把芯片插槽焊接完毕之后,再把芯片插到插槽中。

相关主题