完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
最近在调6678的CSL中edma的测试例程(D:ccs5pdk_C6678_1_0_0_9_beta2packagesticslexampleedma),发现这个程序无法触发edma数据搬运。检查后发现这个程序确实有问题,如下:
/* Trigger channel */ CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_SET,NULL); regionIntr.region = CSL_EDMA3_REGION_GLOBAL; regionIntr.intr = 0; regionIntr.intrh = 0; /* Poll on IPR bit 0 */ do [ CSL_edma3GetHwStatus(hModule,CSL_EDMA3_QUERY_INTRPEND,®ionIntr); ] while (!(regionIntr.intr & 0x1)); do-while循环里应该加上 do [ /* Trigger channel */ CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_SET,NULL); CSL_edma3GetHwStatus(hModule,CSL_EDMA3_QUERY_INTRPEND,®ionIntr); ] while (!(regionIntr.intr & 0x1)); 因为他是A-SYNC方式的数据搬运,所以要触发256(ACNT=256,BCNT=CCNT=1,TCINTEN=1)次才能产生中断,即跳出该循环,但是改了之后还是不行,根本没法触发edma数据搬运,请问这是为什么,急切需要高手解决,谢谢! 我单步跟踪的,感觉寄存器没有错误啊,EMR寄存器也没有错误! |
|
相关推荐
2个回答
|
|
看了你对A-sync的描述,看来你还是不理解EDMA!A-sync mode时一个事件会搬移A-cnt个数,所以上述的应用启动一次即可。还是请好好看看EDMA手册及论坛中的EDMA培训材料。
|
|
|
|
zbb9612 发表于 2018-6-19 07:30 是我疏忽看错了,谢谢你的提醒! |
|
|
|
只有小组成员才能发言,加入小组>>
509 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
380 浏览 1 评论
939 浏览 0 评论
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
2111 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3857 浏览 4 评论
25浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
889浏览 2评论
136浏览 2评论
171浏览 2评论
149浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-20 16:50 , Processed in 0.699361 second(s), Total 49, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号