1、DA卡设计微机原理课程设计微机原理课程设计 摘 要 本文用DAC0832芯片构成16位D/A转换卡,它由控制逻辑电路、时序产生器、移位寄存器、D/A转换器及电压比较器组成。DAC0832是8分辨率的D/A转换集成芯片,与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。 根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式,将数字量转换为相应的模拟量。数字量由二进制位组成,每个二
2、进制的权,要把数字量转换为相应的模拟量电压,要先把数字量的每一位上的代码按权转换成为对应的模拟电流,再把模拟电流相加,最后由运算放大器将其转变成模拟电压。 关键词:DAC0832;D/A转换卡;数据锁存器;双缓冲方式目 录前 言 . 3 一、设计的任务与要求 . 4 1.1 设计任务 . 4 1.2 设计要求 . 4 二、总体设计和系统框图 . 4 2.1 方案选择 . 4 2.2 方案确定 . 5 2.3 系统框图 . 5三、设计方式 . 6 3.1 缓冲工作方式 . 6 3.2 将输入寄存器的内容写入DAC寄存器 . 6 3.3 数模转换原理 . 63.4 DAC0832芯片 . 7 3.
3、5 DAC0832的引脚图 . 9 3.6 双极性电压输出 . 11 3.7 正弦波程序产生流程图 . 12 四、系统仿真和调试 . 13 4.1 系统仿真 . 13 4.2 软件程序设计 . 18 五、设计结果分析 . 21 5.1 系统能实现的功能 . 21 5.2 系统所选用器件一览表 . 21 六、设计总结和体会 . 22 6.1 设计总结 . 22 6.2 设计体会 . 22 6.3 设计分工 . 23 致 谢 . 23 参考文献 . 23前 言 自然界中存在的可测物理量,就其表现形式来看,可以分为模拟量和数字量两种。模拟量的表现形式是连续的,数字量的表现形式是不连续的(离散的)。由
4、于数字信号更易存储和处理,使得数字处理系统在各个领域中的广泛应用,这样当处理模拟信号时需要将其转换成数字量,因为只有数字量才能被数字系统识别。另一方面,在许多情况中,系统最后得到的数字结果又可能需要再变换成模拟量,来实现对某种控制和微调。因此就要求模拟量与数字量之间相互能够进行转换的器件。因此产生了两种不同的转换器:将模拟量转换成数字量的装置称为模数转换器,它的输入是模拟量,输出是数字量,简称为A/D转换器或者ADC(Analog Digital Converter)。反之,数字量转换成模拟量的装置称为数模转换器,它的输入是数字量,输出是模拟量,简称为D/A转换器或者DAC(Digital A
5、nalog Converter)1-7.一、设计的任务与要求 1.1 设计任务 设计一块D/A卡,该卡具有对05V的模拟电压输出能力,该卡插在PC机的IMBPC扩展总线插槽上,选择DAC0832作为DA转换器芯片。 选用芯片:DAC0832等。 1.2 设计要求 画出电路原理图,说明工作原理,编写利用该卡进行正弦波输出的程序。 二、总体设计和系统框图 2.1 方案选择 :为了用DAC0832进行数/模转换,可以使用两种方法对数据进行锁存。 方案一: 本方案是使输入寄存器工作在锁存状态,而DAC寄存器工作在不锁存状态。具体的说,就是使WR2和XFER都是低电平,这样,DAC寄存器的锁存端得不到有
6、效电平;另一方面,使输入寄存器的有关控制信号中,ILE处于高电平,CS处于低电平。这样,当WR1端来一个负脉冲时,就可以完成一次变换。 方案二: 本方案是使输入寄存器工作在不锁存状态,而使DAC寄存器工作在锁存状态,就是使WR1为低电平,CS为低电平而ILE为高电平,这样,输入寄存器的锁存信号处于无效状态;另外,WR2和XFER端输入一个负脉冲,从而使DAC寄存器工作在锁存状态。这样做,也可以达到锁存目的。 2.2 方案确定 在此次设计中我们采用方案一对数据进行锁存。 2.3 系统框图 DAC0832进行数/模转换系统框图如图(1)所示:数/模转换系统框图(1) 三、设计方式 3.1 缓冲工作
7、方式 利用D/A0832芯片的双缓冲工作方式将数字量转换成模拟量 3.2 将输入寄存器的内容写入DAC寄存器 将输入寄存器的内容写入DAC寄存器即使WR1为低电平,CS为低电平而ILE为高电平,这样,输入寄存器的锁存信号处于无效状态,待转换的数据被写入输入寄存器;WR2和XFER端输入一个负脉冲,从而使DAC寄存器工作在锁存状态。将数据写入DAC寄存器,同时启动变换。 3.3 数模转换原理 数模转换原理如下: 1、D/A转换器可以视为微机的一种外围设备,实现D/A转换器和微机接口技术的关键是数据锁存问题。当CPU向D/A转换器输出一个数据时,这个数据在数据总线上只持续很短的时间,必须有数据锁存
8、器锁住这个数据,才能得到持续稳定的模拟量输出。有些D/A转换器芯片本身不带锁存器,此时74LS273芯片以及可编程的并行I/O接口芯片8255A均可作为D/A转换的数据锁存器,有些D/A转换器芯片本身带有锁存器。 2、对于内部带数据输入寄存器的D/A芯片,使用时可以将D/A直接和数据总线相连。以DAC0832为例来具体介绍D/A转换芯片的工作原理和使用方法。D/A转换器原理图如图(2)所示:D/A转换器原理图(2)3、D/A转换器包括四个部分:电阻解码网络,权位开关,相加器和参考电压。4、D/A转换器的作用是将数字量转换为相应的模拟量。数字量由二进制位组成,每个二进制的权,要把数字量转换为相应
9、的模拟量电压(多数情况需要转换后的模拟信号以电压的形式输出),需要先把数字量的每一位上的代码按权转换成为对应的模拟电流,再把模拟电流相加,最后由运算放大器将其转变成模拟电压。3.4 DAC0832芯片 DAC0832芯片简单介绍如下: 1、DAC0832 为8位电流DAC器件,该芯片为CMOS器件,单电源范 围为+5V+15V。参考电压可在-10V+10V范围内选择,转换速度约1us,输入待转换的数据保持时间应不小于90ns。 2、DAC0823内部有一个T型电阻网络,用来实现D/A转换,它需要外接运算放大器,才能得到模拟电压输出。在DAC0832中有两级锁存器,第一级锁存器为输入寄存器,它的
10、锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号XFER。因为有两级锁存器,所以DAC0832可以工作在双缓冲器方式,即在输出模拟信号的同时可以采集下一个数字,于是可以有效的提高转换速度。另外有了两级锁存器以后,可以在多个D/A转换器同时工作,利用第二级锁存器的锁存信号来实现多个转换器的同时输出。 3、数字量是由一位一位的数字构成的,每一个数位都代表一定的权。比如,10000001,最高位的权是27=128,所以此位上的代码1表示数值1128,最低位的权20=1,此位上的代码1表示数值1,其他数位均为0,所以,二进制数10000001就是十进制数129。为了把一个
11、数字量变成模拟量,必须把每一位上的代码按照权来转换为对应的模拟量,再把各模拟量相加,这样得到的总的模拟量对应于给定的数据。在集成电路中,通常采用T型网络实现数字量向模拟电流的转换,再利用运算放大器来完成模拟电流到模拟电压的转换。所以要把一个数字量变为模拟电压,实际上需要两个环节:即先把数字量变为模拟电流,这是由D/A转换器完成的,再将模拟电流变为模拟电压,这是由运算放大器完成的。在D/A转换时涉及的参数包括分辨率、转换精转换速率、建立时间、线性误差等。 4、根据能否直接和总线相连,目前市场上的D/A转换芯片可以分为两类。其中有一类芯片内部没有数据输入寄存器,比如AD7520、AD7521、DA
12、C0808等,内部结构比较简单,但是这些芯片不能直接和总线相连。另一类芯片内部有数据输入寄存器,比如DAC0832、AD7524等,这些芯片使用时可以直接和系统总线相连。3.5 DAC0832的引脚图 DAC0832的引脚图如图(3)所示:DAC0832的引脚图(3)根据DAC0832的引脚图,图中各信号的定义如下: CS 片选信号,它和允许输入锁存信号ILE合起来决定WR1是否起作用。 ILE 允许锁存信号。 WR1 写信号1,它作为第一级锁存信号将输入数据锁存到输入寄存器中 ,WR1必须和 CS、ILE同时有效。 WR2 写信号2,它将锁存在输入寄存器中的数据送到8位DAC寄存器中进行锁存
13、,此时传送控制信号XFER必须有效。XFER 传送控制信号,用来控制WR2。D7D0 8位数据输入端,D7为最高位。 IOUT1 模拟电流输出端,当DAC寄存器中全为1时,输出电流最大,当DAC寄存器中全0时,输出电流为0。IOUT2 模拟电流输出端,IOUT2为一个常数和IOUT1差,也就是说,IOUT1+IOUT2=常数。 当DAC寄存器内容全为1时,IOUT1最大,IOUT2=0; 当DAC寄存器内容全为0时,IOUT1=0,IOUT2=最大; 当DAC寄存器内容为N时,IOUT1=VREFN/(256Rfb),IOUT2=VREF/Rfb- IOUT1,无论N值多大:IOUT1+IOU
14、T2= VREF/Rfb(1-28)=常数VREF/Rfb。 Rfb反馈电阻引出端,DAC083内部已经有反馈电阻,所以,Rfb端可以直接接到外部运算放大器的输出端,这样,相当于将一个反馈电阻接在运算放大器的输入端和输出端之间。 Vref 参考电压输入端,此端可接一个正电压,也可接负电压,范围为10+10V。外部标准电压通过VREF与T型电阻网络相连。 VCC 芯片供电电压,范围为515V,最佳工作状态是15V。 AGND模拟量地,即模拟电路接地端。DGND数字量地。即数字电路接地端。3.6 双极性电压输出 VOUT1-IOUT1Rfb-VREFN/(256Rfb)Rfb -N/256VREF
15、, VOUT1模拟输出电压的极性总是与VREF极性相反,为单极性输出。 VOUT2模拟输出电压可利用基尔霍夫节点电流定律列出方程:VOUT2/10+VREF/10-VOUT1/100 代入VOUT1-N/256VREF,求解得: VOUT2(N-128)/128VREF 当N=FFH时,VOUT2=5V 当N=00H时,VOUT2=0V 当N80H时,VOUT22.5V. VOUT2为双极性输出.可根据应用场合的需要,将D/A转换接口芯片接成单极性输出或双极性输出。当要监视的物理量有方向性时,例如角度的正向与反向,速度的增大与减小等,与此相适应,要求D/A转换的输出必须是双极性的。DAC083
16、2对执行时序也有一定要求:第一,选通脉冲应有一定宽度,通常要求500ns,当取VCC+15V典型值时,宽度只要100ns就可以了。此时器件处于最佳工作状态。第二,数据输入保持时间应不小于90ns。在满足这两个条件下,转换电流建立时间为1.0s。 3.7 正弦波程序产生流程图 正弦波程序产生流程图如图(4)所示: 正弦波程序产生流程图四、系统仿真和调试 4.1 系统仿真 本设计采用的系统仿真软件为ISA卡,其资料如图(5)所示:ISA卡资料图 ISA卡各引脚的名称及含义如下: Pin Name Description 引脚 名称 含义 A1 /I/O CH CK I/O channel chec
17、k; active low=parity error A2 D7 Data bit 7 A3 D6 Data bit 6A4 D5 Data bit 5 A5 D4 Data bit 4 A6 D3 Data bit 3 A7 D2 Data bit 2 A8 D1 Data bit 1 A9 D0 Data bit 0 A10 I/O CH RDY I/O Channel ready, pulled low to lengthen memory cycles A11 AEN Address enable; active high when DMA controls bus A12 A19 A
18、ddress bit 19 A13 A18 Address bit 18 A14 A17 Address bit 17 A15 A16 Address bit 16 A16 A15 Address bit 15 A17 A14 Address bit 14 A18 A13 Address bit 13 A19 A12 Address bit 12 A20 A11 Address bit 11 A21 A10 Address bit 10 A22 A9 Address bit 9 A23 A8 Address bit 8 A24 A7 Address bit 7 A25 A6 Address b
19、it 6 A26 A5 Address bit 5 A27 A4 Address bit 4 A28 A3 Address bit 3 A29 A2 Address bit 2 A30 A1 Address bit 1 A31 A0 Address bit 0 B1 GND Ground B2 RESET Active high to reset or initialize system logic B3 +5V +5 VDC B4 IRQ2 Interrupt Request 2B5 -5VDC -5 VDC B6 DRQ2 DMA Request 2 B7 -12VDC -12 VDC B
20、8 /NOWS No WaitState B9 +12VDC +12 VDC B10 GND Ground B11 /SMEMW System Memory Write B12 /SMEMR System Memory Read B13 /IOW I/O Write B14 /IOR I/O Read B15 /DACK3 DMA Acknowledge 3 B16 DRQ3 DMA Request 3 B17 /DACK1 DMA Acknowledge 1 B18 DRQ1 DMA Request 1 B19 /REFRESH Refresh B20 CLOCK System Clock
21、(67 ns, 8-8.33 MHz, 50% duty cycle) B21 IRQ7 Interrupt Request 7 B22 IRQ6 Interrupt Request 6 B23 IRQ5 Interrupt Request 5 B24 IRQ4 Interrupt Request 4 B25 IRQ3 Interrupt Request 3 B26 /DACK2 DMA Acknowledge 2 B27 T/C Terminal count; pulses high when DMA term. count reached B28 ALE Address Latch Ena
22、ble B29 +5V +5 VDC B30 OSC High-speed Clock (70 ns, 14.31818 MHz, 50% duty cycle) B31 GND Ground C1 SBHE System bus high enable (data available on SD8-15) C2 LA23 Address bit 23 C3 LA22 Address bit 22 C4 LA21 Address bit 21 C5 LA20 Address bit 20 C6 LA18 Address bit 19C7 LA17 Address bit 18 C8 LA16 Address bit 17 C9 /MEMR Memory Read (Active on all memory read cycles) C10 /MEMW Memory Write (Active on all memory write cycles) C11 SD08 Data bit 8 C12 SD09 Data bit 9 C13 SD10 Data bit 10 C14 SD11 Data bit 11 C15
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1