有个项目,需要用到PA12口,之前一直作为USB使用没有注意,但是这次定义为普通IO口的时候出错,MCU无限重启。这是为什么呢?
代码:
int main(void)
{
u8 i = 0,j = 0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200);
GPIO_InitTypeDef GPIO_InitStructure = {0};
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11|GPIO_Pin_12;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
while(1)
{
Delay_Ms(2000);
i=GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_11);
j=GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_12);
GPIO_WriteBit(GPIOA, GPIO_Pin_11, (i == 0) ? (i = Bit_SET) : (i = Bit_RESET));
GPIO_WriteBit(GPIOA, GPIO_Pin_12, (j == 0) ? (j = Bit_SET) : (j = Bit_RESET));
}
}