ERROR: floating constant is out of range
11 views (last 30 days)
Show older comments
I have created a algorithm in Simulink. I tried to implement this model to TI TMS320F28379D LAUNCHXL board embedded target. When I try to build the model, I receive the following error messages.
This is one of the code segments that caused error
1 Comment
Walter Roberson
on 29 Oct 2022
Edited: Walter Roberson
on 29 Oct 2022
I wonder where that constant comes from; too bad it isn't documented. It happens to be 0x1cc0000000000000 but that does not tell me anything about what it represents.
Ah... with further checking I see that it is
format long g
eps(sqrt(realmin))
and that suggests its replacement value should be
eps(sqrt(realmin('single')))
Accepted Answer
Mike Hosea
on 7 May 2019
That number is well within the range of IEEE double precision floating point numbers, but the TI TMS320F28379D has native 32bit IEEE single precision floating point. I'm not sure what the C compiler for it does with double precision data, but based on what you have shown, it doesn't seem to support IEEE double precision floating point, even in emulation. Try using single precision.
3 Comments
Dajr Alfred
on 15 May 2023
The easiest way to accomplish this with simulink is to use the Single Point Converter in the Apps tab
More Answers (0)
See Also
Categories
Find more on Simulink Coder in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!