您好!
我正在尝试 使用以下 GPIO 在 TMS320F28377S 器件上启用外部中断
XINT1 --> GPIO66
XINT2 --> GPIO67
1. XINT3 --> GPIO68
我以相同的方式初始化了所有三个中断。 XINT1和 XINT2正常工作、但无法启动与 GPIO68关联的 XINT3。 我还使用 XINT2验证了 GPIO68、工作正常。
因此硬件或 GPIO68映射没有问题。 我在组1 IER 下配置了全部三个中断。
请尽快解决问题
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我正在尝试 使用以下 GPIO 在 TMS320F28377S 器件上启用外部中断
XINT1 --> GPIO66
XINT2 --> GPIO67
1. XINT3 --> GPIO68
我以相同的方式初始化了所有三个中断。 XINT1和 XINT2正常工作、但无法启动与 GPIO68关联的 XINT3。 我还使用 XINT2验证了 GPIO68、工作正常。
因此硬件或 GPIO68映射没有问题。 我在组1 IER 下配置了全部三个中断。
请尽快解决问题
尊敬的 Vivek Singh:
感谢您的快速回复。
我在 init 函数中使用以下配置
EALLOW;//这是写入 EALLOW 受保护寄存器所必需的
PieVectTable.XINT1_INT =&XINT1_ISR;
PieVectTable.XINT2_INT =&XINT2_ISR;
PieVectTable.XINT3_INT =&xint3_ISR;
EDIS;//这是禁用写入 EALLOW 受保护寄存器所必需的
PieCtrlRegs.PIECTRL.bit.ENPIE = 1;//启用 PIE 块
PieCtrlRegs.PIEIER1.bit.INTx4 = 1;//启用 PIE 组1 INT4
PieCtrlRegs.PIEIER1.bit.INTx5 = 1;//启用 PIE 组1 INT5
PieCtrlRegs.PIEIER12.bit.INTx1 = 1;//启用 PIE 组1 INT5
IER |= M_INT1;
IER |= M_INT12;
EALLOW;
GpioCtrlRegs.GPCMUX1.bit.GPIO66=0;// GPIO
GpioCtrlRegs.GPCDIR.bit.GPIO66 = 0;//输入
GpioCtrlRegs.GPCQSEL1.bit.GPIO66=0;// XINT1同步到 SYSCLKOUT
GpioCtrlRegs.GPCMUX1.bit.GPIO67 = 0;// GPIO
GpioCtrlRegs.GPCDIR.bit.GPIO67 = 0;//输入
GpioCtrlRegs.GPCQSEL1.bit.GPIO67 = 0;// XINT2同步到 SYSCLKOUT
GpioCtrlRegs.GPCMUX1.bit.GPIO68=0;// GPIO
GpioCtrlRegs.GPCDIR.bit.GPIO68 = 0;//输入
GpioCtrlRegs.GPCQSEL1.bit.GPIO68=0;// XINT3同步到 SYSCLKOUT
EDIS;
GPIO_SetupXINT1Gpio (66);
GPIO_SetupXINT2Gpio (67);
GPIO_SetupXINT3Gpio (68);
XintRegs.XINT1CR.bit.polarity = 0;//下降边沿中断
XintRegs.XINT2CR.bit.polarity = 0;//下降边沿中断
XintRegs.XINT3CR.bit.polarity = 0;//下降边沿中断
XintRegs.XINT1CR.bit.ENABLE = 1;//启用 XINT1
XintRegs.XINT2CR.bit.ENABLE = 1;//启用 XINT2
XintRegs.XINT3CR.bit.ENABLE = 1;//启用 XINT3
请进行审核、如果有任何问题、请告知我。
此致、
Stalin