PIC 1508 DAC使用

PIC的DAC使用还是相当简单的。DAC即Digital to analog converter,数字模拟转换器。PIC的DAC精度只有5位,是真的低,所以说使用PIC的DAC只是玩玩而已。如果在项目中真的需要用到DAC,估计需要用DAC专用芯片了。
PIC 1508 DAC使用
文章图片

DAC的输出电压计算公式为Vout=【(Vsource+ - Vsource-)*DACR[4:0]/2*5】+Vsource-
DAC 的输入可以连接到:①外部 V REF + 引脚②VDD 供电电压
DAC 的输出可以配置为向以下对象提供参考电压:①比较器的正输入②ADC 输入通道③DACOUT1 引脚④DACOUT2 引脚
这些均可以通过寄存器配置


void main()
{
OSCCON = 0x78; //16M
__delay_ms(20);

ANSELAbits.ANSA2 = 1;
TRISAbits.TRISA2 = 0; //输出端口

DACCON0bits.DACEN = 1; //使能 DAC
DACCON0bits.DACOE1 = 1; //DAC 电平从 DACOUT1 引脚输出
DACCON0bits.DACOE2 = 0; // DAC 电平从 DACOUT2 引脚断开
DACCON0bits.DACPSS = 0; //DAC 正参考电压源选择位 VDD

DACCON1bits.DACR4 = 0;
DACCON1bits.DACR3 = 1;
DACCON1bits.DACR2 = 0;
DACCON1bits.DACR1 = 1;
DACCON1bits.DACR0 = 1; //11/32

while(1)
{
}
}

理论输出电压为Vout=(VDD-VSS)*11/32 = (3.321-0)*11/32=1.1415V
实际输出电压测量如下图所示
PIC 1508 DAC使用
文章图片

【PIC 1508 DAC使用】基本还是比较准确的,就是只有5位比较差。

    推荐阅读