DA卡设计微机原理课程设计.docx

上传人:b****3 文档编号:26556413 上传时间:2023-06-20 格式:DOCX 页数:20 大小:191.54KB
下载 相关 举报
DA卡设计微机原理课程设计.docx_第1页
第1页 / 共20页
DA卡设计微机原理课程设计.docx_第2页
第2页 / 共20页
DA卡设计微机原理课程设计.docx_第3页
第3页 / 共20页
DA卡设计微机原理课程设计.docx_第4页
第4页 / 共20页
DA卡设计微机原理课程设计.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

DA卡设计微机原理课程设计.docx

《DA卡设计微机原理课程设计.docx》由会员分享,可在线阅读,更多相关《DA卡设计微机原理课程设计.docx(20页珍藏版)》请在冰豆网上搜索。

DA卡设计微机原理课程设计.docx

DA卡设计微机原理课程设计

微机原理课程设计

摘要

本文用DAC0832芯片构成16位D/A转换卡,它由控制逻辑电路、时序产生器、移位寄存器、D/A转换器及电压比较器组成。

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

这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:

直通方式、单缓冲方式和双缓冲方式,将数字量转换为相应的模拟量。

数字量由二进制位组成,每个二进制的权,要把数字量转换为相应的模拟量电压,要先把数字量的每一位上的代码按权转换成为对应的模拟电流,再把模拟电流相加,最后由运算放大器将其转变成模拟电压。

关键词:

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数模转换原理...............................................................................................6

3.4DAC0832芯片................................................................................................7

3.5DAC0832的引脚图........................................................................................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

前言

自然界中存在的可测物理量,就其表现形式来看,可以分为模拟量和数字量两种。

模拟量的表现形式是连续的,数字量的表现形式是不连续的(离散的)。

由于数字信号更易存储和处理,使得数字处理系统在各个领域中的广泛应用,这样当处理模拟信号时需要将其转换成数字量,因为只有数字量才能被数字系统识别。

另一方面,在许多情况中,系统最后得到的数字结果又可能需要再变换成模拟量,来实现对某种控制和微调。

因此就要求模拟量与数字量之间相互能够进行转换的器件。

因此产生了两种不同的转换器:

将模拟量转换成数字量的装置称为模数转换器,它的输入是模拟量,输出是数字量,简称为A/D转换器或者ADC(AnalogDigitalConverter)。

反之,数字量转换成模拟量的装置称为数模转换器,它的输入是数字量,输出是模拟量,简称为D/A转换器或者DAC(DigitalAnalogConverter)[1-7].

一、设计的任务与要求

1.1设计任务

设计一块D/A卡,该卡具有对0~5V的模拟电压输出能力,该卡插在PC机的IMB—PC扩展总线插槽上,选择DAC0832作为DA转换器芯片。

选用芯片:

DAC0832等。

1.2设计要求

画出电路原理图,说明工作原理,编写利用该卡进行正弦波输出的程序。

二、总体设计和系统框图

2.1方案选择:

为了用DAC0832进行数/模转换,可以使用两种方法对数据进行锁存。

方案一:

本方案是使输入寄存器工作在锁存状态,而DAC寄存器工作在不锁存状态。

具体的说,就是使WR2和XFER都是低电平,这样,DAC寄存器的锁存端得不到有效电平;另一方面,使输入寄存器的有关控制信号中,ILE处于高电平,CS处于低电平。

这样,当WR1端来一个负脉冲时,就可以完成一次变换。

方案二:

本方案是使输入寄存器工作在不锁存状态,而使DAC寄存器工作在锁存状态,就是使WR1为低电平,CS为低电平而ILE为高电平,这样,输入寄存器的锁存信号处于无效状态;另外,WR2和XFER端输入一个负脉冲,从而使DAC寄存器工作在锁存状态。

这样做,也可以达到锁存目的。

2.2方案确定在此次设计中我们采用方案一对数据进行锁存。

2.3系统框图DAC0832进行数/模转换系统框图如图

(1)所示:

数/模转换系统框图

(1)

三、设计方式

3.1缓冲工作方式

利用D/A0832芯片的双缓冲工作方式将数字量转换成模拟量

3.2将输入寄存器的内容写入DAC寄存器

将输入寄存器的内容写入DAC寄存器即使WR1为低电平,CS为低电平而ILE为高电平,这样,输入寄存器的锁存信号处于无效状态,待转换的数据被写入输入寄存器;WR2和XFER端输入一个负脉冲,从而使DAC寄存器工作在锁存状态。

将数据写入DAC寄存器,同时启动变换。

3.3数模转换原理

数模转换原理如下:

1、D/A转换器可以视为微机的一种外围设备,实现D/A转换器和微机接口技术的关键是数据锁存问题。

当CPU向D/A转换器输出一个数据时,这个数据在数据总线上只持续很短的时间,必须有数据锁存器锁住这个数据,才能得到持续稳定的模拟量输出。

有些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转换器的作用是将数字量转换为相应的模拟量。

数字量由二进制位组成,每个二进制的权,要把数字量转换为相应的模拟量电压(多数情况需要转换后的模拟信号以电压的形式输出),需要先把数字量的每一位上的代码按权转换成为对应的模拟电流,再把模拟电流相加,最后由运算放大器将其转变成模拟电压。

3.4DAC0832芯片

DAC0832芯片简单介绍如下:

1、DAC0832为8位电流DAC器件,该芯片为CMOS器件,单电源范围为+5V~+15V。

参考电压可在-10V~+10V范围内选择,转换速度约1us,输入待转换的数据保持时间应不小于90ns。

2、DAC0823内部有一个T型电阻网络,用来实现D/A转换,它需要外接运算放大器,才能得到模拟电压输出。

在DAC0832中有两级锁存器,第一级锁存器为输入寄存器,它的锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号XFER。

因为有两级锁存器,所以DAC0832可以工作在双缓冲器方式,即在输出模拟信号的同时可以采集下一个数字,于是可以有效的提高转换速度。

另外有了两级锁存器以后,可以在多个D/A转换器同时工作,利用第二级锁存器的锁存信号来实现多个转换器的同时输出。

3、数字量是由一位一位的数字构成的,每一个数位都代表一定的权。

比如,10000001,最高位的权是27=128,所以此位上的代码1表示数值1×128,最低位的权20=1,此位上的代码1表示数值1,其他数位均为0,所以,二进制数10000001就是十进制数129。

为了把一个数字量变成模拟量,必须把每一位上的代码按照权来转换为对应的模拟量,再把各模拟量相加,这样得到的总的模拟量对应于给定的数据。

在集成电路中,通常采用T型网络实现数字量向模拟电流的转换,再利用运算放大器来完成模拟电流到模拟电压的转换。

所以要把一个数字量变为模拟电压,实际上需要两个环节:

即先把数字量变为模拟电流,这是由D/A转换器完成的,再将模拟电流变为模拟电压,这是由运算放大器完成的。

在D/A转换时涉及的参数包括分辨率、转换精转换速率、建立时间、线性误差等。

4、根据能否直接和总线相连,目前市场上的D/A转换芯片可以分为两类。

其中有一类芯片内部没有数据输入寄存器,比如AD7520、AD7521、DAC0808等,内部结构比较简单,但是这些芯片不能直接和总线相连。

另一类芯片内部有数据输入寄存器,比如DAC0832、AD7524等,这些芯片使用时可以直接和系统总线相连。

3.5DAC0832的引脚图

DAC0832的引脚图如图(3)所示:

DAC0832的引脚图(3)

根据DAC0832的引脚图,图中各信号的定义如下:

CS片选信号,它和允许输入锁存信号ILE合起来决定WR1是否起作用。

ILE允许锁存信号。

WR1写信号1,它作为第一级锁存信号将输入数据锁存到输入寄存器中,WR1必须和CS、ILE同时有效。

WR2写信号2,它将锁存在输入寄存器中的数据送到8位DAC寄存器中进行锁存,此时传送控制信号XFER必须有效。

XFER传送控制信号,用来控制WR2。

D7~D08位数据输入端,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=VREF×N/(256×Rfb),IOUT2=VREF/Rfb-IOUT1,

无论N值多大:

IOUT1+IOUT2=VREF/Rfb(1-28)=常数≌VREF/Rfb。

Rfb反馈电阻引出端,DAC083内部已经有反馈电阻,所以,Rfb端可以直接接到外部运算放大器的输出端,这样,相当于将一个反馈电阻接在运算放大器的输入端和输出端之间。

Vref参考电压输入端,此端可接一个正电压,也可接负电压,范围为-10~+10V。

外部标准电压通过VREF与T型电阻网络相连。

VCC芯片供电电压,范围为+5~+15V,最佳工作状态是+15V。

AGND模拟量地,即模拟电路接地端。

DGND数字量地。

即数字电路接地端。

3.6双极性电压输出

VOUT1=-IOUT1×Rfb=-VREF×N/(256×Rfb)×Rfb=-N/256×VREF,

VOUT1模拟输出电压的极性总是与VREF极性相反,为单极性输出。

VOUT2模拟输出电压可利用基尔霍夫节点电流定律列出方程:

VOUT2/10+VREF/10-VOUT1/10=0

代入VOUT1=-N/256×VREF,求解得:

VOUT2=(N-128)/128×VREF

当N=FFH时,VOUT2=5V

当N=00H时,VOUT2=0V

当N=80H时,VOUT2=2.5V.

VOUT2为双极性输出.可根据应用场合的需要,将D/A转换接口芯片接成单极性输出或双极性输出。

当要监视的物理量有方向性时,例如角度的正向与反向,速度的增大与减小等,与此相适应,要求D/A转换的输出必须是双极性的。

DAC0832对执行时序也有一定要求:

第一,选通脉冲应有一定宽度,通常要求≥500ns,当取VCC=+15V典型值时,宽度只要≥100ns就可以了。

此时器件处于最佳工作状态。

第二,数据输入保持时间应不小于90ns。

在满足这两个条件下,转换电流建立时间为1.0μs。

3.7正弦波程序产生流程图

正弦波程序产生流程图如图(4)所示:

正弦波程序产生流程图

四、系统仿真和调试

4.1系统仿真本设计采用的系统仿真软件为ISA卡,其资料如图(5)所示:

ISA卡资料图

ISA卡各引脚的名称及含义如下:

PinNameDescription

引脚名称含义

A1/I/OCHCKI/Ochannelcheck;activelow=parityerror

A2D7Databit7

A3D6Databit6

A4D5Databit5

A5D4Databit4

A6D3Databit3

A7D2Databit2

A8D1Databit1

A9D0Databit0

A10I/OCHRDYI/OChannelready,pulledlowtolengthenmemorycycles

A11AENAddressenable;activehighwhenDMAcontrolsbus

A12A19Addressbit19

A13A18Addressbit18

A14A17Addressbit17

A15A16Addressbit16

A16A15Addressbit15

A17A14Addressbit14

A18A13Addressbit13

A19A12Addressbit12

A20A11Addressbit11

A21A10Addressbit10

A22A9Addressbit9

A23A8Addressbit8

A24A7Addressbit7

A25A6Addressbit6

A26A5Addressbit5

A27A4Addressbit4

A28A3Addressbit3

A29A2Addressbit2

A30A1Addressbit1

A31A0Addressbit0

B1GNDGround

B2RESETActivehightoresetorinitializesystemlogic

B3+5V+5VDC

B4IRQ2InterruptRequest2

B5-5VDC-5VDC

B6DRQ2DMARequest2

B7-12VDC-12VDC

B8/NOWSNoWaitState

B9+12VDC+12VDC

B10GNDGround

B11/SMEMWSystemMemoryWrite

B12/SMEMRSystemMemoryRead

B13/IOWI/OWrite

B14/IORI/ORead

B15/DACK3DMAAcknowledge3

B16DRQ3DMARequest3

B17/DACK1DMAAcknowledge1

B18DRQ1DMARequest1

B19/REFRESHRefresh

B20CLOCKSystemClock(67ns,8-8.33MHz,50%dutycycle)

B21IRQ7InterruptRequest7

B22IRQ6InterruptRequest6

B23IRQ5InterruptRequest5

B24IRQ4InterruptRequest4

B25IRQ3InterruptRequest3

B26/DACK2DMAAcknowledge2

B27T/CTerminalcount;pulseshighwhenDMAterm.countreached

B28ALEAddressLatchEnable

B29+5V+5VDC

B30OSCHigh-speedClock(70ns,14.31818MHz,50%dutycycle)

B31GNDGround

C1SBHESystembushighenable(dataavailableonSD8-15)

C2LA23Addressbit23

C3LA22Addressbit22

C4LA21Addressbit21

C5LA20Addressbit20

C6LA18Addressbit19

C7LA17Addressbit18

C8LA16Addressbit17

C9/MEMRMemoryRead(Activeonallmemoryreadcycles)

C10/MEMWMemoryWrite(Activeonallmemorywritecycles)

C11SD08Databit8

C12SD09Databit9

C13SD10Databit10

C14SD11Databit11

C15

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1