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.
HWREG(GPIO_PORTD_BASE + GPIO_O_LOCK) = GPIO_LOCK_KEY;//解锁 HWREG(GPIO_PORTD_BASE + GPIO_O_CR) |= 0x80;//确认 HWREG(GPIO_PORTD_BASE + GPIO_O_LOCK) = 0;//重新锁定
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); GPIODirModeSet(GPIO_PORTD_BASE, GPIO_PIN_6 | GPIO_PIN_7, GPIO_DIR_MODE_IN); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_6 | GPIO_PIN_7, GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_STD_WPU);
如上程序,当执行到第二行的时候程序产生fault interrupt,并且进入FaultISR(void){}函数中的死循环,一直找不到原因和解决办法,希望能得到帮助,谢谢!
另外“AY-MSE-Kit_例程_For_Tiva LP”中".\Code_pro\CH3\CH3_1_LCD"中的例程对PD7的解锁代码为:
HWREG(GPIO_PORTD_BASE+GPIO_O_LOCK) |= GPIO_LOCK_KEY; HWREG(GPIO_PORTD_BASE+GPIO_O_CR) |= (1<<7); HWREG(GPIO_PORTD_BASE+GPIO_O_DEN) &=(~(1<<7)); HWREG(GPIO_PORTD_BASE+GPIO_O_PDR) &= (~(1<<7)); HWREG(GPIO_PORTD_BASE+GPIO_O_PUR) &= (~(1<<7)); HWREG(GPIO_PORTD_BASE+GPIO_O_AFSEL) &=(~(1<<7));
上面是不是有差错,第一行应该直接赋值解锁,但还是一直都调不出来,同样会引发fault interrupt。