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.

XDS510 USB PLUS emulator Code Flashing issue

Other Parts Discussed in Thread: TMS320F28235, CCSTUDIO

------------------------------------------------------------------------------------------------------------------------------------------

*.ccxml file

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0">
   
<configuration XML_version="1.2" id="Spectrum Digital XDS510USB Emulator_0">
        <instance XML_version="1.2" desc="Spectrum Digital XDS510USB Emulator_0" href="connections/SD510USB_Connection.xml" id="Spectrum Digital XDS510USB Emulator_0" xml="SD510USB_Connection.xml" xmlpath="connections"/>
        <connection XML_version="1.2" id="Spectrum Digital XDS510USB Emulator_0">
            <instance XML_version="1.2" href="drivers/sdgoicepickusb_c.xml" id="drivers" xml="sdgoicepickusb_c.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/sdgocs_dapusb.xml" id="drivers" xml="sdgocs_dapusb.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/sdgocortexRusb.xml" id="drivers" xml="sdgocortexRusb.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/sdgo28xusb.xml" id="drivers" xml="sdgo28xusb.xml" xmlpath="drivers"/>
            <property Type="stringfield" Value="10" id="TCK Frequency MHz (Counter mode)"/>
            <property Type="choicelist" Value="0" id="TCK Mode"/>
            <platform XML_version="1.2" id="platform_0">
                
                
             
            <instance XML_version="1.2" desc="TMS570LS20216SZWT_0" href="devices/tms570ls20216szwt.xml" id="TMS570LS20216SZWT_0" xml="tms570ls20216szwt.xml" xmlpath="devices"/>
                <instance XML_version="1.2" desc="TMS320F28235_0" href="devices/f28235.xml" id="TMS320F28235_0" xml="f28235.xml" xmlpath="devices"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_0" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_1" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_2" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_3" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_4" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_5" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_6" isa="BYPASS08"/>
                <cpu HW_revision="1.0" XML_version="1.2" description="Bypass Cpu" deviceSim="false" id="bypass_7" isa="BYPASS08"/>
            <device HW_revision="1" XML_version="1.2" description="" id="TMS320F28235_0" partnum="TMS320F28235" simulation="no">
                    <cpu HW_revision="1.0" XML_version="1.2" description="CPU" deviceSim="false" id="C2800" isa="TMS320C28XX">
                        <property Type="choicelist" Value="1" id="bypass"/>
                    </cpu>
                </device>
            </platform>
        </connection>
    </configuration>
</configurations

---------------------------------------------------------------------------------------------------------------------------------------------------

Java Script to download the *.out file

function OsCodeLoad20216()
{
  /* Import DebugServer enving and Java packages
   */
  importPackage(Packages.com.ti.debug.engine.scripting);
  importPackage(Packages.com.ti.ccstudio.scripting.environment);
  importPackage(Packages.java.lang);

  var BASE_LOCATION="C:/MP_BUILD_081114/";

   var CONFIGRATION_FILE=BASE_LOCATION+"ARM_BT/A5_XDS510.ccxml";

  var PROGRAMNAME="ARM_BT/Debug_SLAT_BUILD/ARM_BT.out";
  var BT_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;

  var PROGRAMNAME="ARM_TL/Debug_SLAT_BUILD/ARM_TL.out";
  var TL_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;

  var PROGRAMNAME="ARM_APP_OS/Debug_SLAT_BUILD/ARM_APP_OS.out";
  var OS_APP_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;


  var PROGRAMNAME="ARM_OS/Debug_SLAT_BUILD/ARM_OS.out";
  var OS_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;

  var PROGRAMNAME="ARM_SS/Debug_SLAT_BUILD/ARM_SS.out";
  var SS_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;

  var PROGRAMNAME="ARM_DSR/Debug_SLAT_BUILD/ARM_DSR.out";
  var DSR_EXECUTABLE=BASE_LOCATION+PROGRAMNAME;


/* Global handles to the debugger */
var env = ScriptingEnvironment.instance();
var server = env.getServer("DebugServer.1");

// Create a log file in the current directory to log script execution
  env.traceBegin( BASE_LOCATION+"Arm20216CodeLoadLog.xml", "DefaultStylesheet.xsl");
  env.traceSetFileLevel(TraceLevel.ALL);
  /* Setting configuration */
  env.traceWrite("Setting configuration: "+CONFIGRATION_FILE);
  print("Setting configuration: "+CONFIGRATION_FILE);
  server.setConfig( CONFIGRATION_FILE );

  var session = server.openSession("*","*");

  /* Connect to target */
  env.traceWrite("Connecting to device...");
  print("Connecting to device...");

  session.target.connect();

  env.traceWrite("Connected.");
  print("Connected.");
 
 
  /* Set flash properties  */

   env.traceWrite("Setting flash options...");
   print("Setting flash options...");

  /* Clock settings */
  session.flash.options.setString("FlashCrystalFreq","16.0");


  session.flash.options.setString("FlashVerifySetting","Verify");

   /* sectors to erase */
   session.flash.options.setString("FlashEraseSelection", "Entire Flash");

   /* flash operations */
   env.traceWrite("Erase flash...");
   print("Erase flash...\n");
 
   session.flash.erase();
 
  
   env.traceWrite("Setting flash options...");
 
   print("Setting flash options...");
   session.flash.options.setString("FlashEraseSelection", "Selected Sectors Only");
   env.traceWrite("Setting flash sectors...");
   print("Setting flash options sectors...");
   session.flash.options.setBoolean("FlashBank0Sector0",false);
   session.flash.options.setBoolean("FlashBank0Sector1",false);
   session.flash.options.setBoolean("FlashBank0Sector2",false);
   session.flash.options.setBoolean("FlashBank0Sector3",false);
   session.flash.options.setBoolean("FlashBank0Sector4",false);
   session.flash.options.setBoolean("FlashBank0Sector5",false);
   session.flash.options.setBoolean("FlashBank0Sector6",false);
   session.flash.options.setBoolean("FlashBank0Sector7",false);
   session.flash.options.setBoolean("FlashBank0Sector8",false);
   session.flash.options.setBoolean("FlashBank0Sector9",false);
   session.flash.options.setBoolean("FlashBank1Sector0",false);
   session.flash.options.setBoolean("FlashBank1Sector1",false);
   session.flash.options.setBoolean("FlashBank1Sector2",false);
   session.flash.options.setBoolean("FlashBank1Sector3",false);
   session.flash.options.setBoolean("FlashBank2Sector0",false);
   session.flash.options.setBoolean("FlashBank2Sector1",false);
   session.flash.options.setBoolean("FlashBank2Sector2",false);
   session.flash.options.setBoolean("FlashBank2Sector3",false);
   session.flash.options.setBoolean("FlashBank3Sector0",false);
   session.flash.options.setBoolean("FlashBank3Sector1",false);
   session.flash.options.setBoolean("FlashBank3Sector2",false);
   session.flash.options.setBoolean("FlashBank3Sector3",false);


   env.traceWrite("Setting auto run options...");
   print("Setting auto run options...");
   session.options.setBoolean("AutoRunToLabelOnRestart",false)
   session.options.setBoolean("AutoRunToLabelOnReset",false)

  try{
    /* Load the Program */
    print("");
    env.traceWrite("Load Programs...");
    print("Loading.Programs...");

    env.traceWrite("Load Program: "+BT_EXECUTABLE);
    print("Load Program: "+BT_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(BT_EXECUTABLE);

    env.traceWrite("Load Program: "+TL_EXECUTABLE);
    print("Load Program: "+TL_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(TL_EXECUTABLE);

    env.traceWrite("Load Program: "+SS_EXECUTABLE);
    print("Load Program: "+SS_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(SS_EXECUTABLE);

    env.traceWrite("Load Program: "+DSR_EXECUTABLE);
    print("Load Program: "+DSR_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(DSR_EXECUTABLE);

    env.traceWrite("Load Program: "+OS_EXECUTABLE);
    print("Load Program: "+OS_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(OS_EXECUTABLE);

    env.traceWrite("Load Program: "+OS_APP_EXECUTABLE);
    print("Load Program: "+OS_APP_EXECUTABLE);
    env.traceWrite("Loading...");
    print("Loading...");
    session.memory.loadProgram(OS_APP_EXECUTABLE);

    print("");
    env.traceWrite("Load Symbols...");
    print("Loading.Symbols...");
    env.traceWrite("Load Symbols: "+OS_APP_EXECUTABLE);
    print("Load Symbols: "+OS_APP_EXECUTABLE);
    session.symbol.add(OS_APP_EXECUTABLE);

    env.traceWrite("Load Symbols: "+OS_EXECUTABLE);
    print("Load Symbols: "+OS_EXECUTABLE);
    session.symbol.add(OS_EXECUTABLE);

    env.traceWrite("Load Symbols: "+DSR_EXECUTABLE);
    print("Load Symbols: "+DSR_EXECUTABLE);
    session.symbol.add(DSR_EXECUTABLE);

    env.traceWrite("Load Symbols: "+SS_EXECUTABLE);
    print("Load Symbols: "+SS_EXECUTABLE);
    session.symbol.add(SS_EXECUTABLE);

    env.traceWrite("Load Symbols: "+TL_EXECUTABLE);
    print("Load Symbols: "+TL_EXECUTABLE);
    session.symbol.add(TL_EXECUTABLE);

    env.traceWrite("Load Symbols: "+BT_EXECUTABLE);
    print("Load Symbols: "+BT_EXECUTABLE);
    session.symbol.add(BT_EXECUTABLE);

    env.traceWrite("Program & Symbols Loaded.");
    print("Program & Symbols Loaded.");

    /* Get Flash Checksum */
    //session.flash.calculateChecksum();
  }
  catch(err)
  {
    env.traceWrite("Error in 20216 Load / Flash Programming.");
  }
}
hotmenu.addJSFunction("OsCodeLoad20216","OsCodeLoad20216()");

/* End session, since the tests are done */
//server.stop();
//session.terminate();

---------------------------------------------------------------------------------------------------------------------------------------------------

Emulator: XDS510 PLUS

Code Composer Studio: Ver 5.4.0

Target Processor: TMS570LS20216SZWT

Attached the error snap shot, target configuration and Java script file for the reference.2744.Error.zip 

Hi,

Getting the below error message when I am trying to download the software into the customized target board, can some one please let me know the error cause.

IcePick: Power Failure on Target CPU

IcePick: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging

CortexR4: Power Failure on Target CPU

CortexR4: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging.                                                                                                                                                                                      

Thanks