完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
板子:STM32G0B1
方式:UART2空闲中断+DMA接收 问题:烧写程序后,板子一上电就自动进入空闲中断,但此时没有数据发送,当采用上位机发送数据时,可以进入空闲中断,但DMA接收不到数据? 求帮助,感谢感谢! |
|
相关推荐
3个回答
|
|
最好是模拟一个上位机通讯,这样容易调试。先发一个字节看看是否能正常接收,然后再增加。
如果一个字节都不正常,那就调试检查基本配置了。 若果多个字节不正常,那要看看逻辑上是不是有问题,调试一下就找到了。 |
|
|
|
在每次进UART中断里首先检查下IDLE标志,如果该标志置位了,我们自己 先行对该位 清零,__HAL_UART_CLEAR_FLAG( huart2, UART_CLEAR_IDLEF);不要留到后面让库代码处理,这个地方它处理得有点问题。
|
|
|
|
可能是由于配置不正确或者程序逻辑出现问题导致的。以下是可能导致这个问题的一些原因和解决方法:
1. 检查串口配置:确保串口配置正确,包括波特率、奇偶校验位、停止位等参数与上位机设置一致。 2. 检查DMA配置:确保DMA配置正确,包括DMA通道、传输方向、内存地址和数据大小等参数设置正确。 3. 检查GPIO配置:确保UART引脚的GPIO配置正确,包括引脚复用和输入输出模式设置正确。 4. 检查空闲中断配置:确认空闲中断的使能和优先级设置正确。 5. 检查接收缓冲区设置:确保接收缓冲区设置正确,包括缓冲区长度、地址和空闲中断触发阈值等参数。 6. 检查程序逻辑:检查程序逻辑是否正确,是否有其他地方阻塞了DMA的接收过程,或者接收数据后没有正确处理。 7. 调试方法:可以通过串口打印调试信息来查看是否有错误提示,或者通过逐步调试的方式定位问题所在。 总的来说,需要仔细检查串口、DMA和GPIO的配置是否正确,以及确保程序逻辑没有问题。如果还是无法解决问题,可以提供更详细的代码和配置信息,以便更好地帮助解决问题。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1777 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1080 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
728 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1678 浏览 2 评论
1938浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
731浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
570浏览 3评论
595浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
554浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 09:05 , Processed in 0.924769 second(s), Total 86, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号