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.
工具/软件:Code Composer Studio
我正在尝试使用 hl_sys_link.cmd 文件中的 code composer 在映射的文本部分上计算 TMS570类处理器的64位 CRC。 在线示例或教程均不起作用。 我收到以下警告:
对于".text"忽略#10199-D CRC table 运算符(_code_crc_table): CRC table 运算符不能与空输出段相关联
当我在 CRC 语句的文本字段中添加对象时、它会创建 CRC 表结构、但指示向量将不再适合存储器。
以下是 cmd 文件:
/*------------------ *
/* sys_link.cmd */
/**//
/*
*版权所有(C) 2009-2014 Texas Instruments Incorporated - http://www.ti.com/
*
*
*以源代码和二进制形式重新分发和使用、有无
*如果满足以下条件、则允许进行修改
符合*:
*
*源代码的重新分发必须保留上述版权
*注意、此条件列表和以下免责声明。
*
*二进制形式的再发行必须复制上述版权
*请注意、中的此条件列表和以下免责声明
*随提供的文档和/或其他材料
*分发。
*
*德州仪器公司的名称和名称均不相同
*其贡献者可用于认可或推广衍生产品
*未经特定的事先书面许可。
*
*本软件由版权所有者和贡献者提供
*"按原样"以及任何明示或暗示的保证、包括但不包括
*仅限于对适销性和适用性的暗示保证
*一项特定目的不予承认。 在任何情况下、版权均不得
*所有者或贡献者应对任何直接、间接、偶然或
*特殊、惩戒性或后果性损害(包括但不包括)
*仅限于采购替代货物或服务;丧失使用、
*数据或利润;或业务中断)
*责任理论、无论是合同责任、严格责任还是侵权行为
*(包括疏忽或其他)因使用而以任何方式产生
*、即使被告知可能会发生此类损坏。
*
*
/**//
/*------------------ *
/*用户代码开始(0)*/
/*用户代码结束*/
/*------------------ *
/*链接器设置*/
--retain="*(.intvecs)"
/*用户代码开始(1)*/
/*用户代码结束*/
/*------------------ *
/*内存映射*/
存储器
{
/*用户代码开始(2)*/
/*用户代码结束*/
引导程序(X):origin=0x00000000 length=0x00000020
FLASH0 (RX):origin=0x00000020 length=0x001FFFE0
FLASH1 (RX):origin=0x00200000 length=0x00200000
堆栈(RW):origin=0x08000000 length=0x00001500
RAM (RW):origin=0x08001500 length=0x0007EB00
/*用户代码开始(3)*/
/*用户代码结束*/
}
/*用户代码开始(4)*/
/*用户代码结束*/
/*------------------ *
/*段配置*/
部分
{
/*用户代码开始(5)*/
/*用户代码结束*/
.intvecs:{}>向量
.text:run_start( text_SEG_start )、run_size( text_SEG_size ) align (8){}> FLASH0| FLASH1
const:run_start (const_SEG_START)、run_size (const_SEG_size) align (8){}> FLASH0 | FLASH1
.text:{}palign =64、fill=0xffffffff、crc_table (_code_crc_table、算法=TMS570_CRC64_ISO)
.cinit align (8):{}> FLASH0| FLASH1
.pinit align (8):{}> FLASH0| FLASH1
.bss:{}> RAM
.data :{}> RAM
.sysmem:{}>RAM
.TI.crctab:{} palign =8.
/*用户代码开始(6)*/
log_data:start( ulLOGStartAddr ),end( ulLOGEndAddr )> RAM
sl_stflash_SRAM:run = RAM、load = FLASH0|FLASH1、load_start (ulHighHandlerLoadStart)、load_end (ulHighHandlerLoadEnd)、load_size (ulHighHandlerSize)、 run_start( ulHighHandlerStartAddr )、run_end( ulHighHandlerEndAddr )
/*用户代码结束*/
}
/*用户代码开始(7)*/
/*用户代码结束*/
/*------------------ *
/*其他*/
/*用户代码开始(8)*/
/*用户代码结束*/
/*------------------ *
这是我阅读的第一份文档。 它不起作用或不完整。 当使用此应用手册中详述的链接器语句时、链接器会抛出警告、指出段为空且不会创建 CRC 表结构。 但是、通过在语句的{}区域中添加目标模块列表、可以创建表、但链接器现在会抛出错误、指出由于缺少可用存储器、无法加载向量段。 看起来好像链接器认为我正在重新指定目标模块一样。
有人真的这么做了吗? 我认为此功能不起作用。