hi
C6748 在SYSBIOS下使用dma发生错误:bus error,然后发现是read address error。
请问为什么会发生这种现象,如何解决这个错误。
目前使用edma做spi的搬运。
Shine:
请问dma是搬移什么数据?是不是同时访问什么地址造成总线冲突?
Jonathan CHEN:
回复 Shine:
你好,
edma做spi数据的搬运。使用sysbios;因为我有其他任务计算,在开启计算的情况下,dma会出现错误;把计算关了,能跑24小时无错误。
dma的话,是在spibuf和我的数据源之间来回搬运。数据源是专门给dma开辟的空间。
Shine:
回复 Jonathan CHEN:
“数据源是专门给dma开辟的空间”是说其他任务的计算不会涉及到访问这块memory?
试试设一下MSTPRI寄存器,把edma优先级调高。
Jonathan CHEN:
回复 Shine:
你好
MSTPRI寄存器,我初始化后 都是0,跟文档里面的默认值不一样。。。
我手动把他按照文档中的值去设置,并且设置dma为0,这样可以么?