打印
[MCU]

请教28035 AD 顺序采样

[复制链接]
570|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2020-11-5 09:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
AD, ADC, dc, SOC, se

28035,开发板示例代码采用同步采样方式,我改成顺序采样,结果不进入中断服务子程序,这个问题已经折磨我好几天了,请大神们看一下。代码如下:
void Motor_ADC_Config(void)
{

   InitAdc();  // For this example, init the ADC

   EALLOW;  // This is needed to write to EALLOW protected register
   PieVectTable.ADCINT1 = &adc_isr;
   EDIS;    // This is needed to disable write to EALLOW protected registers

   PieCtrlRegs.PIEIER1.bit.INTx1 = 1;        // Enable INT 1.1 in the PIE
   IER |= M_INT1;                                                 // Enable CPU Interrupt 1

// Configure ADC
        EALLOW;
        AdcRegs.ADCCTL1.bit.ADCREFSEL        = 0;    //REF Int
        AdcRegs.ADCCTL1.bit.INTPULSEPOS        = 1;        //ADCINT1 trips after AdcResults latch
        AdcRegs.INTSEL1N2.bit.INT1E     = 1;        //Enabled ADCINT1
        AdcRegs.INTSEL1N2.bit.INT1CONT  = 0;        //Disable ADCINT1 Continuous mode,single conversion mode

        AdcRegs.INTSEL1N2.bit.INT1SEL        = 1;        //setup EOC1 to trigger ADCINT1 to fire , EOC1 is trigger for ADCINTx


//Sequential sampling enable for SOC0/SOC1
        AdcRegs.ADCSAMPLEMODE.bit.SIMULEN0 = 0;        //SOC0/1 Sequential Sampling Enable        ,SOC0与SOC1独立工作
        AdcRegs.ADCSOC0CTL.bit.CHSEL         = 0;        //SOC0 ,配置模拟通道连接
        AdcRegs.ADCSOC1CTL.bit.CHSEL         = 8;        //SOC1 ,配置模拟通道连接

        //AdcRegs.ADCSAMPLEMODE.bit.SIMULEN0=1;        //SOC0与SOC1
        //AdcRegs.ADCSOC0CTL.bit.CHSEL         = 0;        //SOC0 ,配置模拟通道连接
        //AdcRegs.ADCSOC1CTL.bit.CHSEL         = 1;        //SOC1 ,配置模拟通道连接

        AdcRegs.ADCSOC0CTL.bit.TRIGSEL         = 0x00;    //ADCTRIG0- Software only
        AdcRegs.ADCSOC1CTL.bit.TRIGSEL         = 0x00;

        AdcRegs.ADCSOC0CTL.bit.ACQPS         = 6;
        AdcRegs.ADCSOC1CTL.bit.ACQPS         = 6;        //set SOC0 S/H Window to 7 ADC Clock Cycles, (6 ACQPS plus 1)

        EDIS;
}



//-------------------------------------------------------------------------
//AD 中断处理函数
//
//##########################################################################
interrupt void  adc_isr(void)
{
        EALLOW;
        PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;   // Acknowledge interrupt to PIE
        EDIS;

        AdcRegs.ADCINT**CLR.bit.ADCINT1 = 1;                //Clear ADCINT1 flag reinitialize for next SOC
}

使用特权

评论回复

相关帖子

沙发
zhangmangui| | 2020-11-9 23:37 | 只看该作者
顺序采样的某个寄存器没配对  和并行采样比较只需改几个寄存器

使用特权

评论回复
板凳
zhangmangui| | 2020-11-9 23:37 | 只看该作者
下载controlSUITE了吗

使用特权

评论回复
地板
zhangmangui| | 2020-11-9 23:38 | 只看该作者
还有c2000ware

使用特权

评论回复
5
八层楼| | 2020-12-2 14:37 | 只看该作者
寄存器如何进行配对呢

使用特权

评论回复
6
观海| | 2020-12-2 14:40 | 只看该作者
这个是什么系列的芯片啊

使用特权

评论回复
7
guanjiaer| | 2020-12-2 14:41 | 只看该作者
controlSUITE 这个是啥工具啊

使用特权

评论回复
8
heimaojingzhang| | 2020-12-2 14:43 | 只看该作者
一直没有显示转换完成是吗

使用特权

评论回复
9
keaibukelian| | 2020-12-2 14:44 | 只看该作者
先用一个通道试试看

使用特权

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

本版积分规则

2035

主题

7339

帖子

10

粉丝