| Version 5.0.1 (R13+) Real-Time Workshop® Software Release Notes | ![]() |
This table summarizes what's new in V5.0.1 (R13+):
| New Features and Changes | Version Compatibility Considerations | Fixed Bugs and Known Problems | Related Documentation at Web Site |
|---|---|---|---|
| Yes Details below | No | Fixed bugs | No |
New features and changes introduced in this version are
This update adds new options for specifying target characteristics via hook files.
During the Real-Time Workshop build process, the software checks for the existence of target_rtw_info_hook.m, where target is the base file name of the active system target file. For example, if your system target file is grt.tlc, then the hook file name is grt_rtw_info_hook.m. If the hook file is present (that is, is on the MATLAB path), the target specific information is extracted via the API found in this file. Otherwise, the host computer is the assumed target.
Three hook file keyword options have been added since V5.0 (R13):
TypeEmulationWarnSuppressLevel
Suppresses warnings about emulation of word sizes. The default value is 0, which gives full warnings. This is the preferred setting when generating code for the production target. Increasing the value gives less warnings. When generating code for a rapid prototyping system, emulation may not be a concern and a suppression level of 2 may be desirable.
PreprocMaxBitsSint:
Specifies limitations of the target C preprocessor to do math with signed integers. Use this option to prevent errors in the preprocessor phase.
As an example, suppose the target had 64-bit longs. Porting the generated code to a machine that does not have 64-bit longs can lead to errors in the processing of integer data types. To prevent these errors, a check is included in the generated code.
#if ( LONG_MAX != (0x7FFFFFFFFFFFFFFFL) ) #error Code was generated for compiler with different sized longs. #endif
This code requires the preprocessor to compare signed 64-bit integers. Some preprocessors have bugs that cause such comparisons to yield incorrect results. The preprocessor math may only be fully correct for say 32-bit signed integers. To specify, this PreprocMaxBitsSint would be set to 32. Generating the code with this setting causes problematic size checks to be skipped.
#if 0 /* Skip this size verification because of preprocessor limitation */ #if ( LONG_MAX != (0x7FFFFFFFFFFFFFFFL) ) #error Code was generated for compiler with different sized longs. #endif #endif
PreprocMaxBitsUint
Specifies limitations of the target C preprocessor to do math with unsigned integers. This is just like PreprocMaxBitsSint except that it pertains to unsigned integer operations such as
#if ( ULONG_MAX != (0xFFFFFFFFFFFFFFFFUL) )
If you are not certain about the proper settings for your target, you can get more details by typing rtwtargetsettings in the MATLAB Command Window.
Custom targets may require a target-specific hook file to generate an appropriate make command when a nondefault compiler is used. Such M-files should be located on the MATLAB path and be named target_wrap_make_cmd_hook.m (for example, MPC555pil_wrap_make_cmd_hook.m for the MPC555 PIL target). When such a file exists, and returns an appropriate make command, the Real-Time Workshop software overrides its default (for example, Lcc) batch file wrapping code. For an example make command hook file, see matlabroot/toolbox/rtw/rtw/wrap_make_cmd.m. Such hook files are distinct from the target-specific hook files used to describe hardware characteristics (see Expanded Hook File Options).
![]() | Version 5.1 (R13SP1) Real-Time Workshop Software | Version 5.0 (R13) Real-Time Workshop Software | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |