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程序优化后,无法查看寄存器的值和变量的值

Other Parts Discussed in Thread: TMS570LS0914

大家好,我们在用ccs编写程序后,利用工具对程序进行优化后,程序有时候不能正常运行,运行之后也无法查看寄存器的值和变量的值,想请教一下大家这是什么原因导致的,有没有什么解决方案

  • user6005420 说:
    利用工具对程序进行优化后,程序有时候不能正常运行,

    请问您是使用的什么工具进行优化? 能否详细说明下?现在使用的是什么芯片呢?

  • ccs中自带的功能,使用的芯片是tms570ls0914

  • 您现在是把优化关掉了?您可以使用

    Optimizer_Assistant

    https://processors.wiki.ti.com/index.php/Optimizer_Assistant

    另外您也可以尝试使用CCS提供的代码剖析工具Profile可以统计显示出程序中各个重要段和函数的运行时间,找出运算量较大的程序段,优化这些程序段,对于提高算法的性能有巨大影响。

  • 优化没有关,我现在遇到的问题是,代码量比较大,不优化的话flash不够用,想要通过优化来钱少代码量,但是优化之后程序无法正常运行

  • 您好,现在我们遇到问题如附件所示,想请教一下您这个问题怎么修改?

  • 这个错误应该是您的cmd文件配置的问题。若是优化等级比较小的话是否可以成功编译?您现在的优化等级是多少?
  • sys.txt
    /*----------------------------------------------------------------------------*/
    /* sys_link.cmd                                                               */
    /*                                                                            */
    /* 
    * Copyright (C) 2009-2016 Texas Instruments Incorporated - www.ti.com  
    * 
    * 
    *  Redistribution and use in source and binary forms, with or without 
    *  modification, are permitted provided that the following conditions 
    *  are met:
    *
    *    Redistributions of source code must retain the above copyright 
    *    notice, this list of conditions and the following disclaimer.
    *
    *    Redistributions in binary form must reproduce the above copyright
    *    notice, this list of conditions and the following disclaimer in the 
    *    documentation and/or other materials provided with the   
    *    distribution.
    *
    *    Neither the name of Texas Instruments Incorporated nor the names of
    *    its contributors may be used to endorse or promote products derived
    *    from this software without specific prior written permission.
    *
    *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
    *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
    *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
    *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
    *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
    *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
    *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
    *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
    *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
    *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
    *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    *
    */
    
    /*                                                                            */
    /*----------------------------------------------------------------------------*/
    /* USER CODE BEGIN (0) */
    /* USER CODE END */
    
    
    /*----------------------------------------------------------------------------*/
    /* Linker Settings                                                            */
    
    --retain="*(.intvecs)"
    
    /* USER CODE BEGIN (1) */
    /* USER CODE END */
    
    /*----------------------------------------------------------------------------*/
    /* Memory Map                                                                 */
    
    MEMORY
    {
        VECTORS (X)  : origin=0x00000000 length=0x00000020
    //    VECTORS (X)  : origin=0x00000000 length=0x000208CC
        FLASH0  (RX) : origin=0x00000020 length=0x000FFFE0
    //    FLASH0  (RX) : origin=0x000208CC length=0x00FFFFE0//test
        STACKS  (RW) : origin=0x08000000 length=0x00002000
        RAM     (RW) : origin=0x08002000 length=0x0001EB00
    	HET0PROG           (RW)  : origin=0xFF460000 length=0x00000800
    
    /* USER CODE BEGIN (2) */
    /* USER CODE END */
    }
    
    /* USER CODE BEGIN (3) */
    /* USER CODE END */
    
    /*----------------------------------------------------------------------------*/
    /* Section Configuration                                                      */
    
    SECTIONS
    {
        .intvecs : {} > VECTORS
        .text    : {} > FLASH0 
        .const   : {} > FLASH0 
        .cinit   : {} > FLASH0 
        .pinit   : {} > FLASH0 
        .bss     :  type = NOINIT {} > RAM
        .data    : {} > RAM
        .sysmem  : {} > RAM
        .HET0PROG     : {e_HETPROGRAM0_UN=.;}       > HET0PROG
    
    /* USER CODE BEGIN (4) */
    /* USER CODE END */
    }
    
    /* USER CODE BEGIN (5) */
    /* USER CODE END */
    
    
    /*----------------------------------------------------------------------------*/
    /* Misc                                                                       */
    
    /* USER CODE BEGIN (6) */
    /* USER CODE END */
    /*----------------------------------------------------------------------------*/
    
    现在我们用的是等级2的优化,下面我会把cmd文件以附件形式发给你

  • 你好,这个链接我们之前就看过了,没什么帮助,你那边能不能帮忙看一下cmd文件,还有没有什么别的解决方案

  • 若是可以的话,您直接整个工程发出来看一下
  • 您好,这个工程不太方便直接发给您,这回死我们公司最近做的的项目,包含了部分公司机密