通過(guò)實(shí)驗(yàn)學(xué)會(huì)stm32的gpio設(shè)置 STM32UART1的引腳復(fù)用怎么定義?
STM32UART1的引腳復(fù)用怎么定義?GPIO_InitTypeDefGPIO_InitStructure;USART_InitTypeDefUSART_InitStructure;NVIC_Ini
STM32UART1的引腳復(fù)用怎么定義?
GPIO_InitTypeDefGPIO_InitStructure;
USART_InitTypeDefUSART_InitStructure;
NVIC_InitTypeDefNVIC_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE);//使能GPIOA的時(shí)鐘
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART的時(shí)鐘
/*USART1的端口配置*/
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_1);//配置PA9成第二功能引腳
TXGPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_1);//配置PA10成第二功能引腳RX
GPIO__PinGPIO_Pin_9|GPIO_Pin_10;
GPIO__ModeGPIO_Mode_AF;
GPIO__SpeedGPIO_Speed_50MHz;
GPIO__OTypeGPIO_OType_PP;
GPIO__PuPdGPIO_PuPd_UP;
GPIO_Init(GPIOA,GPIO_InitStructure);/*USART1的基本是配置*/
USART__BaudRate115200;//波特率
USART__WordLengthUSART_WordLength_8b;
USART__StopBitsUSART_StopBits_1;
USART__ParityUSART_Parity_no;
USART__HardwareFlowControlUSART_HardwareFlowControl_None;
USART__ModeUSART_Mode_Rx|USART_Mode_Tx;
USART_Init(USART1,USART_InitStructure);
USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);//使能收不到網(wǎng)絡(luò)中斷
USART_Cmd(USART1,ENABLE);//使能USART1
/*USART1的NVIC中斷配置*/
NVIC_InitStruct.NVIC_IRQChannel USART1_IRQn;
NVIC_InitStruct.NVIC_IRQChannelPriority0x02;
NVIC_InitStruct.NVIC_IRQChannelCmdENABLE;
NVIC_Init(NVIC_InitStruct);
stm32指示燈不亮?
調(diào)試器好象不可能指明GPIO的時(shí)鐘重新初始化,你全面檢查下是不是GPIO的時(shí)鐘就沒(méi)傳送。諸如系統(tǒng)初始化GPIOA時(shí)鐘:
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA);
其實(shí),到目前為止要先初始化系統(tǒng)時(shí)鐘。