ADI 技术
直播中

张依然

7年用户 314经验值
私信 关注
[问答]

是否ADuC7060的最高参考电压并不能做到2.5V

ADuC7060内部集成了两个24位的独立AD模块,Datasheet上写的AD的参考电压可以使用AVDD,但是我实验电路的接线如下:AVDD=2.5V,REF+=2.5V,REF-=AGND,ADC0=GND,ADC1=1.24V(两个等值电阻通过AVDD到地分压得到),ADCON寄存器内的HIGHEXTREF0 和ADC0REF[1:0]都已经考虑了参考电压大于1.35V的情况,ADC0REF[1:0]设置成01或者11,即REF+,REF-作为参考电压或者AVDD和AGND作为参考电压,系统都不能够输入大于1.25V的电压。使用的初始化程序如下:
ADC0初始化程序:
ADCMSKI = BIT0; // Enable ADC0 result ready interrupt source
ADCFLT = 0x7; // Chop off, 1Khz samping rate, SF = 7. No averaging
ADCMDE = BIT0  +   //Continuous Conversion mode,
                     BIT7;       // Normal mode, 4Mhz clock source  to ADC.
ADC0CON =  BIT4 +             //extern reference inputs (REF+,REF-)
                        BIT6 +
                        BIT10 +   // Unipolar ADC output
                        BIT12+              //extern reference exceed 1.35V
                        BIT15;  // Gain = 1, Buffer on. Also, Int reference,
        
ADCCFG = 0;
IRQEN = BIT10;   //open ADC irq interupt
IRQ中断程序:
__irq __ARM void IRQ_Handler(void)
{
  unsigned long IRQSTATUS="0";
  
  IRQSTATUS =  IRQSTA;
  if((IRQSTATUS & BIT10) == BIT10)
  {
    ulADC0Result = ADC0DAT;
  }
}
ADC0转换结果是:ulADC0Result = 0x00F56F08;接近满量参考电压2.5V对应的电压值,但是我的输入电压是1.24V。
我的问题是:是否ADuC7060的最高参考电压并不能做到2.5V或者ADC存在问题,再或者我的程序有问题?如果ADuC7060的最高参考电压可以做到2.5V,应如何设置?

回帖(1)

张虎豹

2019-3-13 15:24:24
样片是不应该有差异的,2楼的Dzxxlxd使用也是没有任何问题的。
 
您可以试着把寄存器的值读回来看看是否写入的确实是0,而不是1.同时,可以换一片芯片试试看。请问您的芯片是哪里拿到的,片上的标号为多少。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分