[研电赛技术支持] GD32H759I的CAN如何配置DMA接收?

[复制链接]
 楼主| 陆空 发表于 2024-11-27 15:55 | 显示全部楼层 |阅读模式
如题,can外设资源的dma接收函数如何使用
 楼主| 陆空 发表于 2024-11-27 16:38 | 显示全部楼层
代码内容是这样的,请问可能是哪里出了问题?

CAN的RXFIFO配置

CAN的RXFIFO配置

main函数中的dma初始化配置

main函数中的dma初始化配置
 楼主| 陆空 发表于 2024-11-27 16:45 | 显示全部楼层
不使用DMA时,CAN可以正常收发
Chad1989 发表于 2024-11-28 15:43 | 显示全部楼层
我以为所有单片机的CAN都不带DMA呢
stormwind123 发表于 2024-12-4 10:55 | 显示全部楼层
初始化CAN外设,配置DMA通道,配置CAN的DMA接收,建议参考GD32H759I的官方文档和库函数手册
 楼主| 陆空 发表于 2024-12-6 09:32 | 显示全部楼层
stormwind123 发表于 2024-12-4 10:55
初始化CAN外设,配置DMA通道,配置CAN的DMA接收,建议参考GD32H759I的官方文档和库函数手册 ...

官方文档描述很含糊,按照流程来也无法实现FIFO接收。库函数手册里能用的函数更是少之又少
 楼主| 陆空 发表于 2024-12-6 09:35 | 显示全部楼层
丙丁先生 发表于 2024-11-28 09:47
配置GD32H759I的CAN DMA接收,需设置CAN_InitTypeDef结构体中的相关参数,并在NVIC中使能CAN中断。 ...

就是按照这个步骤来的,配置理论上没有问题,能触发CAN接收中断,但是无法触发DMA转运
 楼主| 陆空 发表于 2024-12-10 09:47 | 显示全部楼层
已解决
rocha 发表于 2025-6-21 16:11 | 显示全部楼层
本帖最后由 rocha 于 2025-6-25 11:39 编辑

您好,我现在DMA CAN能接收但是DMA读出来的结果不更新,能请教一下设置吗? 我参考了官方用户手册但是一直弄不出来
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

1

主题

6

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部