1、制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号 源。由它产生不同频率不同波形的电压 、电流信号并加到被测器件或设备上 , 用其他仪器观察。测量被测仪器的输出响应,以分析确定它们的性能参数。信 号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。它可以产 生多种波形信号,如锯齿波、三角波、梯形波等,因而广泛应用于通信、雷 达、导航、宇航等领域0本次课程设计使用的8086和DAC0832构成的发生器可产生三角波,波形 的周期可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路 简单、结构紧凑、性能优越等特点此设计给出了源代码,通过仿真测试,其 性能指标达到了设
2、计要求。. 专业.专注.设计目的1、 掌握DAC0832与PC机的接口方法。2、 掌握D/A转换应用程序设计方法。三.原理说明1.知识简介:DAC0832当今世界在以电子信是8位分辨率的D/A转换集成芯片,与微处 理器完全兼容,这个系列的芯片以其价格低廉、接口简单、转换控制容易等优 点,在单片机应用系统中得到了广泛的应用。这类D/A转换器由8位输入锁存 器,8位DAC寄存器,8位D/A转换电路及转换控制电路构成。2.DAC0832的引脚及功能:DAC0832是8分辨率的D/A转换集成芯片。与微处理器兼容。这个DA芯 片以其价格低廉、接口简单、转换控制容易等优点。D/A转换器由8位输入锁 存器、
3、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。3.应用特性:DAC083是微处理器兼容型D/A转换器,可以充分利用微处理器的控制能 力实现对D/A转换的控制。这种芯片有许多控制引脚,可以和微处理器控制线 相连,接受微处理器的控制,女口 ILE、/CS、/WR1、/WR2、/XFER端。有两级锁存控制功能,能够实现多通道D/A的同步转换输出。DAC083内部无参考电压源;须外接参考电压源。DAC083为电流输入型D/A转换器,要获得模拟电压输出时,需要外加转 换电路。DAC0832的引脚图及逻辑结构如下图DAC0832结构框图及引脚排列4.各引脚功能说明:DOD7 : 8位数据输入线,
4、TTL电平,有效时间应大于90ns(否则锁存器的 数据会出错);ILE:数据锁存允许控制信号输入线,高电平有效;CS:片选信号输入线(选通数据锁存器),低电平有效;WR1 :数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由 ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输 入数据线变换,LE1的负跳变时将输入数据锁存;XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于 500ns)有效;WR2: DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由 WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出
5、随寄 存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入 DAC寄存器并开 始D/A转换。IOUT1 :电流输出端1,其值随DAC寄存器的内容线性变化;IOUT2:电流输出端2,其值与IOUT1值之和为一常数;Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;Vcc:电源输入端,Vcc的范围为+5V+15V ;VREF:基准电压输入线,VREF的范围为-10V+10V ;AGND :模拟信号地DGND :数字信号地5.DAC0832三种数据输入方式:(1)双缓冲方式:即数据经过双重缓冲后再送入 D/A转换电路,执行两次写操作才能完成一次 D/A转换。这种方式可在D/A转
6、换的同 时,进行下一个数据的输入,可提高转换速率。更为重要的是,这种方式 特别适用于要求同时输出多个模拟量的场合 。此时,要用多片DAC0832 组成模拟输出系统,每片对应一个模拟量。(2)单缓冲方式:不需要多个模拟量同时输出时,可采用此种方式。此时两个寄存器之一处于直通状态,输入数据只经过一级缓冲送入 D /A转换电路。这种方式只需执行一次写操作,即可完成D/A转换。(3)直通方式:此时两个寄存器均处于直通状态,因此要将:、和端都接数字地,ILE接高电平,使LE1、LE2均为高电平,致使两个锁存寄存器同时处于放行直通状态,数据直接送入D/A转 换电路进行D/A转换。这种方式可用于一些不采用微
7、机的控制系统中或 其他不须0832缓冲数据的情况。四.硬件设计1.8086(8088)CPU引脚图(如图1):2.DAC0832 (D/A 转换器)D/A0832是8位并行输出电流型 D/A转换器,其主要参数:转换时间1us,满量程误差土 1LSB,参考电压一10V+10V,供电电压+5V+15V,输 入逻辑电平与TTL兼容。引脚图(如图2):3.8255A (可编程并行接口)8255可编程并行接口芯片有三个输入输出端口 ,即A 口、B 口和C 口,对 应于引脚PA7PAO、PB7PBO和PC7PCO。其内部还有一个控制寄存器, 即控制口。通常A 口、B 口作为输入输出的数据端口 。C 口作为
8、控制或状态信息 的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁 存器。它们分别与端口 A/B配合使用,可以用作控制信号输出或作为状态信号 输入。8255可编程并行接口芯片工作方式说明:方式0 :基本输入/输出方式。适用于三个端口中的任何一个。每一个端 口都可以用作输入或输出。输出可被锁存,输入不能锁存。方式1 :选通输入 /输出方式。这时A 口或B 口的8位外设线用作输入或输出,C 口的4条线中 三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有A 口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯 联络信号和中断请求信号。引脚图(
9、如图3):4.8284在8086CPU内部没有有时时钟发生器,当组成微型机系统时,所需的时钟信号 由外部时钟发生器提供。8284是专门为8086设计的时钟发生器/驱动器。在 8284中,不仅有时钟信号发生器,还有复位信号RESET和准备好信号READY 产生电路,这些电路分别向8086系统提供时钟信号CLK,复位信号RESET和准 备好信号READY,还可向外界提供晶振信号OSC以及外围芯片所需的时钟信号 PCLKo引脚图(如图4):CSYNCvccPCLKVI8284 巴AEN1RDY1ASVNCREADYEfdRDY2FCAEN2CSCOKRESGNDREST82S4五.设计原理D/A转换
10、器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数 字量成正比关系这一特点,将D/A转换器作为微机输出接口 , CPU通过程序向 D/A转换器输出随时间呈现不同变化规律的数字量 ,则D/A转换器就可输出各种各样的模拟量,如方波、三角波、锯齿波、正弦波等。8255A实现波形切换的原理:从8255A的B 口读入外接开关的信号,CPU 读入不同信号值,从而执行不同的代码,向D/A转换器传送不同的数据,控制 D/A转换器输出锯齿波、三角波、方波、正弦波和梯形波。DAC0832采用双缓冲数据输入方式。数据要经过两级锁存后才送入 D/A转 换器。数据写入分两次进行,第一次把待转换的数据写入输入寄存
11、器,第二次 再对DAC寄存器进行一次写操作。延迟作用:方便观察到输出各种波形高低电平时,信号灯发光和熄灭的情 况。a.实验电路图:jf_T彌墊AFS4AE笙AP嘶 8086折空 IMiK TO IKLDfTOi2 _B一斗 罔 _U AiI I 1 LI :a K5】3逅盔DTRirsEEi 普-V常笛兽 RRRE器器雷器誥s器PQ器sd畑茹更薯菇童y5 AE u一ga-v gTESTKLdKEETOI|ccEJ5SDs蔬豈 Ms_fear r7 zi六.程序编译1.输出方波的子程序(一) 编程思路:a.设置8255A的工作方式b.启动DAC0832转换器c.写初值,延时d.取反,延时e.返回
12、(二) 编译子程序:MODEL SMALLSTACK 200H;8255A控制口地址QAC0832的地址;输出方波为0”f方波宽度输出方波为f”方波宽度CODESTART:MOV DX,213HMOV AL,82HOUT DX,ALMOV DX,200HAGAIN: MOV AL,00HCALL DELAY MOV AL,0FFH OUT DX,ALCALL DELAY JMP AGAINDELAY: MOV CX,0ffffH;LOOP $RET END start2.输出三角波子程序(一)编程思路:d.初值加1,返回DAC0832的地址正向初值负向初值e.取反,延时f取反值减1,返回g.循
13、环(二)编译子程序:OUT DX, ALL: MOV DX,200HMOV AL,00HM: OUT DX,ALCALL delayINC ALJNZ MMOV AL,0FFHN:DEC ALJNZ NJMP LMOV CX,0FFFHDAY1:LOOP DAY1RETINT 21HEND START3.输出锯齿波子程序c.写初值d.初值加1,延时MOV DX,213H 设置8255A控制口地址OUT DX,AL ;设置8255A 口 A为方式0输出输出数据初值锯齿波输出输出值J:CALL DELAYJMP JINT 21H;4.输出正弦波子程序(一) 编程思路a写正弦波存储数地址b.写初值c
14、.地址加1,取值加1d.启动DAC0832转换器e.延时f.设置8255A,返回ZXBB: LEA BX,TABMOV CX,0001HZX2: MOV AL,BX;将TAB中的数字一次赋给 AL再输出正弦波INC BXINC CXPUSH AXBG2: MOV DX,211H ;再次读入开关信号,进行比较IN AL,DXCMP AL,04HJNZ BG2POP AXCMP CX,256JNE ZX2JMP ZXBBa.启动DAC0832转换器b.写低电平段,延时,返回c.写上升段,延时,返回d.写高电平段,延时,返回e.写下降段,延时,返回f设置8255A,返回梯形波TXBB: MOV CX
15、,0100H低电平段LL0:DEC CXJNZ LL0LL1: INC AL ;上升段MOV DX, 200HCMP AL,6FHJNE LL1MOV CX,0100HLL2: MOV DX, 200HOUT DX,AL ;高电平段JNZ LL2LL3: DEC AL 下降段CMP AL,00HJNZ LL3关信号,进行比较INAL,DXCMPAL,06HJNZBG3JMPTXBBMOV DX,211H再次读入开七调试方法与结果a.实验箱接法:转换器的CS0832接译码器的200h 233h端口,转换器的VOUT端口接信号灯,8255A 的 8255 端口接 230h-233h 端口 , 82
16、55A 的 PB1, PB2, PB3接信号灯实验结果:1.方 波:信号灯一明一暗2.三角波:信号灯慢慢亮再慢慢暗再慢慢亮3.锯齿波:信号灯慢慢亮再暗再慢慢亮4.正弦波:5.梯形波:信号灯先暗再慢慢亮,持续,在慢慢暗b.实验结果图:4妄Digital O较illoscye Il ini*rl*LzJ/fe八、心得体会开始的时候由于没有经验,不知如何下手,所以就上网搜了很多关于函数 发生器的资料,并翻阅了一些相关书籍。我们小组经过此课程设计我们积累了 一点设计经验,最后成功运行出结果的时候也有些小小的成就感 。在本次课程设计中,无论是在程序设计方面还是实践动手能力都得到了一个非常大的锻 炼,并对硬件知识的了解以及安装调试能力也得到了一个很大的提升 。通过这次课程设计,也非常的清楚的认识了这门课程的重要性 ,也意识到了 自己在程序设计方面的薄弱性。希望在以后的学习和工作中能进一部的加强自 己专业素质和实践动手能力
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1