msp430f249的AD转换问题,多通道,重复转换,遇到点小问题,请大神指教

2019-07-15 16:29发布

这个程序编译出来有问题,请大家帮帮忙,告诉我哪里错了,感激不尽。
#include<msp430f249.h>
#include"ADC12.h"
#include "lcd_1602.h"
//ADC多通道转换初始化
void Delay_1ms(void) //延时程序
{
uchar i,j;
for(i=0;i<2;i++)
for(j=0;j<10;j++);
}
void Adc_Init(void)//AD初始化
{
  P6SEL |=BIT4+BIT2;//设置P6.4为AD转换功能
   ADC12CTL0 &= ~0x02;                    //在进行设置时,先首先复位ADC的转换使能
    ADC12MCTL0=0x00;                   //REF=AVss,AVcc  ;输入通道=A0
    ADC12MCTL1=0x8a;                   //REF=AVss,AVcc  ;输入通道=A10
    ADC12CTL1 |=0x0206;    // 第一个转换结果存放在ADC12MEM0  // 第二个转换结果存放在ADC12MEM1
                                    //采样脉冲由采样定时器产生. //时钟源:内部震荡器。
                                          //时钟分频:1  //转换模式:多通道,重复转换。//选择参考电压和输入管脚。  
   ADC12CTL0=ADC12ON+SHT0_8+MSC;  //内部震荡器。设置MSC位,因此,转换能自动进行

  ADC12IE=0x002;     //使能通道10转换后中断
  ADC12CTL0 |=0x02;
  _EINT();                           //使能全局中断                      //用一个EOS来定义转换的结束指针在哪一个通道结束。
}
#if _VER_<200
//中断处理程序
interrupt [void(void)]       //Error[Pe029]: expected an expressio


#else
#pragma vector=ADC_VECTOR
__interrupt void ADC12(void)
{

#endif
  unsigned int i;        //Error[Pe065]: expected a ";


  for(i=0;i<2;i++)    //Error[Pe169]: expected a declaration
  {
    result=ADCMEM;
  }
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
腾讯qq
1楼-- · 2019-07-15 18:18
 精彩回答 2  元偷偷看……
贠亮亮
2楼-- · 2019-07-15 21:33
请问主函数在哪?
贠亮亮
3楼-- · 2019-07-16 03:00
应该要在中断里采集数据并储存然后传给变量,在主函数里就可以调用采集的数据进行处理。
downloadeo
4楼-- · 2019-07-16 05:21
友情顶贴友情顶贴

一周热门 更多>