完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
通过STM32的MDA和空闲中断实现串口不定长数据的收发
首先使用STM32cubemx创建工程。 1、配置RCC: 2、配置USART1: 3、在configuration中配置USART1: 配置串口波特率、数据位等基本信息 添加DMA服务:方框右下方点击ADD添加 勾选NVIC中断服务: 点击OK或APPLY保存设置。 4、点击project -->setting或者alt+p进行工程文件配置 填写工程名字,以及选择编译器。使用keil5,选择MDK-ARM V5 第二页配置 之后ctrl+r编译生成keil文件。 打开工程,在usart.c中定义 /* 串口接收缓冲区 /在uasrt.h中,定义 #define BUFFER_SIZE 100在stm32l4xx_it.c中找到相对应的中断函数,修改如下:(需要添加usart.h头文件) void USART1_IRQHandler(void)在main.c文件中,添加printf重定向语句。 #ifdef GNUC主函数while(1)循环前开启空闲中断和DMA服务 /开启串口空闲中断/在while(1)中添加 if(recv_end_flag==1)编译烧录后就能实现串口不定长数据的收发。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1364 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1359 浏览 1 评论
780 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
562 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1394 浏览 2 评论
1758浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
484浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
420浏览 3评论
414浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
389浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-29 05:49 , Processed in 0.526537 second(s), Total 46, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号