TI中文支持网
TI专业的中文技术问题搜集分享网站

TM4C1294的P口和Q口的私有中断

以前写io中断都是使用的整个IO口的中断,从来没使用过IO的私有中断,按照以前的办法配置了一下,发现会一直进入fault B中断

这是配置的函数

int main()
{
	coreFre = SysCtlClockFreqSet((SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_CFG_VCO_480|SYSCTL_XTAL_25MHZ),120000000);
	
	SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOP);	

	GPIOPinTypeGPIOInput(GPIO_PORTP_BASE,GPIO_PIN_0);
	//GPIOPinTypeGPIOOutput(GPIO_PORTP_BASE,GPIO_PIN_5);	
	GPIOPadConfigSet(GPIO_PORTP_BASE,GPIO_PIN_0,GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_STD_WPU);
	
	IntPriorityGroupingSet(2);
	IntPrioritySet(INT_GPIOP0,0);
	
	GPIOIntTypeSet(GPIO_PORTP_BASE,GPIO_PIN_0,GPIO_LOW_LEVEL|GPIO_DISCRETE_INT);
	
	IntMasterEnable();
	IntDisable(INT_GPIOP1|INT_GPIOP2|INT_GPIOP3|INT_GPIOP4|INT_GPIOP5|INT_GPIOP6|INT_GPIOP7);
	IntEnable(INT_GPIOP0);	
	GPIOIntEnable(GPIO_PORTP_BASE,GPIO_INT_PIN_0);
	
	while(1)
	{
}	
}

void PortP0IntHandler()
{
	GPIOIntClear(GPIO_PORTP_BASE,GPIO_INT_PIN_0);
	GPIOPinWrite(GPIO_PORTP_BASE,GPIO_PIN_5,~GPIOPinRead(GPIO_PORTP_BASE,GPIO_PIN_5));
	SysCtlDelay(30000000);
}
xyz549040622:

IO的私有中断是指哪个呢?TM4C都是每组IO共用一个中断入口的,没有单独的IO中断的。

Maka Luo:

IO中断入口地址没有单独一个IO中断入口地址,进去中断后可以单独判断。

xyz549040622:

回复 Maka Luo:

问题是进去中断口后,如何判断触发的哪一个中断呢?用的是哪个函数呢?读取IO的电平吗?

赞(0)
未经允许不得转载:TI中文支持网 » TM4C1294的P口和Q口的私有中断
分享到: 更多 (0)