专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
DSP
建立C6784&OMAPL138的window CCS Dsp工程时遇到的问题及解决
2019-07-13 11:58
发布
生成海报
站内文章
/
DSP
13021
0
1126
最近做C6784的一个项目,设计c6748和OMAPL138的使用UPP互相通信。
使用的是TI官方提供的syslink,官方的说明书只有简单的建立SYS/BIOS的例子,以及一个SYSLINK程序,没有将如何去配置环境。一开始我是按照说明书,在LInux下建立编译环境的,配好以后发现也可以编译程序,不过不同的是LInux下编译dsp程序生成的是.xe674后缀的文件,我查了一下,网上说这个和windowCCS编译生成的.out是一样的,但是,但是,但是,使用原版的程序编译出来放到板子就是运行不了,卡主,而使用例程自带的编译好的.xe674文件确可以运行,真的头痛。所以我着手搭建Windows下的CCS编译环境,先是按照SYS/BIOS搭建的教程搭建,搭建好了rebuild发现层层问题,如下。
1编译时出现
Description Resource Path Location Type #20 identifier "__func__" is undefined message_heap.c /UppDsp line 24 C/C++ Problemf的错误,如下
发现下面的一大堆问题其实根源就是log.h的参数__func__引起的,
解决。以上出问题的文件其实都是不是dsp本身的,需要Linux下的GCC编译器才可以,所以在CCS里面添加GCC编译器即可,添加步骤如下:
2 解决完以上问题后又出现以下问题,弄了半天没明白.
网上查了一下说是函数没声明,我试着在upp_test.c开头加上pscModuleControl的声明,另一个同样操作,发现还是不行。最后观察编译打印日志发现,编译前半部分基本没啥问题,就到
的时候报的错,我怀疑是LINK阶段的问题,我参考了实例工程的link设置如下:
所以我找到以上文件,直接复制到我的程序目录下,然后编译果然解决了问题。
3 芯片选择问题,使用CCS编译时发现报错,关于psc.h找不到hw_psc_AM1808.h什么的,我明显感觉不对,因为我使用的是C6748啊,我查看发现psc.h前面有这样的一段:
这里明显是一个芯片选择的控制选项,这里如果说找不到hw_psc_AM1808.h就说明没有defined前面的C6748,我详细查看了给力例程,发现以下部分:
也许就是在这里设置的,我同样在我的工程这样设置,果然不会再找hw_psc_AM1808.h了,应该找到C6748了。
4 使用WindowsCCS编译的dsp .out加载到板子上,发现只能传输一个数,然后报错,Segmentation fault?????简直了。
弄了好久,上网查了一下 Segmentation fault属于c++的一个常见错误,叫段错误。出现的原因一般是内存错误,我分析了一下我的程序,查看cmd内存映射如下:
这是我为了不出错,和例程保持一致,使用例程的Platform文件,但是我又看了一下我的程序的说明,在shared里面有.bld的配置说明文件,如下:
显然,两个配置的内存是不一样的,我猜测应该这里的问题,改一波。如下:
改完以后。测试成功,没有 报错~。
Ta的文章
更多
>>
开关电源常用设计
0 个评论
常用算法——深度学习
0 个评论
建立C6784&OMAPL138的window CCS Dsp工程时遇到的问题及解决
0 个评论
让电池起死回生 笔记本电池换芯记
0 个评论
热门文章
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮