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 / TMDX570LC43HDK: Hercules Safety MCU Demos GUI command

Part Number: TMDX570LC43HDK
Other Parts Discussed in Thread: HALCOGEN

Tool/software: Code Composer Studio

Hello, I would like to ask why Hercules with GUI interface control can run, and in the program directly to do what Task does not work.
Would like to ask when the PBIST and LBIST press the GUI will send what instructions to the EVM.

=================
Hello, I recently looked at Ti's Hercules Safety MCU Demos and studied how to use stc.c code.
So I used CCS to catch the project (C: \ ti \ Hercules \ Hercules Safety MCU Demos \ TMS570LS3x_target_sources)
The Project can work properly, but because it is not clear what GUI interface IO, but I judge him in the sys_main.c control Task_Number to SubTask_Number, because the contents of the case just inside the GUI corresponding to each icon.
 

So I directly in the Project Task_Number initial value into 3, so that the program began to implement pbist_test (), but the program will be a while loop, and jump from the loop condition is pbist test is completed.
If Task_Number is set to 4, let him execute stc_test (), EVM will always restart

 

In the CCS tool every time I press F8, I did not set BreakPoint, do stay in the same code, Debug content display error read a fixed location.
I went to run the execution of the Hercules Safety MCU Demos because the TMS570LS3x_demo_software.out had changed and he would ask for rewriting.
And if I reply Task_Number to 0, re-Debug, Hercules Safety MCU Demos will be able to run directly.


 
I do not understand where the difference? Why can use the GUI interface control can run, and I directly in the program which is not required Task Task.
Whether to provide this GUI interface program? Press PBIST and LBIST in the end to send what to the EVM.

Thank you all !!

  • Hello Andy:

    Andy Cheng55 said:
    So I directly in the Project Task_Number initial value into 3, so that the program began to implement pbist_test (), but the program will be a while loop, and jump from the loop condition is pbist test is completed.

    The line prior to the while loop is setting the register to enable PBIST operation/execution. The while loop is waiting for the flag to be set to indicate that it is completed. The if-else following the completion polling loop is checking the results/status to indicate pass fail return value. Note that PBIST is a destructive test to any content in RAM will be lost.

    Andy Cheng55 said:

    If Task_Number is set to 4, let him execute stc_test (), EVM will always restart

    The STC executes the LBIST code on the CPU. It is a destructive test as well and the CPU cannot do anything else during the period of LBIST execution. During the course of the execution of the self test, the CPU will reset for each of the test intervals and code is included to check the CPU reset status (note not a device reset) and jump to the continuation point if the STC is not completed yet.

    Andy Cheng55 said:
    In the CCS tool every time I press F8, I did not set BreakPoint, do stay in the same code, Debug content display error read a fixed location.
    I went to run the execution of the Hercules Safety MCU Demos because the TMS570LS3x_demo_software.out had changed and he would ask for rewriting.
    And if I reply Task_Number to 0, re-Debug, Hercules Safety MCU Demos will be able to run directly.

    Your question here is not clear to me. Note that there is a known issue that out of the box or on connect, the PC application will note that the demo code is not programmed into the device. I am not certain why this is so, but to eleviate this, use the reprogram option to reprogram the included default .OUT file for the demo into the device. It should then run without issue with the PC.

    Andy Cheng55 said:
    I do not understand where the difference? Why can use the GUI interface control can run, and I directly in the program which is not required Task Task.
    Whether to provide this GUI interface program? Press PBIST and LBIST in the end to send what to the EVM.

    The demo code is designed to run with the GUI. it is a simple UART command and response interface to the GUI. If you are manually manipulating information within the code in a debug session, you might be missing some information being sent to the GUI or handshaking with the GUI. This isn't clear to me without more investigation. The PBIST and STC execution from the GUI returns a pass/fail to the GUI as do most other tests.

    Also, please note that the code that is used for this demo is just intended for demonstration purposes and is by no means reflective of real, recommended application code methodologies. For more production ready code, please see the latest versions of HalCoGen and the SafeTI diagnostic library which are developed in accordance with a IEC61508 certified process.

  • Hi Chuck Davenport,

    Thanks for your reply , I will test.

    Thanks and Regards,

    Andy