打印
[DSP编程]

McBsp+EDMA数据收发问题

[复制链接]
2079|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
PanDaerr|  楼主 | 2017-2-13 13:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 PanDaerr 于 2017-2-13 23:52 编辑

目前在调试两片OmapL138中的DSP芯片间通过MCBSP+EDMA数据通信的问题
现在的状态是,使用其中一片DSP轮询DXR发送,另一片通过MCBSP+EDMA方式触发EDMA中断接收数据没有问题
但是在使用MCBSP+EDMA发送数据时候遇到了一些问题
1.通过手册可知,DXR->XSR过程会触发XEVT事件,此时就会关联EDMA的MCBSP发送事件,读取PARAM,进行数据传输,那么,如果我想传输一个100字节的数据,我是写DXR呢?还是写EDMA的ESR寄存器手动触发事件呢?
2.不管是用上面说的哪种方式触发,100字节是否需要手动触发100次?还是手动触发1次,后面99次就自动执行了?

3.附件里是目前的程序,开发环境为CCS6,由于对DSP偏底层一点的开发实在没什么经验,希望大家可以指出问题所在!
----------------------------------------------------------------------------------------------------------------------------------------------------------
刚才加了会班,解决了…………
因为发送数据之前我是知道数据长度的,所以这里需要手动触发EDMA事件,写ESR寄存器,然后就会触发第一次DXR->XSR,这时会产生XEVT事件对ER寄存器赋值,此时如果EDMA的EER使能了,那么就会进行下一次传输。对于数据长度的控制,需要通过OPT参数中的B_INDEX来控制,对于传输的终止,对OPT中的LINK向置0xFFFF即可,这里不能像接收OPT那样写成无限循环的配置。


McBsp1_demo_TxRx_Tx.rar

979.46 KB

相关帖子

沙发
zhangmangui| | 2017-2-13 21:53 | 只看该作者
没环境  没条件玩了

使用特权

评论回复
板凳
greengate| | 2017-4-13 11:32 | 只看该作者
可以发一下 mcbsp_edma收的程序吗

使用特权

评论回复
地板
airwill| | 2017-4-15 12:47 | 只看该作者
应该是让数据发送的完成事件去触发 DMA. 你可以简单地写第一个数据, 这样之后所有的数据会由 DMA 自动完成传输了

使用特权

评论回复
5
cctv556| | 2017-7-28 13:46 | 只看该作者
众位楼主,有个问题想请教一下:在TMS6748中采用EDMA3进行16384个字节数据搬移到自定义的地址空间。但我这边只能实现256个字节的数据搬移。特请诸位楼主帮我指点实现大数据字节搬移如何实现。

使用特权

评论回复
6
stonesheep| | 2019-1-18 17:22 | 只看该作者
求一下后续程序,现在还能求到吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

9

帖子

1

粉丝