Hi,
I'm using the ti-cgt-arm Toolchain, currently 18.12.6, but I checked also latest Version 20 and 16.
The code below causes a FaultISR, at the assignment: tPointer->fWert=1.0;
I think, this is something with the alignment (see the +1 at the auPool), as if I use e.g.+4 there's no problem.
typedef struct SEreignisdaten
{
int16_t iDaten;
uint8_t eDatenTyp;
float fWert;
uint8_t eBedienung;
} tEreignisdaten;
int main(void)
{
uint8_t auPool[100];
tEreignisdaten *tPointer=(tEreignisdaten *)((uint8_t*)&auPool+1);
tPointer->fWert=1.0;
...
}
I've found a workaround, but I wonder if this is somehting to be fixed in the future or if there is a compilerflag or something.
Thanks for your comments
Regards
Micky