打印
[蓝牙芯片]

CH573的SPI输出DMA模式的地址对齐疑问

[复制链接]
2538|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lanjackg2003|  楼主 | 2021-5-14 13:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在做CH573的SPI这块代码的移植,发现规格书中SPI章节没有提及DMA对输入地址有4字节对齐的要求。
但是官方的EVT示例代码中,却有4字节地址对齐的要求。
请问原厂FAE到底需要不需要4字节地址对齐,在使用SPI的DMA进行数据收发?


使用特权

评论回复
评论
WCHTech2 2021-5-19 09:44 回复TA
@lanjackg2003 :估计是芯片内部做了处理。不过32位的单片机,建议还是4字节对齐。 
lanjackg2003 2021-5-17 10:41 回复TA
@WCHTech2 : __attribute__((aligned(4))) UINT8 spiBuff[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6 }; SPI0_MasterDMATrans( spiBuff + 1, 11 ); 
lanjackg2003 2021-5-17 10:10 回复TA
@WCHTech2 :好的,谢谢。 不过我,试过,将示例代码的发送buffer地址向前偏移1个字节,然后进行收发。 逻辑分析仪器进行分析,发送数据是正确,同时用wlink仿真调试也没有DMA有异常. 所以这个还是有些疑惑。 
WCHTech2 2021-5-17 09:46 回复TA
是的,需要4字节对齐 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

56

主题

440

帖子

7

粉丝