新手入门
- 积分
- 3
- 金钱
- 3
- 注册时间
- 2020-2-17
- 在线时间
- 0 小时
|
发表于 2020-2-17 18:37:15
|
显示全部楼层
- /*****************************************************
- *function: 初始化串口1
- *param: 串口波特率
- *return:
- ******************************************************/
- void USART1_Init(unsigned int BaudRate)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- USART_InitTypeDef USART_InitStructure;
-
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA, ENABLE); //使能USART1,GPIOA时钟
-
- /* TX - PA.9 */
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //PA.9
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽输出
- GPIO_Init(GPIOA, &GPIO_InitStructure);
-
- /* RX - PA.10 */
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; //PA.10
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空输入
- GPIO_Init(GPIOA, &GPIO_InitStructure);
-
- USART_InitStructure.USART_BaudRate = BaudRate; //波特率
- USART_InitStructure.USART_WordLength = USART_WordLength_8b; //字长8位
- USART_InitStructure.USART_StopBits = USART_StopBits_1; //停止位1位
- USART_InitStructure.USART_Parity = USART_Parity_No; //无奇偶校验
- USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; //无硬件数据流控制
- USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //收/发模式
-
- USART_Init(USART1, &USART_InitStructure);
- USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); //开启接收中断
- USART_ITConfig(USART1, USART_IT_IDLE, ENABLE); //开启空闲中断
- USART_Cmd(USART1, ENABLE);
- }
复制代码 |
|