HAL库STM32C8T6最小系统板用串口做应声虫

编程入门 行业动态 更新时间:2024-10-10 11:20:19

HAL库STM32C8T6最小系统板用串口做<a href=https://www.elefans.com/category/jswz/34/1725749.html style=应声虫"/>

HAL库STM32C8T6最小系统板用串口做应声虫

先时钟配置

开启串口(这里面的TIM1和TIM2可以不用管,是我自己其他项目用到的,这里与应声虫无关)

记得要开启中断

一些其他的配置

在usart.c文件里面定义几个变量写入回调函数

RxBuff为数据缓冲区,给中断接收函数储存数据的

DataBuff为数据保存区,每次接收到的数据都保存到这里来

Rx_flag为接收标志

Rx_len为DataBuff接收长度

在这里我每发送一次数据指示灯就会闪烁一次

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{if(huart->Instance==USART1){DataBuff[Rx_len++]=RxBuff[0];       //串口中断每次只接收一个字节Rx_flag=0;if(RxBuff[0]=='\n'){Rx_flag=1;HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);printf("DataBuff:%s\r\n",(char*)&DataBuff);RxBuff[0]=0;       //发送完后要把缓冲区清零Rx_len=0;          //发送完后要把标志位清零Rx_flag=0;         //发送完后要把标志位清零memset(DataBuff,0x00,sizeof(DataBuff));//发送完后要把数据区清零}else if(Rx_len>1000)      {printf("error!!!");}HAL_UART_Receive_IT(&huart1,(uint8_t*)&RxBuff,1);}
}	

在main.c函数while循环里面开启中断

重定向(有了这个才可以用printf在打印出数据)

运行结果

应声虫程序运行成功

更多推荐

HAL库STM32C8T6最小系统板用串口做应声虫

本文发布于:2024-03-09 18:35:08,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1725750.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:应声虫   串口   最小   系统   HAL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!