⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 网络adc____002.txt

📁 TMS320F2812AD采样程序
💻 TXT
字号:

下面是AD转换,Ev周期中断程序,有问题。可是我找不到,大家帮帮忙!
#include "DSP28_Device.h"
float        a1[16];
unsigned int a2=0;
float        adclo=0.0;
interrupt void ad(void);
void main(void)
{
     InitSysCtrl();        
    EALLOW;
    SysCtrlRegs.HISPCP.all=0x3;
    EDIS;
        DINT;
        IER = 0x0000;
        IFR = 0x0000;

        InitPieCtrl();
        InitPieVectTable();        
        
        EALLOW;        // This is needed to write to EALLOW protected registers
        PieVectTable.ADCINT=&ad;
        EDIS;   // This is needed to disable write to EALLOW protected registers
    
    InitAdc();
InitEv();
EALLOW;
PieCtrl.PIEIER1.bit.INTx6=1;
EDIS;
    // Enable INT14 which is connected to CPU-Timer 2:
        IER |= M_INT1;
        //KickDog();--
    // Enable global Interrupts and higher priority real-time debug events:
        
        EINT;   // Enable Global interrupt INTM
        ERTM;        // Enable Global realtime interrupt DBGM

AdcRegs.MAX_CONV.bit.MAX_CONV=0x0033;
AdcRegs.ADCTRL3.bit.SMODE_SEL=1;

        AdcRegs.CHSELSEQ1.bit.CONV00=0;
        AdcRegs.CHSELSEQ1.bit.CONV01=1;
        AdcRegs.CHSELSEQ1.bit.CONV02=2;
        AdcRegs.CHSELSEQ1.bit.CONV03=3;
        
        AdcRegs.CHSELSEQ3.bit.CONV08=4;
        AdcRegs.CHSELSEQ3.bit.CONV09=5;
        AdcRegs.CHSELSEQ3.bit.CONV10=6;
        AdcRegs.CHSELSEQ3.bit.CONV11=7;

AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1=1;
AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;

EALLOW;
   EvaRegs.GPTCONA.bit.T1TOADC=2;
   EvaRegs.GPTCONA.bit.T1STAT=1;
   EvaRegs.T1CON.all=0x10c1;   
EDIS;
     EvaRegs.T1PR=0x00ff;
        for(;;)
        {                
                        KickDog();
        }        
interrupt void ad(void)
{
        IFR=0x0000;
        PieCtrl.PIEIFR1.all = 0;
        PieCtrl.PIEACK.all=0xffff;
        a2++;
        a1[0]=((float)AdcRegs.RESULT0)*3.0/65520.0+adclo;
        a1[1]=((float)AdcRegs.RESULT1)*3.0/65520.0+adclo;
        a1[2]=((float)AdcRegs.RESULT2)*3.0/65520.0+adclo;
        a1[3]=((float)AdcRegs.RESULT3)*3.0/65520.0+adclo;
        a1[4]=((float)AdcRegs.RESULT4)*3.0/65520.0+adclo;
        a1[5]=((float)AdcRegs.RESULT5)*3.0/65520.0+adclo;
        a1[6]=((float)AdcRegs.RESULT6)*3.0/65520.0+adclo;
        a1[7]=((float)AdcRegs.RESULT7)*3.0/65520.0+adclo;
        a1[8]=((float)AdcRegs.RESULT8)*3.0/65520.0+adclo;
        a1[9]=((float)AdcRegs.RESULT9)*3.0/65520.0+adclo;
        a1[10]=((float)AdcRegs.RESULT10)*3.0/65520.0+adclo;
        a1[11]=((float)AdcRegs.RESULT11)*3.0/65520.0+adclo;
        a1[12]=((float)AdcRegs.RESULT12)*3.0/65520.0+adclo;
        a1[13]=((float)AdcRegs.RESULT13)*3.0/65520.0+adclo;
        a1[14]=((float)AdcRegs.RESULT14)*3.0/65520.0+adclo;
        a1[15]=((float)AdcRegs.RESULT15)*3.0/65520.0+adclo;
        
        AdcRegs.ADCTRL2.bit.RST_SEQ1 = 1; // Reset SEQ1 
        AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR = 1; // Clear INT SEQ1 bit 
        
        AdcRegs.ADCTRL2.bit.EVB_SOC_SEQ2=1;
    AdcRegs.ADCTRL2.bit.INT_ENB_SEQ2=1;

    EvbRegs.GPTCONB.bit.T3TOADC=2;
    EvbRegs.GPTCONB.bit.T3STAT=1;
    EvbRegs.T3CON.all=0x10c1;
    EvbRegs.T3PR=0x00ff;    
}
}
转载请注明出自DSP交流网 DSP学习第一论坛 DSP技术应用与推广平台 DSP开发服务平台 http://www.hellodsp.com/bbs/,本贴地址:http://www.hellodsp.com/bbs/viewthread.php?tid=5313



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -