你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

st-img
chrome
st-img
firefox
st-img
safari
st-img
ie8及以上
shequ.stmicroelectronics.cn
  • ST意法半导体官网
  • STM32中文官网
  • ST全球论坛
登录/注册
  • 首页
  • 技术问答
  • 话题
  • 资源
  • 创客秀
  • 视频
  • 标签
  • 积分商城
  • 每日签到
simonlkoo

simonlkoo

 

回答数 0 关注数 0
关注 私信
  • 动态99
  • 提问
  • 回答0
  • 创客秀 0
  • 分享 0
  • 关注0
0 回答

STM32u575 USART 用GPDMA接收,DMA中断,usart 中断正常来,ROR数据正确,接收缓冲却不变

DMA UART STM32U5
2 回答

STM32u575 USART 用GPDMA接收,DMA中断,usart 中断正常来,ROR数据正确,接收缓冲却不变

STM32U5
xmshao xmshao 回答时间: 4 分钟前

你目前UART2是自发自收吗? while (1) {    / First transmit data, then start DMA receive /     if (loop_TX < 0xFF) {       loop_TX++;       HAL_UART_Transmit(&huart2, &loop_TX, 1, 100);       HAL_Delay(100);       / Start DMA receive with IDLE detection /       HAL_UARTEx_ReceiveToIdle_DMA(&huart2, &loop_RX, 1);       / Wait for DMA transfer to complete /    HAL_Delay(100);       / Flush cache to ensure DMA data is visible to CPU /       SCB_InvalidateDCache_by_Addr(&loop_RX, sizeof(loop_RX));       printf("[MAIN] TX: %02X, RX: %02X\r\n", loop_TX, loop_RX);     } 感觉又不像,你发生完100ms后才去开启基于UART2的接收。 你基于空闲中断做UART的DMA接收,接收长度才1个,意义何在?如何使用空闲事件? 一般来讲基于空闲事件做UART接收的话,接收数据长度相对设置比较长,以空闲事件表征当前数据接收完毕。在空闲中断里读取接收到的数据。

赞0
simonlkoo simonlkoo


阅读作者更多的帖子

所在话题

参与活动

  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16