课程设计(论文)-基于52单片机的信号发生器设计.doc
《课程设计(论文)-基于52单片机的信号发生器设计.doc》由会员分享,可在线阅读,更多相关《课程设计(论文)-基于52单片机的信号发生器设计.doc(32页珍藏版)》请在三一文库上搜索。
1、目录一、 设计要求:3二、 设计内容:31. 硬件电路设计方案论证:32. 硬件电路设计4 核心电路:89C52单片机简介及其外围电路设计4A. AT89C52简介4B. 管脚说明:5C. 外围电路设计6 DAC0832简介及其外围电路7A. 芯片简介:7B. 特性参数:8C. 管脚说明:8D. 工作方式9l 直通方式:9l 单缓冲方式:9l 双缓冲方式:10D. 基准电压11 LCD1602简介及其设计12A. LCD1602简介12B. 管脚说明:12C. 参数特性:13D. LCD1602控制指令:13E. LCD1602控制信号线:143. 软件流程图:154. 周期的设置以及改变的步
2、进:175. 仿真结果17l 开机画面:17l 波形仿真:17(1)方波:17(2) 三角波:19(3) 正弦波:21(4) 改变振幅:(以正弦波为例)246. 源程序24三、 设计感想32四、 参考文献32基于52单片机的信号发生器设计摘要:函数信号发生器作为一种常用的信号源,是现代测试领域中应用最为广泛的通用仪器之一。在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都要有信号源,由它产生不同频率不同波形的信号,加到被测器件上,用其他仪器观察测量被测元件的输出响应,用以分析确定它们的性能参数。信号发生器是电子测量领域最基本、应用最广泛的电子仪器、它可以产生方波、三角波、正弦波等信号
3、,因而广泛应用于通信,雷达,导航灯领域。本次智能仪器课程设计的信号发生器以52系列单片机为核心,实现简易,低频的信号输出。关键字:89C52,信号发生器1、 设计要求:1.信号发生器可产生方波,三角波,正弦波信号;2.信号的振幅,频率可调,波形可切换;3.信号的名称,周期可用LCD显示屏显示。 2、 设计内容:1. 硬件电路设计方案论证:1 采用模拟电路方法,用555振荡器产生频率,振幅可调的方波,方波经过积分电路产生三角波,三角波经过二阶有源低通滤波产生正弦波。优点:信号精确度高,所产生的信号为模拟信号,更可靠;缺点:信号的频率改变较为复杂,频率的显示复杂,且计算困难。2 采用数字方法,用8
4、9C52单片机为核心,以单片机P0口为数据输出口,数据输出加到DAC0832上,DAC0832采用单缓冲连接方式,通过单片机产生的数据的变化,DAC0832实时产生不同形式波形优点:波形建立方便,快速;频率调节方便,呈严格线性关系,显示方便;缺点:波形为离散波形,精确度比模拟波形差用单片机产生波形,由于单片机执行速度快,所以,误差很小,所以此次设计采用第二种设计方案。2. 硬件电路设计1 核心电路:89C52单片机简介及其外围电路设计 图2.2.1 AT89C52单片机A. AT89C52简介 AT89C52单片机是INTEL公司MCS-51系列单片机中基本的产品,它采用ATMEL公司可靠的C
5、MOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了CMOS的高速和高密度技术及CMOS的低功耗特征,它基于标准的MCS-51单片机体系结构和指令系统,属于89C51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。89C52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。此外,89C52还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而R
6、AM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。89C52有PDIP(40pin)和PLCC(44pin)两种封装形式。这里选用的时钟振荡频率为12MHZ。B. 管脚说明:l VCC:供电电压。l GND:接地。 l P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 l P1口:P1口是一个内部提供
7、上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 l P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对
8、外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口作为AT89C51的一些特殊功能口,管脚 备选功能 l P3.0 RXD(串行输入口) l P3.1 TXD(串行输出口) l P3.2 /INT0(外部中断0) l P3.3 /INT1(外部中断1) l P3.4 T0(计时器0外部输入)l
9、P3.5 T1(计时器1外部输入) l P3.6 /WR(外部数据存储器写选通) l P3.7 /RD(外部数据存储器读选通) l RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。l ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执
10、行MOVX,MOVC指令是ALE才起用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。l /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA / VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 l XTAL1:反向振荡放大器的输入及内部时钟工
11、作电路的输入。 l XTAL2:来自反向振荡器的输出C. 外围电路设计 图2.2.2 单片机复位电路和时钟电路l 时钟电路:时钟电路的连接采用内部时钟方式,连接方法如上图,AT89C52有一个用于构成内部振荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与最为反馈元件的片外适应晶体或陶瓷谐振器一起构成自激在黄牛党电路。外接石英晶体及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有严格要求,但是电容太小会轻微影响振荡频率的高低和振荡器工作稳定性以及起振的难易程度故这里电容使用30PF的常用于单片机振荡电路中的电容。l
12、复位电路:单片机的复位是靠外电路实现的,在时钟工作以后米之遥单片机的RST引脚上出现2个周期以上的高电平,单片机便实现初始化状态复位。为了保证应用系统可靠的复位,通常是RST引脚保持10ms以上的高电平。复位电路连接如上图所示。此电路仅用一个电容,一个电阻和一个按键开关,系统上电时,在RC电路充电过程中由于电容连段的电压不能跳变,故RST端电平呈高电平,系统复位。经过一段时间,电容充电,使得RST端呈低电平,复位结束。l 中断申请:如下图,本次设计中用到了外部中断0和外部中断1,在改变信号频率的时候,通过按键开关,触发外部中断0(减少频率)或者外部中断1(增加频率)以起到增加延时和减少延时的目
13、的,从而达到改变频率的目的,连接图如下: 图2.2.3 外部中断与AT89C52连接方式 图2.2.4 按键开关连接方式l P0口上拉电阻:由于P0口在用做数据线的时候,无法输出高电平,所以在实际电路中要借助上拉电阻,使得在P0口输出高电平时,通过上拉电阻使得P0口正常输出,而在输出低电平时,P0口又可将电平拉低,实现高低电平的切换输出,否则讲无法输出高电平。图2.2.5 上拉电阻与单片机连接方法2 DAC0832简介及其外围电路A. 芯片简介: DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片 以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广
14、泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。其封装和元件图分别如下:图2.2.6 DAC0832封装图 图2.2.7 DAC0832元件在proteus中的元件图B. 特性参数:l 分辨率为8位; l 电流稳定时间1us; l 可单缓冲、双缓冲或直接数字输入; l 只需在满量程下调整其线性度; l 单一电源供电(+5V+15V); l 低功耗,20mW。C. 管脚说明:l D0D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错); 此次设计中,D0D7数据口与单片机P0口相连,实现数据的传输,连接方式如下: 图2
15、.2.8 单片机一端连接方式 图2.2.9 DAC0832一端连接方式l ILE:数据锁存允许控制信号输入线,高电平有效; l CS:片选信号输入线(选通数据锁存器),低电平有效; l WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存; l XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效; l WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平
16、时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。 l IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化; l IOUT2:电流输出端2,其值与IOUT1值之和为一常数; l Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度; l Vcc:电源输入端,Vcc的范围为+5V+15V; l VREF:基准电压输入线,VREF的范围为-10V+10V; l AGND:模拟信号地 l DGND:数字信号地 注:由于DAC0832输出信号为电流信号,为了得到电压信号,因而在输出端需加一级运算放大器,使得输出信号变为
17、电压信号,连接方法如下图: 图2.2.10 运算放大器与DAC0832连接方法D. 工作方式 DAC0832可工作于三种方式:直通方式、单缓冲方式和双缓冲方式。l 直通方式:当DAC0832片选信号与写信号、及传送控制信号的引脚全部接地,允许输入所存信号ILE接+5V,其工作于直通方式,数字量一旦写入,就直接进入DAC寄存器,进行D/A转换,但由于直通方式不能直接与系统总线连接,另需锁存器,故很少应用l 单缓冲方式:所谓单缓冲方式,就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控制的所存方式,当人也可使两个寄存器同时选通或者锁存。因此,单缓冲方式有三种不同接法:如下图
18、所示: 图2.2.11 DAC寄存器直通方式 图2.2.12 输入寄存器直通方式图2.2.13 两寄存器同时选通所存l 双缓冲方式:所谓双缓冲方式,就是把DAC0832的两个寄存器都接成受控所存方式。由于芯片中有两个数据存储器,这样就可以将8位输入数据先保存在“输入寄存器”中,当需要D/A转换时,再将数据从寄存器送入“DAC寄存器”锁存,并进行D/A转换输出。采用这种方式,可以克服在输入数据更新期间输出模拟量随之不稳定的现象。这时,可以再上一次模拟量输出同时,将下一次要转换的数据事先存入“输入寄存器”中,一方面克服了不稳定现象,另一方面提高了转换速度。用这种方式可同时更新多个D/A转换器输出。
19、连接方式如下: 图2.2.14 双缓冲方式连接方法 由于本次设计单片机的时钟频率为12MHZ,在满足DAC0832的数据输入的准确性要求同时,为了提高转换速度,本次设计采用单缓冲连接方式(DAC寄存器直通方式),即将和接地,用P2.0控制,与单片机WR信号口相连实现单缓冲方式,本次设计,单片机分配给DAC0832的地址为0EFFH。连接如下:图2.2.15 单片机与DAC0832控制线连接方法注:在使用DAC0832时候要注意一下几点:第一,WR选通脉冲应该有一定宽度,通常要大于500ns,尤其是选择+5电压时,更应满足此要求,如果选择+15,则WR脉冲宽度大于100ns即可,此时为芯片最佳工
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 论文 基于 52 单片机 信号发生器 设计
链接地址:https://www.31doc.com/p-3971952.html