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.

[参考译文] CCS/MSP-EXP430F5529LP:内部错误:编译由两个文件组成的新项目时出现分解错误

Guru**** 2039090 points
Other Parts Discussed in Thread: MSP430F5529
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/601610/ccs-msp-exp430f5529lp-internal-error-decomposition-error-when-compiling-a-new-project-made-up-of-two-files

部件号:MSP-EXP430F5529LP
主题中讨论的其他部件:MSP430F5529,MSPWARE

工具/软件:Code Composer Studio

出现此错误。 奇怪的是,我在其他项目中编译了相同的文件,并且它工作正常。 我从头开始创建了一个新项目,只包含有问题的文件,并且能够复制错误。

CCS版本:6.1 .1.0.0022万

重现步骤:

1.利用main.c创建新的MSP430F5529项目

2.在项目层次结构中,创建名为“Common”的新目录

3.将我的自定义printf.c和printf.h复制到文件系统中的此目录中

4.尝试构建。 失败,并显示以下错误。

附加了包含CCS项目的zip文件。

e2e.ti.com/.../8877.BTBP.zip


****构建配置调试项目BTBP ****

"C:\\ti\\ccsv6\\utils\\bin\\gmake "-k all
'生成文件:../Common/printf.c'
'调用:MSP430编译器'
c:/ti/ccsv6/tools/compiler/ti-CGT-MSP430_MSP.5/bin/cl430" 4.4 -vmspx --abi=eabi --data_model=restricted --use_hw_printbp=f5 --include_path="C:/ccsp_base_base/include"--include_git_cp_prob_predept_c=-cp_contratinsp_contex-contex-contex_contex-contex-contex_sp_cep_cep_cep_contex-f-contexp_cep_contex-f-contexp_contex-f-contexp_cep_cep_cep_cep_contex-f-ref="-ref="-contexp_cep_contexp_cep_contexp_cep_cep_cep_contex-ref="-ref="-ref="-contexbp_cep_cep_cep_cep_contex-ref="-contexp_cep_contex-"> 4.4
>>../Common/printf.c,第126行:内部错误:分解错误

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我可以使用该版本的MSP430编译器重现该错误。 我检查过,该问题在几个较新版本的编译器工具中已得到解决,因此您有几个选项。  

    如果希望继续使用CCS 6.1 .1,可以更新到4.4 .x流上的最新编译器,即4.4 .8。 要获取此版本,请转至菜单帮助->检查更新。 在列表中,只选择MSP430编译器4.4 v.8并安装它。 然后进入“项目属性”,为“编译器版本”选择“4.4 Tm8”并重新生成。

    如果您愿意更新您的整个CCS (我建议您更新,除非您有令人信服的理由继续使用6.1。1),您可以从此 页面获得最新版本(7.2 刚刚发布)。 这与更新版本的编译器工具一起提供,也不会显示此错误。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢,我下载并安装了CCS v.7.2 ,并且意识到我一直坚持使用以前的printf()方法,从我们使用新的MSP430s开始。 所以我也花了一些时间来研究如何使内置printf()工作。 这比在IAR中所做的工作要多,但现在它是有效的。 我建议在所有新处理器中包括Hello World示例(带UART输出),或者至少为每个LaunchPad创建一个。

    顺便提一下,此页面需要更新。 MSP430编译器:高级选项:语言选项中现在提供了printf/scanf支持选项。
    processors.wiki.ti.com/.../Printf_support_for_MSP430_CCSTUDIO_compiler

    最后,在CCS7中,“新建项目:Hello World”选项实际上并不是一个有用的Hello World示例。 我使用的是MSP430F5529 Launchpad。 使用此向导时,我希望Hello World可以正常工作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [报价用户="Derek9531"]\n顺便说一下,此页面需要更新。 MSP430编译器:高级选项:语言选项中现在提供了printf/scanf支持选项。
    processors.wiki.ti.com/.../Printf_support_for_MSP430_CCSTUDIO_compiler

    感谢您的反馈。 该页面是为CCSv5编写的,该页面上的所有屏幕截图都与该版本相关。 我已用CCSv7中的printf选项设置的屏幕截图更新了它。

    [quote user="Derek9531">最后,在CCS7中,“新项目:Hello World”选项实际上并不是有用的Hello World示例。 我使用 的是MSP430F5529 Launchpad。 使用此向导时,我希望Hello World可以正常工作。[/QUOT]

    Hello World示例与MSP430F5529 Launchpad配合使用,因为它将Hello World打印到CCS调试控制台,而不是通过UART。 UART输出的示例(如果有)通常来自MSPWare软件包。