想用F2812实现AD采样之后判断,并根据判断结果,从GPIO输出信号,具体实现

2019-07-15 19:11发布

我的想法是在ad采样程序的基础上,在主函数里加入判断语句,并相应的初始化gpio口。下面贴上主程序:
void main(void)
{
    InitSysCtrl();  //初始化系统函数

        DINT;
        IER = 0x0000;   //禁止CPU中断
        IFR = 0x0000;   //清除CPU中断标志
       
        InitPieCtrl();  //初始化PIE控制寄存器

        InitPieVectTable();  //初始化PIE中断向量表         
       
        InitPeripherals(); //初始化EV和AD模块

    InitGpio();//初始化GPIO口
       


        adclo=0;  //通常ADCLO接地

        PieCtrl.PIEIER1.bit.INTx6 =1; //使能PIE模块中的AD采样中断
        PieCtrl.PIEIER2.bit.INTx4=1;  //使能PIE模块中的T1周期中断

    IER|=M_INT1;  //开CPU中断
   IER|=M_INT2;


        EvaRegs.T1CON.bit.TENABLE=1;   //启动T1计数

    EINT;  //使能全局中断
    ERTM;  //使能实时中断

    if(adc[1]<32760)
        GpioDataRegs.GPBCLEAR.bit.GPIOB1=1;
        else
        GpioDataRegs.GPBSET.bit.GPIOB1=1;

       
       
        for(;;)
        {
         
        }

}



红字部分是判断语句,使用if else写的,但是结果AD可以采集到数据,但是不会从GPIO口输出信号,想问下大家怎么处理

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。