ID: Title | hisf_0064: Shift operations for Stateflow® data to improve code compliance | |
---|---|---|
Description | To improve code compliance of the generated code with Stateflow bit-shifting operations, do not perform: | |
A | Right-shift operations greater than the bit-width of the input type, or by a negative value. | |
B | Left-shift operations greater than the bit-width of the output type, or by a negative value. | |
Note | If you follow this and other modeling guidelines, you increase the likelihood of generating code that complies with the coding standards. | |
Rationale | To avoid shift operations in the generated code that might be a coding standard violation. | |
Model Advisor Checks | Check usage of shift operations for Stateflow data (Simulink Check) | |
References |
| |
Prerequisites | hisl_0060: Configuration parameters that improve MISRA C:2012 compliance | |
Last Changed | R2021a | |
Examples | Incorrect Correct Perform shift operations within the defined range of input and output signals. Correct When shift operations are more than the width of input signals, perform the explicit conversion. Since the output can hold the final value, the conversion prevents the output from being written as 0 during code generation. |
ID: Title | hisf_0065: Type cast operations in Stateflow to improve code compliance | |
---|---|---|
Description | In Stateflow charts that use the C action language, use the
:= notation to protect against Stateflow casting integer and fixed-point calculations to wider data
types than the input data types. | |
Note | If you follow this and other modeling guidelines, you increase the likelihood of generating code that complies with the coding standards. | |
Rationale | To avoid implicit casts in the generated code that might violate coding standards. | |
Model Advisor Checks | Check assignment operations in Stateflow Charts (Simulink Check) | |
References |
| |
Prerequisites | hisl_0060: Configuration parameters that improve MISRA C:2012 compliance | |
Last Changed | R2021a |
ID: Title | hisf_0211: Protect against use of unary operators in Stateflow Charts to improve code compliance | |
---|---|---|
Description | To improve code compliance of the generated code: | |
A | Do not use unary minus operators on unsigned data types. | |
Note | The MATLAB® and C action languages do not restrict the use of unary minus operators on unsigned expressions. | |
Rationale | Improve code compliance of the generated code. | |
Model Advisor Checks | Check Stateflow charts for unary operators (Simulink Check) | |
References |
| |
Last Changed | R2017b |