Gentlemen,
Using a TM4C123x, developing in CCS 6.1. I have a piece of code that passes a (big) struct to a function, by value. This is a debugging step right before the function is called.
This had been working for some time. Since a recent recompilation, the value arrives inside the function corrupted.
These are the first lines of the function, and there's also a global declaration of hwssi to be used later on...
static as5047_hardware_t hwssi;
void AS5047PInitSPI(as5047_hardware_t hw)
{
// as5047_hardware_t hwssi;
hwssi = hw; // Makes a copy of the application ssi struct into the static ssi struct
if (hwssi.PowerPin)
{
AS5047PowerOn();
}
MAP_SysCtlPeripheralDisable(hwssi.SSIPeriph);
It's a new situation for me. I can solve it by passing the struct by reference, but I'd like to figure out what is going on here... Is there a size limit to pass a struct by value? Any suggestions as where to look?
Regards,

