文档库 最新最全的文档下载
当前位置:文档库 › 并行DA转换实验

并行DA转换实验

并行DA转换实验
并行DA转换实验

实验二十一并行D/A转换实验(2学时)

一、实验目的

掌握D/A芯片DAC0382与单片机的接口方法及ADC0832芯片的性能;了解单片机系统扩展D/A转换的基本方法。

二、实验要求

使用实验仪上的DAC0832 D/A转换器,产生一个正弦波形;了解单片机系统中扩展D/A转换的基本方法。

三、实验仪器和设备

1、硬件:计算机,DP-51PRO单片机综合仿真试验仪

2、软件:Keil软件uVision3

四、实验内容

1、由于DAC0832为电流输出,为了取得电压输出,需在电流输出端Iout1、Iout2分别连接上运算放大器LM324的B-、B+。使Rfd与LM324的BOUT连接,Rfd即为运算放大器的负反馈电阻端。由于Vref=5V,所以由运算放大器输出的电压(测试点BOUT)为电压(0~-5V)。图21-1为DP-51PRO运放区电路。

2、正确连接硬件电路后编写程序,使用查表的方法使单片机控制DAC0832产生一个电压值0~-5V之间的正弦波形。图21-2为DP-51PRO仿真仪上的并行D/A转换模块电路。实验原理如图21-3所示,实验流程图如图21-4所示。

图21-1 LM324 运放电路

U7

图21-2 DAC0832电路图

TP

图21-3 实验二十原理图

五、实验方法和步骤

1、使用导线把A2区J58接口的W R引脚与B6区的J37接口的WR1、WR2相连。

2、使用导线把A2区J63接口的A15引脚与B6区的J37接口的C S、XFER相连。

3、使用导线把B6区J10接口的ILE、Vref和VCC相连。

4、使用导线把B6区J11接口的IOUT1与C9区J71接口的B-相连。

5、使用导线把B6区J11接口的IOUT2与C9区J71接口的B+相连,同时也与GND相连。

6、使用导线把B6区J10接口的Rfb与C9区J71接口的BOUT相连。

7、使用导线C9区J71接口的

V+与C9区J19接口的+12V相连。

8、使用导线C9区J72接口的V-与C9区J19接口的-12V相连。

9、运行已经编写好的程序。

10、使用示波器观察LM324的BOUT口输出的

波形。

六、实验预习要求

阅读B6区并行数模转换实验模块的内容,理解本实验硬件结构(如图21-2所示),可以先把程序编好,然后在Keil C51环境下进行软件仿真。阅读DAC0832相关资料,了解DAC0832的使用方法。

七、实验参考程序

;*********************************************************

; File: adc0832.asm

;功能:使用DAC输出控制实现正弦波发生器,DAC数据采用查表方法

;得到。

;*********************************************************

DAC0832 EQU 6000H

ORG 8000H

AJMP START

ORG 8100H

START: MOV SP,#60H

MOV R0,#0 ;定义指向正弦波DAC数据的指针,

; 因为有361个数据,所以用了R0 MOV R1,#0 ;和R1两个寄存器。

LOOP: MOV A,R0

MOV DPTR,# SINE_DATA

CJNE R1,#1,LOW_TAB

INC DPH ;判断指针的高位字节R1是否为1,

; 若是,则DPH加1

LOW_TAB:

MOVC A,@A+DPTR ;取出正弦波DAC数据

MOV DPTR,#DAC0832

MOVX @DPTR,A ;启动DA转换

INC R0 ;指针低8位加1处理

CJNE R1,#1,INC_LOW

CJNE R0,#105,INC_OK

MOV R0,#0 ;若已经取完数据并输出,

;则重新设置指针

MOV R1,#0

SJMP INC_OK

INC_LOW:

CJNE R0,#0,INC_OK ;判断是否要进位

MOV R1,#1

INC_OK:

ACALL DELAY ;延时子程序中不能修改R0、DPTR

AJMP LOOP

;**********************************************

;通过设置延时时间的长短来改变锯齿波的周期

;*********************************************

DELAY:

MOV R7,#10

DJNZ R7,$

RET

;***********************************

;正弦波数据表,8位DAC的数据

;***********************************

SINE_DATA: DB 128, 130, 132, 135, 137, 139, 141, 144, 146, 148

DB 150, 152, 155, 157, 159, 161, 163, 165, 168, 170

DB 172, 174, 176, 178, 180, 182, 184, 186, 188, 190

DB 192, 194, 196, 198, 200, 201, 203, 205, 207, 209

DB 210, 212, 214, 215, 217, 219, 220, 222, 223, 225

DB 226, 227, 229, 230, 232, 233, 234, 235, 237, 238

DB 239, 240, 241, 242, 243, 244, 245, 246, 247, 247

DB 248, 249, 250, 250, 251, 252, 252, 253, 253, 254

DB 254, 254, 255, 255, 255, 255, 255, 255, 255, 255

DB 255, 255, 255, 255, 255, 255, 255, 255, 255, 254

DB 254, 254, 253, 253, 252, 252, 251, 250, 250, 249

DB 248, 247, 247, 246, 245, 244, 243, 242, 241, 240

DB 239, 238, 237, 235, 234, 233, 232, 230, 229, 227

DB 226, 225, 223, 222, 220, 219, 217, 215, 214, 212

DB 210, 209, 207, 205, 203, 201, 200, 198, 196, 194

DB 192, 190, 188, 186, 184, 182, 180, 178, 176, 174

DB 172, 170, 168, 165, 163, 161, 159, 157, 155, 152

DB 150, 148, 146, 144, 141, 139, 137, 135, 132, 130

DB 128, 126, 124, 121, 119, 117, 115, 112, 110, 108

DB 106, 104, 101, 99, 97, 95, 93, 91, 88, 86

DB 84, 82, 80, 78, 76, 74, 72, 70, 68, 66

DB 64, 62, 60, 58, 56, 55, 53, 51, 49, 47

DB 46, 44, 42, 41, 39, 37, 36, 34, 33, 31

DB 30, 29, 27, 26, 24, 23, 22, 21, 19, 18

DB 17, 16, 15, 14, 13, 12, 11, 10, 9, 9

DB 8, 7, 6, 6, 5, 4, 4, 3, 3, 2

DB 2, 2, 1, 1, 1, 0, 0, 0, 0, 0

DB 0, 0, 0, 0, 0, 0, 1, 1, 1, 2

DB 2, 2, 3, 3, 4, 4, 5, 6, 6, 7

DB 8, 9, 9, 10, 11, 12, 13, 14, 15, 16

DB 17, 18, 19, 21, 22, 23, 24, 26, 27, 29

DB 30, 31, 33, 34, 36, 37, 39, 41, 42, 44

DB 46, 47, 49, 51, 53, 55, 56, 58, 60, 62

DB 64, 66, 68, 70, 72, 74, 76, 78, 80, 82

DB 84, 86, 88, 91, 93, 95, 97, 99, 101, 104

DB 106, 108, 110, 112, 115, 117, 119, 121, 124, 126

DB 128

END

八、实验思考题

1、使用DAC0832产生一个锯齿波、三角波、方波。

2、产生的波形可以通过按键改变频率和峰值。

相关文档