PIC之AD转换

2019-04-15 13:30发布

      对PIC芯片中A/D转换过程中需要注意的几点:
1、使用A/D前需设定模拟信号引脚为输入状态,用TRISX相应位置1实现。
2、输入信号的采样延时:
   1、芯片内部各级信号通路所需的建立时间,一般取5us足够;
   2、采样电容的充放电时间,一般需要8us,10位精度时,此时间约为18us
   3、考虑温度系数后额外所需的补偿时间,举例,根据半导体制造工艺,我们取25度为标准工作温度,温度每升高1度需有0.05us的采样时间补偿。当系统   设计最高工作温度为70度时,最大的采样时间补偿值为
     (70-25)*0.05us=2.25us
    上面三个时间加起来总共约为15us,10位精度时约为25us
3、AD转换时间,如果是8位的转换结果,总共有9个AD转换时钟。AD转换时钟可以源自于单片机的主振荡器的振荡频率,可选2、8、32分频,也可以使用内部自带的RC振荡器,其一个振荡周期典型值为4us,整个离散变化的范围在2~6us之间(RC振荡有离散性)。
  AD转换时钟的选择不能小于1.6us,如果小于1.6us则不能保证得到正确的转换结果,例如:主振荡器频率为4MHZ,分频为8,则AD转换时钟为8/4MHZ=2us。
  AD转换时钟必须大于1.6us,但也不是越大越好,因为内部采保电容上电压泄漏的事实,转换过程越长,电容上泄漏的电压就越多,精度误差就越大。8 位精度的总共9个AD转换时钟,一般不要超过50us。当单片机的主频很低,最好选择其自带的RC振荡,以避免时间过长所造成的结果偏差。休眠时主频停振,也必须使用内部的RC振荡。
4、进行多路模拟信号的AD转换时,一定要给每一路信号提供足够长的延时时间。时间见第2,当然长一点更好。
5、模拟/数字引脚分配时的问题:由于配置模式的限制,有时一些数字引脚也会被暂时设置成模拟引脚。此时可通过设置成输出或等AD转换结束,通过配置字将此引脚置回数字状态。个人建议这些数字引脚最好不要做成某些重要芯片的片选。因为在做为模拟引脚时,状态可能会改变,从而影响了程序的稳定性。
6、参考电压的选择,AD转换必定需要一个基准电压。举例,温度传感器近似于一个电阻Rx(单位为K殴),一般都会再串联一个阻值,此阻值定为R0= 10K殴,在此两阻值间的电压为芯片的电源电压VDD。使用了芯片的电源电压VDD作为基准参考电压,则温度传感器上的电压为Ux =VDD * Rx /(Rx+R0),与基准电压进行比较,则可以忽略VDD的影响,从公式里可以看出可以将VDD约掉,即可以忽略电源电压的波动。如果基准电压为VREF,则Ux随着电源的波动势必会影响AD转换的精度,而电源的波动是在所难免的。