你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
板子:STM32G0B1
方式:UART2空闲中断+DMA接收
问题:烧写程序后,板子一上电就自动进入空闲中断,但此时没有数据发送,当采用上位机发送数据时,可以进入空闲中断,但DMA接收不到数据?
求帮助,感谢感谢!
举报
DMA接收数据长度,只有到达指定长度后才能产生中断,在线仿真模式下,断点可以看一下DMA使用的缓冲区中,是否有数据。
最好是模拟一个上位机通讯,这样容易调试。先发一个字节看看是否能正常接收,然后再增加。
如果一个字节都不正常,那就调试检查基本配置了。
若果多个字节不正常,那要看看逻辑上是不是有问题,调试一下就找到了。
你这样,在每次进UART中断里首先检查下IDLE标志,如果该标志置位了,我们自己 先行对该位 清零,__HAL_UART_CLEAR_FLAG(&huart2, UART_CLEAR_IDLEF);不要留到后面让库代码处理,这个地方它处理得有点问题。
废鱼 发表于 2022-4-24 08:36 DMA接收数据长度,只有到达指定长度后才能产生中断,在线仿真模式下,断点可以看一下DMA使用的缓冲区中 ...
[md]感谢,问题已解决
butterflyspring 发表于 2022-4-24 11:46 最好是模拟一个上位机通讯,这样容易调试。先发一个字节看看是否能正常接收,然后再增加。</p> <p>如果一个字 ...
xmshao 发表于 2022-4-24 17:33 你这样,在每次进UART中断里首先检查下IDLE标志,如果该标志置位了,我们自己 先行对该位 清零,_<em>HAL</em> ...
LIS2MDL X轴数据读取问题
stm32cubemx和数据手册对不上
stm32编码器模式计数问题
STM32G0b1 USB device cdc显示设备描述符请求失败
外部按键硬件级防抖功能
STM32会存在单个IO口坏掉的情况吗?
STM32N6570-DK开发板,哪里还有卖的?
基于STM32U575的RFID信息审查系统?
STM32L431偶发串口乱码问题。
STM32CubeProgrammer 安装错误,请帮忙解决,谢谢
DMA接收数据长度,只有到达指定长度后才能产生中断,在线仿真模式下,断点可以看一下DMA使用的缓冲区中,是否有数据。
最好是模拟一个上位机通讯,这样容易调试。先发一个字节看看是否能正常接收,然后再增加。
如果一个字节都不正常,那就调试检查基本配置了。
若果多个字节不正常,那要看看逻辑上是不是有问题,调试一下就找到了。
你这样,在每次进UART中断里首先检查下IDLE标志,如果该标志置位了,我们自己 先行对该位 清零,__HAL_UART_CLEAR_FLAG(&huart2, UART_CLEAR_IDLEF);不要留到后面让库代码处理,这个地方它处理得有点问题。
[md]感谢,问题已解决
[md]感谢,问题已解决
[md]感谢,问题已解决