实验开发板:野火霸道V1
STM32LL库系列教程——LL库工程配置流程
STM32LL库系列教程【一】——安装CubeMx软件
STM32LL库系列教程【二】——点亮LED小灯
STM32LL库系列教程【三】——USART中断实验
STM32LL库系列教程【四】——ADC单通道采集
STM32LL库系列教程【五】——DMA实现ADC单通道采集
STM32LL库系列教程【六】——通用定时器定时实验
STM32LL库系列教程【七】——通用定时器PWM实验
STM32LL库系列教程【八】——通用定时器输入捕获实验
STM32LL库系列教程【九】——SPI通信实验
STM32LL库系列教程【十】——IIC通信实验
USART + DMA 实现接收不定长度示例:STM32基于LL库的USART+DMA使用
搭建工程
1、配置工程属性

2、确认时钟源

3、配置系统时钟

4、使能USART
这里选择的是USART1、模式为异步、打开中断,相关参数配置选择默认
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-28Pazt7V-1639191359661)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211101916651.png)]](https://i-blog.csdnimg.cn/blog_migrate/a35b1e73178a5e15c9c9011fb0c1fdfe.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rledGbmm-1639191359661)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211102249340.png)]](https://i-blog.csdnimg.cn/blog_migrate/13964f609debbccdb5046689fee5ede3.png)
5、生成代码
点击 GENERATE CODE 会在设定的路径成功生成代码,选择打开工程
代码编写
CubeMx生成的代码有些寄存器没有使能,我们不能直接使用,需要我们自己使能相关寄存器
1、使能接收中断
打开usart.c源文件,我们在函数MX_USART1_UART_Init() 最后面添加USART接收中断使能
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AES953rQ-1639191359662)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211103315268.png)]](https://i-blog.csdnimg.cn/blog_migrate/a6e129c63fd35c16c64f825fbc7985a8.png)
2、编写中断函数
在写中断函数之前先看几个相关函数
uint32_t LL_USART_IsActiveFlag_RXNE(USART_TypeDef *USARTx) //检测接收数据就绪标志
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PeIzB6bU-1639191359664)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211104025696.png)]](https://i-blog.csdnimg.cn/blog_migrate/b2b90349f7a9cd24c0daa2e7c6afa781.png)
uint8_t LL_USART_ReceiveData8(USART_TypeDef *USARTx) //读取接收器数据寄存器
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L756bTGQ-1639191492907)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211104707827.png)]](https://i-blog.csdnimg.cn/blog_migrate/733fa0c6dbf54562672d2654911c3cde.png)
void LL_USART_TransmitData8(USART_TypeDef *USARTx, uint8_t Value) //写入发送器数据寄存器
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J7GqbM3L-1639191359669)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211104831207.png)]](https://i-blog.csdnimg.cn/blog_migrate/f1080bbde6c0981e488b4fe6effaeddc.png)
接下来就可以编写中断函数了
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-28YwaGYZ-1639191359671)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211105014032.png)]](https://i-blog.csdnimg.cn/blog_migrate/f28131efc0e7031c62605ca398fcc9e5.png)
3、下载程序观察效果
下载到开发板,然后打开串口调试助手,发送"ABCD",在接收区收到了"ABCD",这样表示USART中断函数没有问题
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AupoxiKI-1639191359677)(C:\Users\hao\AppData\Roaming\Typora\typora-user-images\image-20211211105231336.png)]](https://i-blog.csdnimg.cn/blog_migrate/c1744daee1af4cc360ecf74e18d3b604.png)
3997

被折叠的 条评论
为什么被折叠?



