① DAC0832.与单片机连接做数模转换。对于DAC0832端口定义,和内存定义的疑惑
DAC0832是将单片机输入的数据转换为电流输出,不是接收数据的,接收数据的是AD转换芯片。
XBYTE[]将外部的内存单元编程不同的地址,#define
DAC0832
XBYTE[OxFFFE]这个就可以操作DAC0832来改变地址0xfffe的单元的值。0xfffe是DAC0832这个外部的内存单元的地址,既然是外部的内存单元,和单片机内存不是同一东西,他的地址和单片机的内存地址编码无关。
② 五一单片机与数模转换芯片dac 0832的硬件连接如图编写输出锯齿波的程序
可以这样,DAC0832是根据输入的数字量,输出相应的模拟量,锯齿波是有规律的模拟量。
单片机内部程序可以通过算法(规律计算或数组),定时生成一个数字量发送到DAC0832,使其输出相应模拟量,即可。
例如锯齿波是从0~3V,将0~3V分为若干个点(分辨率),定时输出每个点的数字量。
③ DAC0832与51 单片机的连接
上面这个图是DAC0832的一个简单应用,D0~D7是8bit数据输入;CS为片选,WR1为0832数据输入寄存器锁存使能,WR1与XFER共同控制是否将INPUTREGISTER中的数据锁存到DAC寄存器,即是准备转换的数据,Vref是DA转化参考源,学过数电DA转换原理,理解这个应该不难;
RFB是0832输出反馈电阻端输出,它里面有一个标称电阻,方便IV转换,IOUT1与IOUT2是互不输出。若用MCU对其控制,如图中所示,选择单片机一组IO分别输出数据到D0~D7,再用两个IO脚控制CS和WR1即可,其它几个控制引脚可以固定其输入状态,当然你也可以独立控制。
最好看看DAC0832的芯片手册,上面讲得很详细,相关应用电路和如何对其编程都有详细描述。
④ dac0832是如何接单片机的
1、单缓冲方式
单缓冲方式是控制输入寄存器和DAC寄存器同时接收资料,或者只用输入寄存器而把DAC寄存器接成直通方式。此方式适用只有一路模拟量输出或几路模拟量异步输出的情形。
2、双缓冲方式
双缓冲方式是先使输入寄存器接收资料,再控制输入寄存器的输出资料到DAC寄存器,即分两次锁存输入资料。此方式适用于多个D/A转换同步输出的情节。
3、直通方式
直通方式是资料不经两级锁存器锁存,即 CS*,XFER* ,WR1* ,WR2* 均接地,ILE接高电平。此方式适用于连续反馈控制线路和不带微机的控制系统,不过在使用时,必须通过另加I/O接口与CPU连接,以匹配CPU与D/A转换。
(4)单片机与dac0832芯片扩展阅读:
DAC0832的特性
1、分辨率
分辨率它反映了输出模拟电压的最小变化值。定义为输出满刻度电压与2n的比值,其中n为DAC的位数。
分辨率与输入数字量的位数有确定的关系。对于5V的满量程,采用8位的DAC时,分辨率为5V/256=19.5mV;当采用10位的DAC时,分辨率则为5V/1024=4.88mV。显然,位数越多分辨率就越高。
2、建立时间
建立时间是描述DAC转换速度快慢的参数。定义为从输入数字量变化到输出达到终值误差±1/2 LSB(最低有效位)所需的时间。
3、接口形式
接口形式是DAC输入/输出特性之一。包括输入数字量的形式:十六进制或BCD,输入是否带有锁存器等。
DAC0832是使用非常普遍的8位D/A转换器,由于其片内有输入数据寄存器,故可以直接与单片机接口。