gd32f303,dma中断进不去,找不到中断服务函数

[复制链接]
5940|11
 楼主| arosyyy 发表于 2022-9-29 15:52 | 显示全部楼层 |阅读模式
最近用gd32f303cc芯片,配置pwm+dma驱动ws2812灯带,但灯的数量一点多,需要dma一个包一个包发,所以使用到dma的中断,但是现在我在标准库里都找不到dma的中断服务函数,根本就进不去中断里,求各位大佬指教指教一下
sonicll 发表于 2022-9-30 09:05 | 显示全部楼层
怎么可能找不到呢,在启动文件startup.s里的中断向量表里面找啊

评论

没有回调FUNCTION吗?  发表于 2022-9-30 15:11
starsuper123 发表于 2022-9-30 09:29 | 显示全部楼层
              DCD     DMA0_Channel0_IRQHandler          ; 27:DMA0 Channel0
                DCD     DMA0_Channel1_IRQHandler          ; 28:DMA0 Channel1
                DCD     DMA0_Channel2_IRQHandler          ; 29:DMA0 Channel2
                DCD     DMA0_Channel3_IRQHandler          ; 30:DMA0 Channel3
                DCD     DMA0_Channel4_IRQHandler          ; 31:DMA0 Channel4
                DCD     DMA0_Channel5_IRQHandler          ; 32:DMA0 Channel5
                DCD     DMA0_Channel6_IRQHandler          ; 33:DMA0 Channel6
startup文件里的,你在仔细看看
V853 发表于 2022-10-5 21:06 | 显示全部楼层
应该是你的程序没有定义DMA中断服务函数吧。
软核硬核 发表于 2022-10-5 21:07 | 显示全部楼层
你可以看看官方的DMA例程是怎么操作的。
 楼主| arosyyy 发表于 2022-10-9 09:22 | 显示全部楼层
starsuper123 发表于 2022-9-30 09:29
DCD     DMA0_Channel0_IRQHandler          ; 27:DMA0 Channel0
                DCD     D ...

是不是将 void DMA0_Channel0_IRQHandler(void)这样填写到gd32f30x_it.c文件中?
 楼主| arosyyy 发表于 2022-10-9 09:23 | 显示全部楼层
sonicll 发表于 2022-9-30 09:05
怎么可能找不到呢,在启动文件startup.s里的中断向量表里面找啊

是找到DMA0_Channel0_IRQHandler,然后填写到gd32f30x_it.c的文件中吗?
sonicll 发表于 2022-10-9 13:32 | 显示全部楼层
arosyyy 发表于 2022-10-9 09:23
是找到DMA0_Channel0_IRQHandler,然后填写到gd32f30x_it.c的文件中吗?

是的
asoka37 发表于 2022-10-9 14:56 | 显示全部楼层
我现在用stm32cubemx 开发 再移植到GD32测试, 纯粹GD32 吃不消
 楼主| arosyyy 发表于 2022-10-9 15:30 | 显示全部楼层
asoka37 发表于 2022-10-9 14:56
我现在用stm32cubemx 开发 再移植到GD32测试, 纯粹GD32 吃不消

直接用hai库来运行吗?但还是有些不放心
Undshing 发表于 2022-11-6 22:37 | 显示全部楼层
在启动文件startup.s里的中断向量表里面找
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

13

帖子

0

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