有個(gè)項(xiàng)目,需要用到PA12口,之前一直作為USB使用沒有注意,但是這次定義為普通IO口的時(shí)候出錯(cuò),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));
? ? }
}