This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请教【5509A】程序调试



问题较长,谢谢大家

Q1(CCS6.0版本下调试):

之前玩28335的,现在刚上手5509a,但是在调试程序的时候会提示如图的错误,修改多次后还是没有得到解决。

我觉得是我包含的路径有问题,我包含的路径如下图:

我觉得如果是包含路径出错的话,应该是第一个。第二个是软件自动链接的,第三个是CSL库的所有头文件,第一个

我不太理解,只是根据软件的警告及时加进去的,然后就出现了如图1的错误。

Q2(CCS4.2版本调试):

每次load之后为什么还要手动的添加source file ?

Q3(CCS4.2版本调试):

    

之前28335在调试的时候可以单步执行,可以F3跳转到相应的函数内部,但是现在5509这里就不可以,为什么?

先谢谢各位了。

  • 这些问题跟是用C2000还是C5509A没有关系,这是关于CCS环境使用的问题。

    #1. 信息显示的那个目录下的.out文件存在吗?文件属性是什么?把workspace放在administrator之类的其它目录下试试,看是不是权限的问题。

    #2. 怎么又从CCS6加到CCS4了?这里应该是编译选项里的debugging model没有使能符号调试。

    #3. 应该是跟#2相关的。

  • 您好,谢谢您的回答。

    我之前的问题解决了,现在可以在6.0上运行之前的程序了,是因为实际工程中添加的库文件和工程include选项中的库不是同一个,所以这里就报错了。

    现在有一个新的问题,如下图:

    库文件都是选择的x.lib就是大存储模式,但是系统还是报错。

    下图是改为小存储模式的.lib,但是又出现别的错误。

  • 第一个图中的CSL路径是你自己把CSL安装在这里的吧,在我的CCS这个目录下没看到CSL库,总之,编译器识别出来这个库的模式不对。

    第二个图中信息大概是link时有些函数没找到,应该还是库没有找到的原因,要把提供象第一个图中的信息会更清楚一些。

  • 你好,首先谢谢你的回复。

    我之前的程序里面,库的搭配要么是CSL5509.LIB&RTS55.LIB,要么就是CSL5509x.LIB&RTS55x.LIB的搭配使用,但是我将库改成CSL5509a.LIB&RTS55.LIB的时候之前的错误就没有了,所以有以下问题

    Q1:这几个库有什么区别么?

    我的理解:(1)CSL5509.LIB是5509的小存储模式的,CSL5509x.LIB是5509的大存储模式,CSL5509a.LIB是5509A的小存储模式,CSL5509ax.LIB是5509A的大存储模式。(2)在使用的方面模式一定要匹配,即大的一定和大的,小的和小的。

    Q2:鉴于之前程序的调试,我使用的是5509.lib,但是在今天改为5509a.lib程序通过了,这两个库文件有什么区别么?

    Q3:这是程序通过之后的File Search Path的页面,我把Add选项框里的其他的库的链接路径都删除了,这里如果有多余的链接路径软件会不会报错?

    Q4:在编译通过之后,我尝试load程序,但是程序提示data verification failed at address .....的错误(这个忘记截图了),我在网上看了,有人说这是仿真器或CCS的毛病。我重新插拔了几次,就可以load了,请问你有什么专业的回答么?

    问题挺多的,谢谢看完我的帖子。

  • Q1. 你的理解是对的。我也是这么理解的。

    Q2. 从头文件里看不出有区别,源代码里有没有加相应的宏开关区分C5509和C5509A没有进一步比较。

    Q3. 建议RTS库用automatic选项,不用手动指定。多加的库一般不会有问题,因为库不参与编译,只参与链接(link),当源码里调用的函数找不到时才会从库里找,如果是多出来的库,无非是在里面找不到需要的函数,不会产生什么问题。

    Q4。 如果是自己做的板子,我更倾向于硬件电路可能有点问题,这个错误提示是这个内存地址写进去与读出来对比不对(CCS下载程序到内存上有回读校验的过程)如果是片上内存不可写,一般来说是芯片状态不对,建议检查芯片的上电复位时序是否符合要求。(复位信号在上电过程中要保持为低电平)

    对于上面的编译问题,建议看一下建工程选的CPU是C5509还是C5509A,还有C5500 Compiler->Processor Option里的-mv选项是C5509A还是C5509,还有predefined symbol里定义是的啥?看是不是这些设置不匹配的问题。

  • 通过这俩天程序的调试对CCS环境估计是每一个选项都有仔细的查看,加深了对之前没有注意的地方的理解,可以有针对性的解决一些问题,学习了不少,算是一种进步吧。

    谢谢你的回复。