首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

AD采样值无规律变化,急!

AD采样值无规律变化,急!

各位大侠版主:


    我用得是s12dg128b得片子,通过AD采集传感器得信号,程序如下:


#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */



#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
int i;
unsigned char * ADPointer[8];
unsigned int Sen_Read_Result[8];
#pragma CODE_SEG DEFAULT


void AD_Init(void){



  ATD0CTL2 = 0xc0;   //寄存器自动清零
  ATD0CTL3 = 0x00;   //转换序列长度为8
  ATD0CTL4 = 0x88;   // 8bit  AD时钟8/9
  ATD0CTL5 = 0x30;   //连续多通道转换,左对齐
  ATD0DIEN = 0x00;  //禁止数字输入


  ADPointer[0] = &ATD0DR0H;
  ADPointer[1] = &ATD0DR1H;
  ADPointer[2] = &ATD0DR2H;
  ADPointer[3] = &ATD0DR3H;
  ADPointer[4] = &ATD0DR4H;
  ADPointer[5] = &ATD0DR5H;
  ADPointer[6] = &ATD0DR6H;
  ADPointer[7] = &ATD0DR7H;
}


void main(void) {
  AD_Init();
  EnableInterrupts;
  for(i=0; i<8 ; i++) {
    Sen_Read_Result = *ADPointer;
  }
}


用codewarrior观察Sen_Read_Result得值,发现它是在无规律得变化着,小弟急等各位大侠得帮助!  谢谢了!

你可以用示波器看一下实际的输入波形到底是怎样的。
海纳百川  有容乃大
返回列表