PIC 1508 DAC使用

2019-04-15 11:49发布

       PIC的DAC使用还是相当简单的。DAC即Digital to analog converter,数字模拟转换器。PIC的DAC精度只有5位,是真的低,所以说使用PIC的DAC只是玩玩而已。如果在项目中真的需要用到DAC,估计需要用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 实际输出电压测量如下图所示 基本还是比较准确的,就是只有5位比较差。