你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
板子: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> ...
第三季度啦,兄弟们
STM32会存在单个IO口坏掉的情况吗?
STM32L433VCT6 进入STOP模式2之后,功耗依然和正常运行模式没有差别,请教大神
STM32G070RBT6TR ADC采集定点电压误差较大,有没有优化方向
STM32407 使用串口闲时中断+DMA方式接收最大接收字节是多少
电脑主机一亮一灭启动不了
LIS2MDL X轴数据读取问题
无法完全整片擦除 STM32H Nucleo
周末卡点打卡
DMA接收数据长度,只有到达指定长度后才能产生中断,在线仿真模式下,断点可以看一下DMA使用的缓冲区中,是否有数据。
最好是模拟一个上位机通讯,这样容易调试。先发一个字节看看是否能正常接收,然后再增加。
如果一个字节都不正常,那就调试检查基本配置了。
若果多个字节不正常,那要看看逻辑上是不是有问题,调试一下就找到了。
你这样,在每次进UART中断里首先检查下IDLE标志,如果该标志置位了,我们自己 先行对该位 清零,__HAL_UART_CLEAR_FLAG(&huart2, UART_CLEAR_IDLEF);不要留到后面让库代码处理,这个地方它处理得有点问题。
[md]感谢,问题已解决
[md]感谢,问题已解决
[md]感谢,问题已解决