这四个口进行AD采样那初始化应该怎么设置

[复制链接]
445|4
手机看帖
扫描二维码
随时随地手机跟帖
jiaxw| | 2018-2-3 15:19 | 显示全部楼层

不是很懂

使用特权

评论回复
午夜粪车| | 2018-2-3 15:21 | 显示全部楼层

这样对吗?
void AD_INIT(void)
{
  P6SEL|=BIT1+BIT2+BIT6+BIT7;             // 使能ADC通道
  ADC12CTL0=ADC12ON+SHT0_8+MSC;           // 打开ADC,设置采样时间
  ADC12CTL1=SHP+CONSEQ_3;                 // 使用采样定时器
  ADC12MCTL0=INCH_1;
  ADC12MCTL1=INCH_2;
  ADC12MCTL2=INCH_6;
  ADC12MCTL3=INCH_7+EOS;
  ADC12IE=0x08;                           // 使能ADC中断
  ADC12CTL0 |= ENC;                         // 使能转换
  ADC12CTL0 |= ADC12SC;                     // 开始转换
}

#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR (void)
{
  static uint index=0;

  res0[index]=ADC12MEM0;         // Move results
  res1[index]=ADC12MEM1;         // Move results
  res2[index]=ADC12MEM2;         // Move results
  res3[index]=ADC12MEM3;
  index++;
}

使用特权

评论回复
huangchui| | 2018-2-3 15:24 | 显示全部楼层

你这个中断函数里面的index++,根本就不起作用啊,初始化为0了。

使用特权

评论回复
jlyuan|  楼主 | 2018-2-3 15:28 | 显示全部楼层

嗯,那我知道啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

880

主题

12030

帖子

4

粉丝