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

ccs编译TM4C微控制器bootloader时,出现警告,烧录bin文件后不能正常运行

警报信息如下:

Description Resource Path Location Type
#10247-D creating output section ".cinit" without a SECTIONS specification tmIoT_boot C/C++ Problem

#10278-D LOAD placement specified for section ".text:decompress:none:rtsv7M4_T_le_v4SPD16_eabi.lib<copy_decompress_none.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY"). tmIoT_boot C/C++ Problem

#10278-D LOAD placement specified for section ".text:decompress:rle24:rtsv7M4_T_le_v4SPD16_eabi.lib<copy_decompress_rle.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY"). tmIoT_boot C/C++ Problem

#10278-D LOAD placement specified for section ".text:rtsv7M4_T_le_v4SPD16_eabi.lib<copy_decompress_rle.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY"). tmIoT_boot C/C++ Problem

#10278-D LOAD placement specified for section ".text:rtsv7M4_T_le_v4SPD16_eabi.lib<memcpy_t2.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY"). tmIoT_boot C/C++ Problem

#10278-D LOAD placement specified for section ".text:rtsv7M4_T_le_v4SPD16_eabi.lib<memset_t2.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY"). tmIoT_boot C/C++ Problem

Susan Yang:

请问您现在使用的程序以及您产品的具体型号是什么?若是使用官方例程的话,请您给出名称或者路径?

在E2E上有一些类似的讨论,您可以先参考一下

e2e.ti.com/…/355168

user4550157:

回复 Susan Yang:

您好,感谢您的回复。我使用的是TM4C1294KCPDT,官方例程是TivaWare_C_Series-2.1.4.178\examples\boards\ek-tm4c1294xl\boot_emac_flash。我直接编译官方例程是正常的,可以使用。但是我重新创建CCS工程,源码跟例程一样,编译后就会出现以上警报,不能正常运行。希望您能给我帮助,谢谢。

Susan Yang:

回复 user4550157:

"但是我重新创建CCS工程,源码跟例程一样"

是您直接拷贝了工程还是新建工程后拷贝了源码?

那您使用的cmd文件是和例程中一致的吗?

When doing an EMAC based boot loader the first thing to note is that you must have a DHCP server for IP address allocation. Then the LMFlashProgrammer can use the IP address and MAC ID to download a program.

user4550157:

回复 Susan Yang:

我是创建工程后,将源码添加到工程中的,cmd文件和例程是一致的。cmd文件如下:
/******************************************************************************** bl_link_ccs.cmd – CCS linker configuration file for boot loader.** Copyright (c) 2009-2017 Texas Instruments Incorporated.All rights reserved.* Software License Agreement* * Texas Instruments (TI) is supplying this software for use solely and* exclusively on TI's microcontroller products. The software is owned by* TI and/or its suppliers, and is protected under applicable copyright* laws. You may not combine this software with "viral" open-source* software in order to form a larger program.* * THIS SOFTWARE IS PROVIDED "AS IS" AND WITH ALL FAULTS.* NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT* NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR* A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. TI SHALL NOT, UNDER ANY* CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL* DAMAGES, FOR ANY REASON WHATSOEVER.* * This is part of revision 2.1.4.178 of the Tiva Firmware Development Package.******************************************************************************/

–retain=Vectors

/* The following command line options are set as part of the CCS project.*/
/* If you are building using the command line, or for some reason want to*/
/* define them here, you can uncomment and modify these lines as needed.*/
/* If you are using CCS for building, it is probably better to make any such */
/* modifications in your CCS project and leave this file alone.*/
/**/
/* –heap_size=0*/
/* –stack_size=256*/
/* –library=rtsv7M3_T_le_eabi.lib*/

/* System memory map */

MEMORY
{FLASH (RX) : origin = 0x00000000, length = 0x00010000SRAM (RWX) : origin = 0x20000000, length = 0x00010000
}

/* Section allocation in memory */

SECTIONS
{GROUP{.intvecs.text.const.data} load = FLASH, run = 0x20000000, LOAD_START(init_load), RUN_START(init_run), SIZE(init_size)
GROUP{.bss.stack} run = SRAM, RUN_START(bss_run), RUN_END(bss_end), SIZE(bss_size), RUN_END(__STACK_TOP)

}
这个平台可以上传附件吗?我可以上传我的工程,或者通过其他方式将我的工程发给您。

Susan Yang:

回复 user4550157:

可以上传工程的。您可以使用右下角的“使用高级编辑器编辑文本” 以附件形式发送给我 或者 点击我的头像私信给我

user4550157:

回复 Susan Yang:

tmIoT_Bootloader.rar

user4550157:

回复 Susan Yang:

修改以后,可以正常运行了,感谢您的帮助。
平时创建工程都是按默认配置,对此配置不太了解,造成困扰。

Susan Yang:

回复 user4550157:

很高兴能帮到您!

赞(0)
未经允许不得转载:TI中文支持网 » ccs编译TM4C微控制器bootloader时,出现警告,烧录bin文件后不能正常运行
分享到: 更多 (0)