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.
Tool/software:
Hello,
I am working with the TIDEP-01032 example from the AM243x Motor Control SDK 09.02.00 and don't understand how the EtherCAT Firmware is loaded onto the PRU-ICSSG.
In the EtherCAT Slave Simple Demo, EC_API_SLV_stackInsertPruFirmware() is called in EC_SLV_APP_SS_loopTask in the file EtherCAT_Slave_Simple.c. I could not find the same call in the TIDEP-01032 reference design code for the R5FSS1-0 core. How does inserting the PRU Firmware work there?
Best regards
Luka
Hi Luka,
I have assigned this thread to the stack expert to comment on the EtherCAT firmware load for CiA402 demo in TIDEP-01032.
Regards,
Aaron
Hello Luka,
The EC_API_SLV_stackInsertPruFirmware() is called for pointing out to the PRU firmware specified in the application to be loaded. This API call does assign the firmware address to corresponding pointer variables in a PRU handling structure which shall be used by the PRU firmware loading API. If in case EC_API_SLV_stackInsertPruFirmware() is not called, then the default PRU firmware that comes with the SDK are loaded onto the PRU-ICSSG. The PRU firmware loading shall take place in EC_API_SLV_stackInit() call.
In the EtherCAT Slave Simple Demo, EC_API_SLV_stackInsertPruFirmware() is called in EC_SLV_APP_SS_loopTask() to provide the flexibility to load the customized PRU firmware onto the PRU-ICSSG.
In the TIDEP-01032 example, the default PRU firmware is loaded onto the PRU-ICSSG in the call to EC_API_SLV_stackInit().
Kind Regards,