概述
在bsp文件夹下新建两个usart两个文件,然后再和前面一样的操作添加文件、添加头文件
几个小细节
① msp.c中有需要改的东西
②底层要添加uart的库文件:
③打开uart的宏定义,才能使得bsp_usart.c中的代码不出错
bsp_usart.c文件的代码书写,去掉复制过来的3个函数中的最后一个函数。复制到bsp_usart.c中
串口中断函数
测试小程序:向串口发送数据能在屏幕上显示出来
void Usart_Proc(void )
{
if((uwTick-uwTick_Usart_Set_Point)<200) return ;
uwTick_Key_Set_Point = uwTick;
sprintf(str,"%04d:Hello,world.rn",counter);
HAL_UART_Transmit (&huart1 ,(unsigned char *)str,strlen(str),80);
if(++counter == 100)
counter = 0;
}
注意:代码中用到的变量要定义一下
串口接收中断
HAL_UART_Receive_IT(&huart1 ,&rx_buffer,1);//串口接收中断函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
LED_Disp(0x77);
HAL_Delay (500);
LED_Disp(0x00);
HAL_UART_Receive_IT(&huart1 ,&rx_buffer,1);//设置连续中断产生
}
注意:串口中断回调函数中用到了延时函数(滴答定时器),因此一般要把滴答定时器的优先级设置最高,以后msp文件中不用再添加函数了
接着编译,下载程序,当在串口中发送数据的时候,灯就会亮,然后就灭了(回调函数的功能就是这样的),但是下载一次,发送数据只能亮一次,再让他亮只能再下载一次程序
最后
以上就是矮小信封为你收集整理的STM32G431RBT6---模板整理笔记之USART的全部内容,希望文章能够帮你解决STM32G431RBT6---模板整理笔记之USART所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复