【记录】STM32在ucOS中的串口操作(Interrrupt)
来源:互联网 发布:徐老师的淘宝店怎么进 编辑:程序博客网 时间:2024/05/24 06:31
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_ITConfig(USART1, USART_IT_RXNE, ENABLE); BSP_IntVectSet(BSP_INT_ID_USART1, BSP_IntHandlerUSART1); //设置串口1的中断向量 BSP_IntEn(BSP_INT_ID_USART1); USART_Cmd(USART1, ENABLE); //使能串口}
2、编写串口接收数据中断处理函数
static void BSP_IntHandlerUSART1 (void){ if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //进中断的标志 { USART_ClearITPendingBit(USART1,USART_IT_RXNE); USART_SendData(USART1, USART_ReceiveData(USART1)); //接收到的数据重新发送到串口 //OSMboxPost(MSGBOX,&rec_len); } }
0 0
- 【记录】STM32在ucOS中的串口操作(Interrrupt)
- 【记录】STM32在ucOS串口的操作(Polling)
- STM32 uCOS下实现串口文件
- STM32学习记录14 ucosii中的串口中断
- STM32串口寄存器操作
- STM32串口寄存器操作
- STM32:STM32学习记录4:串口
- uCos在stm32上的移植总结
- stm32 ucos LED灯延时闪烁+按键闪烁+串口输出
- stm32 ucos
- STM32+uCOS
- STM32串口操作相关事项
- 在STM32使用串口printf
- STM32移植ucos‖(一)
- stm32移植ucosⅡ(二)
- STM32移植uCOS-II系统(1)
- STM32移植uCOS-II系统(2)
- CoIDE下UCos-II在STM32下的移植
- WCF服务自宿主
- UITextField使用
- [MySQL]记录一次线上故障处理过程--> has more than 'max_user_connections' active connections
- 精妙SQL语句集合(转)
- Jmeter
- 【记录】STM32在ucOS中的串口操作(Interrrupt)
- DIV浮动层被OCX控件遮蔽解决方案
- ExpandableListView仿QQ好友列表
- 详解 Android AsyncTask
- Path Sum II 二叉树求和
- 通过函数指针调用函数
- 析构函数为何可以为虚函数?
- 欢迎使用CSDN-markdown编辑器
- CSS List