智能车制作

标题: ad读不到 只有0 192 128 64 几个数字在变化 [打印本页]

作者: guohan21shiji    时间: 2011-1-8 15:20
标题: ad读不到 只有0 192 128 64 几个数字在变化
我调的AD读不到数据,但是只有0 192 128 64 几个数字在自己变化 这是为什么呢?求各位大哥帮忙!!
附上小弟的程序


void ADCInit(void)
{
  ATD0CTL2=0xC2; //AD模块上电, 快速清零, 无等待模式, 禁止外部触发, 中断允许
  ATD0CTL3=0x20;  // 每个序列4次转换, No FIFO, Freeze模式下继续转换
  ATD0CTL4=0x83;  //分频系数8  8位精度, 2个时钟, ATDClock=[BusClock*0.5]/[PRS+1]  ; PRS=3, divider=8
  ATD0CTL5=0xA0;  //右对齐无符号,单通道采样,通道0
  ATD0DIEN=0x00;  // 禁止数字输入
}
word AD_wData = 0;
void main(void) {
// DisableInterrupts;
  ADCInit();   
  DDRB = 0xFF;
  PORTB  = 0xFF;
  EnableInterrupts;
  for(;;) { }
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 22 Int_AD0(void)
{   
   DisableInterrupts;
   AD_wData = ATD0DR0;  //Read out the Result Register
   PORTB = (byte)AD_wData;
      wait();
   EnableInterrupts;
}
#pragma CODE_SEG DEFAULT




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2