- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《单片机》课程设计参考资料
用单片机模拟输出正弦波
一、设计目的
1、掌握DAC0832 直通方式,单缓冲器方式、双缓冲器方式的编程方法
2、掌握D/A 转换程序的编程方法和调试方法
二、设计说明
DAC0832 是8 位D/A 转换器,它采用CMOS 工艺制作,具有双缓冲器输入结构,其引脚排列如图所示,DAC0832 各引脚功能说明:
DI0~DI7:转换数据输入端。
CS:片选信号输入端,低电平有效。
ILE:数据锁存允许信号输入端,高电平有效。
WR1:第一写信号输入端,低电平有效,
Xfer:数据传送控制信号输入端,低电平有效。
WR2:第二写信号输入端,低电平有效。
Iout1:电流输出1 端,当数据全为1 时,输出电流最大;当数据全为0 时,输出电流最小。
Iout2:电流输出2 端。DAC0832 具有:Iout1+Iout2=常数的特性。
Rfb:反馈电阻端。
Vref:基准电压端,是外加的高精度电压源,它与芯片内的电阻网络相连接,该电压范围为:-10V~+10V。
VCC 和GND:芯片的电源端和地端。
DAC0832 内部有两个寄存器,而这两个寄存器的控制信号有五个,输入寄存器由ILE、
CS、WR1 控制,DAC 寄存器由WR2、Xref 控制,用软件指令控制这五个控制端可实现三种工作方式:直通方式、单缓冲方式、双缓冲方式。
直通方式是将两个寄存器的五个控制端预先置为有效,两个寄存器都开通只要有数字信号输入就立即进入D/A 转换。
单缓冲方式使DAC0832 的两个输入寄存器中有一个处于直通方式,另一个处于受控方式,可以将WR2 和Xfer 相连在接到地上,并把WR1 接到89C51 的WR 上,ILE 接高电平,CS 接高位地址或地址译码的输出端上。
双缓冲方式把DAC0832 的输入寄存器和DAC 寄存器都接成受控方式,这种方式可用于多路模拟量要求同时输出的情况下。
三种工作方式区别是:直通方式不需要选通,直接D/A 转换;单缓冲方式一次选通;双缓冲方式二次选通。
三、设计步骤
本设计用到单片机最小系统(F1 区)和并行D/A 转换设计(H10 区)。
单片机最小应用系统的 P0 口JD4F 接并行D/A 转换设计的DI0~DI7 口JD13H,单片机最小应用系统的P2.0、WR 分别接并行D/A 转换设计的CS-0832、WR。用万用表测量“-Vref”端的电压,手动调节电位器RW1H,把-Vref 电压调到-5V。并行D/A 转换设计的VOUT 接示波器探头,示波器接地端接电源开关处的地端。打开相关设计的电源开关。
四、流程图及源程序
;//***************************************************************************
;接线: 用导线连接并行数模转换模块的CS_0832到P2.0
; 并行数模转换模块的VOUT端口接入示波器,示波器接地端接电源开关处的地端;
; 调节电位器RW3D,把-Vref电压调到-5V.
;//***************************************************************************
DAC0832 EQU 0FEFFH
ORG 0000H
LJMP START
ORG 0100H
START:
MOV SP, #60H
LOOP:
MOV A, R0
MOV DPTR, #SINE_DATA
CJNE R1, #1, LOW_TAB
MOV DPTR, #DAC0832
MOVX @DPTR, A ;启动D/A转换
INC R0 ;指针底八位加1处理
CJNE R1, #1, INC_LOW
CJNE R0, #105, INC_OK
MOV R0, #0 ;如果已经取完数据并输出,则重新设置指针
MOV R1, #0
SJMP INC_OK
INC_LOW:
MOV R1, #1
INC_OK:
ACALL DELAY
AJMP LOOP
;**********************************************
;**********************************************
DELAY:
DJNZ R7, $
文档评论(0)