DSP2812无法进入周期中断 ,一般都什么毛病

2019-07-18 14:06发布

DSP2812无法进入周期中断 ,一般都什么毛病
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
liliang9554
1楼-- · 2019-07-18 16:53
具体情况具体分析啊
jiaxw
2楼-- · 2019-07-18 20:11
看程序吧一、主程序:

#include "DSP28_Device.h"
float ADResult;
unsigned int k=0;
float adclo;
interrupt void ADC_ISR(void);

void main(void)
{
InitSysCtrl(); //初始化系统

DINT; //关中断
IER = 0x0000;
IFR = 0x0000;

InitPieCtrl(); //初始化PIE控制寄存器
InitPieVectTable(); //初始化PIE参数表
InitEv();
InitAdc(); //初始化ADC
adclo=0;
PieCtrl.PIEIER1.bit.INTx6=1;

EALLOW;
PieVectTable.ADCINT=&ADC_ISR;
EDIS;

IER |= M_INT1; // Enable INT14 which is connected to CPU-Timer 2:

EINT; // Enable INTM
ERTM; // Enable DBGM
EvaRegs.T1CON.bit.TENABLE=1;
for(;;)
{

}
}

interrupt void ADC_ISR(void)
{
ADResult=((AdcRegs.RESULT0>>4)*3)/4095.0+adclo;
PieCtrl.PIEACK.all=0x0001;
AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1;
AdcRegs.ADCTRL2.bit.RST_SEQ1=1; //在这里设置断点
EINT;
}
jiaxw
3楼-- · 2019-07-19 01:18


二、ad初始化程序:
void InitAdc(void)
{
unsigned int i;

AdcRegs.ADCTRL1.bit.RESET=1;
NOP;
AdcRegs.ADCTRL1.bit.RESET=0;
AdcRegs.ADCTRL1.bit.SUSMOD=3;
AdcRegs.ADCTRL1.bit.ACQ_PS=0;
AdcRegs.ADCTRL1.bit.CPS=0;
AdcRegs.ADCTRL1.bit.CONT_RUN=0;
AdcRegs.ADCTRL1.bit.SEQ_CASC=1;

AdcRegs.ADCTRL3.bit.ADCBGRFDN=3;
for(i=0;i<10000;i++) NOP;
AdcRegs.ADCTRL3.bit.ADCPWDN=1;
for(i=0;i<5000;i++) NOP;
AdcRegs.ADCTRL3.bit.ADCCLKPS=15;
AdcRegs.ADCTRL3.bit.SMODE_SEL=1;
AdcRegs.MAX_CONV.bit.MAX_CONV=7;//15;
AdcRegs.CHSELSEQ1.bit.CONV00=0;
AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1;
AdcRegs.ADC_ST_FLAG.bit.INT_SEQ2_CLR=1;

AdcRegs.ADCTRL2.bit.EVB_SOC_SEQ=0;
AdcRegs.ADCTRL2.bit.RST_SEQ1=0;
AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;
AdcRegs.ADCTRL2.bit.INT_MOD_SEQ1=0;
AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1=0;
AdcRegs.ADCTRL2.bit.EXT_SOC_SEQ1=0;
AdcRegs.ADCTRL2.bit.RST_SEQ2=0;
AdcRegs.ADCTRL2.bit.SOC_SEQ2=0;
AdcRegs.ADCTRL2.bit.INT_ENA_SEQ2=0;
AdcRegs.ADCTRL2.bit.INT_MOD_SEQ2=0;
AdcRegs.ADCTRL2.bit.EVB_SOC_SEQ2=0;
AdcRegs.ADCTRL2.bit.SOC_SEQ1=0;
}
jiaxw
4楼-- · 2019-07-19 03:44
 精彩回答 2  元偷偷看……
zhaoxqi
5楼-- · 2019-07-19 07:17

EvaRegs.T1CON.bit.TENABLE=0; // 你没有启动定时器吧,应该使能定时器操作
huangchui
6楼-- · 2019-07-19 07:27
EvaRegs.T1CON.bit.TCLKS10=0; // 那个TCLKS不是这样写的吧

一周热门 更多>