F28377外部中断问题

2019-03-24 08:29发布

本帖最后由 寒风吹彻 于 2017-6-27 17:12 编辑

按照例程修改的程序,可是例程能实现的功能,我自己接一个开关(开关一端接地,另一端接GPIO),就无法实现中断的功能。请各位指出我的错误,谢谢。这个例程:external_interrupt#include "F28x_Project.h"   
interrupt void xint3_isr(void);
#define DELAY (CPU_RATE/1000*6*510)   //Qual period at 6 samplesvoid main(void)
{   InitSysCtrl();// InitGpio();                  // Skipped for this example   
DINT;   
InitPieCtrl();  
IER = 0x0000;   
IFR = 0x0000;   
InitPieVectTable();   
EALLOW;           
PieVectTable.XINT3_INT = &xint3_isr;   
EDIS;      
PieCtrlRegs.PIECTRL.bit.ENPIE = 1;            
PieCtrlRegs.PIEIER12.bit.INTx1 = 1;            
IER |= M_INT12;                                 
EINT;                                          
EALLOW;   
GpioDataRegs.GPASET.bit.GPIO31 = 1;            
GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0;        // GPIO   
GpioCtrlRegs.GPADIR.bit.GPIO31 = 1;         // output   
EDIS;   
EALLOW;  
GpioCtrlRegs.GPBMUX1.bit.GPIO33 = 0;         // GPIO   
GpioCtrlRegs.GPBDIR.bit.GPIO33 = 0;          // input   
GpioCtrlRegs.GPBQSEL1.bit.GPIO33 = 0;           
EDIS;   
GPIO_SetupXINT3Gpio(33);   
XintRegs.XINT3CR.bit.POLARITY = 0;      // Falling edge interrupt   
XintRegs.XINT3CR.bit.ENABLE = 1;        // Enable XINT3     
for(;;)   
{  
}
}
interrupt void xint3_isr(void)
{        
GpioDataRegs.GPATOGGLE.bit.GPIO31 = 1;         
PieCtrlRegs.PIEACK.all = PIEACK_GROUP12;
}

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
elvike
2019-03-25 00:19
寒风吹彻 发表于 2017-6-27 22:03
GPIO_PULLUP        //Enable pull-up     是这个吗?

你看一下手册和例程吧,这几天ccs出问题了,没时间搞。GpioCtrlRegs.

一周热门 更多>

相关问题

    相关文章