【记录】STM32在ucOS串口的操作(Polling)
来源:互联网 发布:红楼梦 脂评本 知乎 编辑:程序博客网 时间:2024/05/16 16:19
1、初始化串口
static void BSP_USART_Init (void) { //GPIO端口设置 GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; //NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE); //使能USART1,GPIOA时钟 USART_DeInit(USART1); //复位串口1 //USART1_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); //初始化PA9 //USART1_RX PA.10 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入 GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化PA10 //USART 初始化设置 USART_InitStructure.USART_BaudRate = 9600;//一般设置为9600; USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字长为8位数据格式 USART_InitStructure.USART_StopBits = USART_StopBits_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_Cmd(USART1, ENABLE); //使能串口 }
2、在ucOS的任务函数中添加串口接收代码(Polling)
while (DEF_TRUE) { /* Task body, always written as an infinite loop. */ BSP_LED_Toggle(1); OSTimeDlyHMSM(0, 0, 1, 150); while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) != RESET) { USART_SendData(USART1,(USART_ReceiveData(USART1) & 0x7F)); } }
0 0
- 【记录】STM32在ucOS串口的操作(Polling)
- 【记录】STM32在ucOS中的串口操作(Interrrupt)
- uCos在stm32上的移植总结
- STM32的ucos移植
- STM32 uCOS下实现串口文件
- CoIDE下UCos-II在STM32下的移植
- 如何把UCos-ii_在STM32上的移植
- 【嵌入式】uCOS-II在STM32上的移植
- 如何把UCos-ii_在STM32上的移植
- 如何把UCos-ii_在STM32上的移植
- STM32串口寄存器操作
- STM32串口寄存器操作
- STM32:STM32学习记录4:串口
- QT与STM32串口通信的问题记录
- stm32 ucos LED灯延时闪烁+按键闪烁+串口输出
- stm32 ucos
- STM32+uCOS
- stm32按键的检测(EXTI和Polling两种方式)
- 如何在C++中将filetime时间转化为字符串?
- IPsec 应用层和内核态通信方式
- XSHELL 绝佳配色方案, 保护你的眼睛
- 发现一块“智慧石”
- map去除某个特定的键值
- 【记录】STM32在ucOS串口的操作(Polling)
- Vijava 学习笔记之ResourcePool(基础配置信息)
- MySQL单机load过高问题讨论
- shiro与spring集成
- 厦门吉网为你定制福建特色地方棋牌游戏
- js中的闭包之我理解
- eclipse 配置dubbo报错
- iOS 开发实践之 Auto Layout
- MATALB中对循环操作的优化