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.

TMS570LS1114: Bootloader can not work well?The way to verify write successfully?

Part Number: TMS570LS1114


Dear Experts:

      I am working on TMS570LS11x && TMS570LS12x Bootloader .Now I make sure the PC Side Code work well and I transplant the code in my own Hyper Terminal which is designed based on VS2010. I still have some questions to verify my Bootloader function.

         My device is TMS570LS1114 for example and the hardware platform is my own board which designed by ourselves.

Now I have correctly generated a file whose form is  Prj_DCAN_Test.bin. But why I find My PC cast lots of time more than 60 secends to load data? I find the Image(APP bin file) only 29K.

         In fact, My program is still stop in the same position.


Can I add a breakpoint after the next instruction to verify my bootloader receiving the data?

         Now I will display the main modify section to you,Please give me some advice to solve the interface problem.

The Code is

#1  bl_config.h

#define  CAN_BIT  500000   /*can be 125K, 250K, 500K, 750K, 1000K. The default is 125K*/

#define  SYS_CLK_FREQ           160            //MHz

#2  flash_defines.h

#define TMS570LS11

#3  bl_dcan.c


g_ulForced =1 ;

Due to my hardware platform which is lack of a test pin PORTA 7 ,So I  forcedly

Updaata by change the flag valve.

 

After operate the above steps.I see the Memory Broser 0x00010000 ,and I find no data?

Whether I invalidly operate ?

Best and Regards

Qiuchi

 

 

  • Hello Qiuchi,

    Your PC side code doesn't transmit CAN message package properly.
    1. Open you binary file, read the file to a buffer
    2. Configure the CAN interface with your USB-CAN adapter, and open the CAN network interface object (RX and TX). Make sure this initialization is successful (the APIs should return status)
    3. Send a CAN message to ping MCU: The mesasge ID is CAN_COMMAND_PING. If ping fails, the CAN interface is not configured correctly.

    How many CAN channels and CAN transceivers are on your PCB board? If you have 2 CAN transceivers on your board, you can use those 2 CANs to test your code.
  • Dear  QJ  Wang:

    #1   I make sure the first point no problem.

    The following is the Prj_DCAN_TEST.bin file

    The Buffer valve as the follow:

    #2   My Hyper Terminal can reicieve data in other app,should I add the code to test in bootloader APP to test?

    In fact ,Your sample code I only  modify I post .So if still problems in the  bootloader code or PC Side Code?

    Now,I will test the interface problem fixed on Hyper Trminal.And I still have confused to send a message ID is CAN_COMMAND_PING.Because I transplant the code a key load.

  • Dear QJ Wang

    I add two breakpoint to test

    The first breakpoint, dwRel=0xffffffff;The second  breakpoint,dwRel=0x00000018

  • Hello,

    What is the return value of Transmit(..) and Receive(..) if the the message is transmitted or received successfully? I think the value (0xFFFFFFFF, and OX018) you got is not correct.
  • Yes,I find a Bug .Transmit (...)and Receive (...) use the same buffer,Now I try to modify
  • Dear QJ Wang
    There are several varable I think it is not correct. rcvID, rcvData.Transmit (...)and Receive (...) may still have problem.
    I still debug.
    Thank your advice.
    Qiuchi