TI中文支持网
TI专业的中文技术问题搜集分享网站

使用cl2000编译器单独编译独立的c程序文件时遇到问题

一)我们现在有一个需求:使用28335DSP,程序烧写完成后,可在线替换原有DSP程序中的某一块功能,且可多次覆盖擦写,而不修改DSP的其他程序,

                                        不能通过CCS来烧写,不能编译整个DSP程序,仅编译该功能相关的DSP程序,以实现该功能的可替换。

 

      二)针对该需求,我们现在想到的一个方法为:

            1)第一步:该功能C程序以及变量单独放置在某一flash区域,该区域为该功能独用,修改完一个功能C程序后,使用CCS提供的编译器+链接器(cl2000)通过命令行方式来编译该C程序,

                      生成DSP的机器语言.out文件,通过CCS提供的hex转换器(hex2000)来生成.hex文件。

            2)第二步:通过C2Prog工具,先擦写该功能C程序所独对应的flash,后将该hex文件烧写到该片flash区即可。

    

     三)在调试过程中,遇到如下问题:

            1)直接使用命令行:cl2000 -v28 -ml -mt test.c –run_linker –output_file=test.out

                  可以生成.out文件,但会有若干提示,如下图。

                  

            2)调用库文件使用命令行:cl2000 -v28 –float_support=fpu32 -ml -mt test.c –run_linker –search_path=""

                               –library=28335_FLASH_lnk.cmd –output_file=test.out

                编译直接错误,并有如下提示:

         

不知以上是什么原因,有没有别的方法去实现该想法呢?

Jordan Zhou:你这个给我的感觉就是一个bootload外加application。
不明白你为什么做的这么复杂,其实可以通过建立两个project的方式,分别烧入不同的flash来实现。当中通过绝对地址来调用相关的功能。

一)我们现在有一个需求:使用28335DSP,程序烧写完成后,可在线替换原有DSP程序中的某一块功能,且可多次覆盖擦写,而不修改DSP的其他程序,

                                        不能通过CCS来烧写,不能编译整个DSP程序,仅编译该功能相关的DSP程序,以实现该功能的可替换。

 

      二)针对该需求,我们现在想到的一个方法为:

            1)第一步:该功能C程序以及变量单独放置在某一flash区域,该区域为该功能独用,修改完一个功能C程序后,使用CCS提供的编译器+链接器(cl2000)通过命令行方式来编译该C程序,

                      生成DSP的机器语言.out文件,通过CCS提供的hex转换器(hex2000)来生成.hex文件。

            2)第二步:通过C2Prog工具,先擦写该功能C程序所独对应的flash,后将该hex文件烧写到该片flash区即可。

    

     三)在调试过程中,遇到如下问题:

            1)直接使用命令行:cl2000 -v28 -ml -mt test.c –run_linker –output_file=test.out

                  可以生成.out文件,但会有若干提示,如下图。

                  

            2)调用库文件使用命令行:cl2000 -v28 –float_support=fpu32 -ml -mt test.c –run_linker –search_path=""

                               –library=28335_FLASH_lnk.cmd –output_file=test.out

                编译直接错误,并有如下提示:

         

不知以上是什么原因,有没有别的方法去实现该想法呢?

andy sun:

回复 Jordan Zhou:

用两个工程是个好方法,那请问一下如何设置,使得函数地址烧写到固定的flash地址上,而不是修改代码并添加一些其他函数后,重新编译导致整个函数地址变化呢?

赞(0)
未经允许不得转载:TI中文支持网 » 使用cl2000编译器单独编译独立的c程序文件时遇到问题
分享到: 更多 (0)