你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32G431RBT6笔记之USART

[复制链接]
STMCU小助手 发布时间:2023-3-2 11:43
2f1b02d2c220445e83a27db129947bf5.png

d6c4e78798b3496d99c09477b8986946.png

1d8c41a1151a4f7ca91648f69ba00e6e.png

97fd755916514839bab826845d3d46d4.png

a0e2a8dbdec84b3cb976f2f88d968b3d.png

2daf9af1368e4e458a2180b83c0c09cb.png

在bsp文件夹下新建两个usart两个文件,然后再和前面一样的操作添加文件、添加头文件

几个小细节
① msp.c中有需要改的东西

eb5a4f1adab146b48abd4e5da6078cee.png

②底层要添加uart的库文件:

e5dfc9bac5594b72bf0fae357d51f6de.png

③打开uart的宏定义,才能使得bsp_usart.c中的代码不出错

1bed872a74b8483795e2152a6827c1c2.png

bsp_usart.c文件的代码书写,去掉复制过来的3个函数中的最后一个函数。复制到bsp_usart.c中

da15d0dc9ce245259ba499b5a9bab523.png

6f09e0a3737e4faa89b44de6e0a9afd5.png


串口中断函数

ea047462b8b74e158deec48656a4b4db.png

测试小程序:向串口发送数据能在屏幕上显示出来

f2d1dddbe37f4b7d8e7087efd5ffff3b.png

  1. void Usart_Proc(void )
  2. {
  3.         if((uwTick-uwTick_Usart_Set_Point)<200) return ;
  4.         uwTick_Key_Set_Point = uwTick;
  5.        
  6.         sprintf(str,"%04d:Hello,world.\r\n",counter);
  7.         HAL_UART_Transmit (&huart1 ,(unsigned char *)str,strlen(str),80);
  8.        
  9.         if(++counter == 100)
  10.                 counter = 0;
  11. }
复制代码

注意:代码中用到的变量要定义一下

串口接收中断

990f98d444844a6dbcf4e53b32bfd836.png

HAL_UART_Receive_IT(&huart1 ,&rx_buffer,1);//串口接收中断函数

266679fab68141cfac0fe9416222a613.png

  1. void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
  2. {
  3.         LED_Disp(0x77);
  4.         HAL_Delay (500);
  5.         LED_Disp(0x00);
  6.        
  7.         HAL_UART_Receive_IT(&huart1 ,&rx_buffer,1);//设置连续中断产生
  8. }
复制代码

注意:串口中断回调函数中用到了延时函数(滴答定时器),因此一般要把滴答定时器的优先级设置最高,以后msp文件中不用再添加函数了

b31fb026afb74884867d91bfa07e2ef7.png

接着编译,下载程序,当在串口中发送数据的时候,灯就会亮,然后就灭了(回调函数的功能就是这样的),但是下载一次,发送数据只能亮一次,再让他亮只能再下载一次程序
————————————————
版权声明:想要优秀点儿

a5a77e57cdd14974921b2f05114359e1.png
收藏 评论0 发布时间:2023-3-2 11:43

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版