Part Number: TMS320F28069M
Tool/software: TI C/C++ Compiler
Hello,
My project uses the TI v18.1.2.LTS compiler, TMS320F28069M microcontroller, and IQMathLib. We used an older compiler version until a few months ago. Other than that (and some changes to our codebase), I can't think of any significant changes in the past year. We have made extensive use of IQMathLib with a variety of Q types, mostly IQ12 and IQ24, since the beginning of the project years ago. This all worked fine until today.
The issue I'm seeing is that (according to the "Variables" window), some IQ12 variables are being stored in lower half registers, such as XAR1L. This is causing some of the integer bits to be discarded. In the debugger I can see this happening; a local IQ12 variable that is stored in RAM gets corrupted when it's assigned to another local IQ12 variable, which is allocated to XAR1L.
Any ideas about what to try, or what to take a closer look at?
The code is closed source, so I cannot upload the whole project. However I may be able to upload portions of it after obfuscating the code, if necessary.
Thanks!