[APM32F1] apm32f103ret6在rtthread下的外设驱动问题,dma使用问题

[复制链接]
 楼主| yinxi12138 发表于 2025-5-25 13:31 | 显示全部楼层 |阅读模式
本帖最后由 yinxi12138 于 2025-5-25 13:51 编辑

#技术资源# 老板突发奇想,要将stm32换成apm32,在使用apm32f103ret6进行rtthread开发时,发现驱动代码中并没有dma的驱动代码,是极海没有进行着部分的dma开发么,还是本人没有找到。于是尝试在apm32_msp.c文件中加入串口3rx以及tx的dma使能代码(代码来自极海apm32f103xe串口dma例程)。dma使用失败。后面计划
1.尝试使用adc的dma功能,读取ntc传感器温度,检查adc的dma实行方案。
2.使用rs485的软件包,并启用dma,试验该能否启用芯片的串口dma。

结果:使用rs485软件包并启动dma,提示RT_SERIAL_RB_BUFSZ过小,请增加buff的警告。在增加到2048,仍是警告但是我的发送不到20字节。按照网上办法,增加线程的优先级,仍是出现警报,关闭dma功能仍是出现警报。drv_usart.c文件中,apm32_usart_ops.dma_transmit = RT_NULL,极海没有编写串口dma驱动。最后项目赶,自己写了一个rs485的代码,直接使用中断加定时器方式获取一帧modbus rtu协议的数据。实现每200ms,读取一个寄存器的稳定运行。等后面有时间仿照stm32的dma驱动看能不能成功。
小想法:amp32这一款芯片有着丰富的dma资源,在做物联网方面肯定有优势的,但是在rtthreados,并没有对这一优势进行发挥。要想和stm32系列竞争还是要注重初级开发者的学习上来,尤其是学生群体。



Gfan 发表于 2025-5-26 11:15 | 显示全部楼层
本帖最后由 Gfan 于 2025-5-26 11:17 编辑

您好,感谢您的建议~RT-Thread我们有demo的哈,可在103页面底部下载资源
407356833dd3430e48.png
https://www.geehy.com/product/fifth/APM32F103

评论

[url=home.php?mod=space&uid=3540534]@yinxi12138[/url] :嗯,可以试试的  发表于 2025-5-26 13:18
之前是直接再rtthread studio 上进行芯片选择,创建的项目并开发的,没有试过bsp的方式。你们官方给的历程有dma驱动?有机会有机会再尝试一下。  发表于 2025-5-26 12:33
分形梦想家 发表于 2025-5-30 18:39 | 显示全部楼层
还是自己写一下,用着放心
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

5

帖子

0

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