标题: DAC0832实现51单片机输出方波锯齿波三角波等 [打印本页]

作者: 苏呵呵    时间: 2018-5-14 21:11
标题: DAC0832实现51单片机输出方波锯齿波三角波等
D/A转换
一、实验目的
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接到80C51的WR上,ILE接高电平,CS接高位地址或地址译码的输出端上。
双缓冲方式把DAC0832的输入寄存器和DAC寄存器都接成受控方式,这种方式可用于多路模拟量要求同时输出的情况下。
三种工作方式区别是:直通方式不需要选通,直接D/A转换;单缓冲方式一次选通;双缓冲方式二次选通
三、实验内容
    1、利用数/模转换器DAC0832分别构造2种波形:方波、锯齿波,并通过示波器来观察波形情况
    2、软件编程提示:
方波:实验要求在DOUT端输出方波信号,方波信号的周期由延时时间常数确定。 根据Vout =-〔VREF×(输入数字量的十进制数)〕/256,当数字量的十进制数为256(FFH)时,由于VREF =-5V,Vout = +5V。当数字量的十进制数为0(00H) 时, 由于VREF = - 5V,Vout = 0V。因此,只要将上述数字量写入DAC0832端口地址时,模拟电压就从DOUT 端输出 。
锯齿波:本实验在DAOUT端输出锯齿波。根据Vout = -〔VRFE×(输入数字量的十进制数)〕/256即可知道,只要将数字量0~256(00H~FFH)从0开始逐渐加1递增直至256为止,不断循环,在DOUT端就会输出连续不断的锯齿波

QQ图片20180514210853.png (26.71 KB, 下载次数: 150)

QQ图片20180514210853.png

3.rar

67.8 KB, 下载次数: 284, 下载积分: 黑币 -5

仿真和代码


作者: 我爱单片机xyx    时间: 2018-11-24 17:27
最后功能实现了吗,

作者: 单片机老司机    时间: 2019-11-24 17:32
可以这样写吗?锯齿波:int main (void)
{
uchar i;
while(1)
{
for(i=0;i<255;i++)
{
delay(10);
XBYTE[0X7fff]=i;
}
}
}
作者: linaa    时间: 2020-3-16 23:08
感谢楼主分享

作者: 跟随自己    时间: 2020-3-24 09:31
仿真软件用的什么
作者: 胡小七    时间: 2020-3-25 01:02
跟随自己 发表于 2020-3-24 09:31
仿真软件用的什么

proteus
作者: 电子1311班    时间: 2020-4-12 14:20
感谢分享
作者: 吹动的火    时间: 2020-4-30 00:06
谢谢楼主
作者: sunnywe    时间: 2020-7-4 15:09
请问怎么改变电压范围和频率呢
作者: 范小爷    时间: 2021-11-4 23:31
单片机老司机 发表于 2019-11-24 17:32
可以这样写吗?锯齿波:int main (void)
{
uchar i;

您好,我是新手,想问有int main这个吗
作者: 范小爷    时间: 2021-11-4 23:32
跟随自己 发表于 2020-3-24 09:31
仿真软件用的什么

proteus
作者: 范小爷    时间: 2021-11-4 23:34
linaa 发表于 2020-3-16 23:08
感谢楼主分享

哈罗  可以分享一下楼主的代码和仿真吗?DAC0832和AT89C51波形输出




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1