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.

[参考译文] 编译器/MSP430F6779A:获取警告:"警告#10325-D:创建存储器范围$BOUND0x4d0以容纳绑定段".TI.bound。MPY32"

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/920486/compiler-msp430f6779a-getting-warning-warning-10325-d-creating-memory-range-bound0x4d0-to-accomodate-bound-section-ti-bound-mpy32

器件型号:MSP430F6779A
主题中讨论的其他器件: MSPMATHLIB

工具/软件:TI C/C++编译器

我接受了以下构建上的默认链接器命令文件、并收到这些警告。  这是什么意思?  我应该怎么做才能消除这些警告?

构建目标:"emeter.out"
调用:MSP430链接器
"c:/ti/ccs1000/ccs/tools/compiler/ti-cgt-msp430_20.2.0.LTS/bin/cl430 -vmspx --code_model=large --data_model=restricted --near_data=globals --opt_for_speed=0 --use_hw_mpy=F5 --advice:pow="all"--define=_TI_Compiler_version --define=_msp430_errati_bati_mem=-super-dag=vertise-si-display=-m=u40=u40=supervisor_codest-m=u.cp_zh-codest-codest-codest-m=-m=-codest-m=u40=uatile_display_isor_isor=-cn=-cn=u40=uatile_display-cn=uatile_display-cn=u40=sym=vatilicon_guest-sym=-sym=-cn_off-m=v-codest-m=-m=dicon_off-codec cinit_hold_wdt=on -i"C:/ti/ccs1000/ccs/ccs_base/msp430/include -i"C:/ti/ccs1000/ccs/tools/compiler/ti-cgt-msp430_20.2.0.LTS/lib -i"C:/ti/ccs1000/ccs/tools/compiler/ti-cgt-msp430_20.2.0.LTS/include -i"C:/ti/ccs1000/ccs/ccs_base/msp430/lib/5xx_6xx_FRxx --reread_libs -diag_wrap=off -display_error_number -issue_remarks -verbose_diagnostics ---warn_sections -xml_link_info="emmpy-f5 -link_info-emmpy-xml_us_ine.xml-link_us_info-emmpy-ine_remote_remote_remote_remote_remote_ rom_model -o "emeter.out""./BSLUpdate.obj ""./c_FIFO.obj ""./Debug.obj ""./Modem_identife.ob""./otemeter "./emeter ".obj ./emeter "./emetc.obj "./emeter "./emetc.obj ./emet./emeter "./emetc.obj ./emet./emeter "./emetc.obj .obj ./emet./emet./emeter "./emeter "./emobj ./emobj ./emet./emet./emet./emet./emeter "./emeter "./emobj .obj /Users/kleit/Documents/ConnetDER_Eng/V4_Repos/V3-emeter-toolkit/emeter-toolkit/Debug/emeter-toolkit.lib

警告#10325-D:创建存储器范围$Bound $0x4d0以容纳 Bound 段".TI.bound:MPY32"
警告#10325-D:创建存储器范围$Bound $0x4d4以容纳 Bound 段".TI.bound:MPYS32"
警告#10325-D:创建存储器范围$Bound $0x4e0以容纳 Bound 段".TI.bound:OP2_32X"
警告#10325-D:创建存储器范围$Bound $0x4e4以容纳 Bound 段".TI.bound:RESVARS"
备注#10205-D:自动 RTS 选择: 在"rts430x_lc_rd_eabi.lib"中链接以代替索引库"libc.a"
备注#10205-D:链接"MSPMATHLIB_CCS_MSP430_5xx_6xx_FRxx_LARGE_CODE_RESTRICLE_DATA.lib"以代替索引库"libmath.a"
备注#10209-D:自动 RTS 选择: 在索引库"libc.a"中链接
备注#10372-D:(ULP 4.1)在此项目中检测到未初始化的端口 F。 建议初始化所有未使用的端口、以消除未使用引脚上浪费的电流消耗。
完成的构建目标:"emeter.out"
 

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

    它显示代码与 MPY32的存储器发生了一些错误。 从备注中可以看出、使用数学函数时、您似乎做了一些错误。  

    您希望使用此器件执行什么操作?

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

    请阅读文章 链接器命令文件入门的第一部分、并清楚了解术语 存储器范围。

    此诊断显示...

    [引用 user="Kip Leitner"]警告#10325-D:创建存储器范围$Bound $0x4d0以容纳 Bound 段".TI.bound:MPY32"[/quot]

    (笑声) 代码中的某个位置使用了类似于...的#pragma 位置。

    #pragma LOCATION (MPY32、0x4d0)
    长 MPY32; 

    这会告诉编译器在存储器地址0x4d0处找到变量 MPY32。  链接器希望找到包含此地址的存储器范围。  如果该存储器范围不存在、链接器会自动创建名为$bound 0x4d0的存储器范围、并发出诊断。   

    有两种解决方案需要考虑:一种是添加一个存储器范围、其中包括这些诊断的所有存储器地址。  第二、通过添加选项--diag_suppress=10325禁用诊断

    要了解有关 pragma 的更多信息、请在 TI ARM 编译器手册中搜索 术语 #pragma 位置

    谢谢、此致、

    乔治