| ID: Заголовок | hisf_0003: Использование битовых операций | |
|---|---|---|
| Описание |
При использовании битовых операций в блоках Stateflow®, | |
| A | Избегайте типов данных целого числа со знаком как операндов к битовым операциям. | |
| Примечания |
Обычно, битовые операции не значимы на целых числах со знаком. Нежелательное поведение может произойти. Например, операция сдвига может переместить знаковый бит в номер или числовой бит в знаковый бит. | |
| Объяснение | A | Продвиньте однозначный стиль моделирования. |
| Образцовые проверки советника | Для получения дополнительной информации проверки смотрите Проверку на битовые операции в диаграммах Stateflow. | |
| Ссылки |
| |
| Смотрите также | hisl_0019: Использование блока Bitwise Operator | |
| В последний раз измененный | R2016a | |
| ID: Заголовок | hisf_0004: Использование рекурсивного поведения | |
|---|---|---|
| Описание |
Чтобы поддержать поведение вызова ограниченной функции, избегайте использования шаблонов разработки, которые включают неограниченное рекурсивное поведение. Рекурсивное поведение связано, если вы делаете следующее: | |
| A | Используйте явное условие завершения, которое локально для рекурсивного вызова. | |
| B | Убедитесь, что условие завершения достигнуто. | |
| Примечания | Это правило только применяется, если графиком является классическая диаграмма Stateflow. Если Мучнистый и семантика Мура сопровождаются, рекурсивное поведение предотвращено из-за ограничений в семантике графика. Кроме того, можно обнаружить ошибку во время моделирования путем включения диагностики Stateflow, Обнаруживают Циклы. | |
| Объяснение | A, B | Способствуйте поведению вызова ограниченной функции. |
| Ссылки |
| |
| В последний раз измененный | R2016a | |
| Примеры |
Существует несколько шаблонов в Stateflow, который может привести к неограниченной рекурсии.
Вызовы рекурсивной функции
| |
|
Когда состояние по умолчанию A вводится, событие
Вызовы рекурсивной функции
| ||
| ID: Заголовок |
hisf_0007: Использование условий соединения (поддерживающий взаимное исключение) | |
|---|---|---|
| Описание |
Улучшить ясность и предотвратить генерацию недостижимого кода, | |
| A | Сделайте условия соединения взаимоисключающими. | |
| Примечания |
Можно использовать эту инструкцию, чтобы поддержать подмножество языка моделирования в проектах высокой целостности. | |
| Объяснение | A | Улучшите ясность и предотвратите генерацию недостижимого кода. |
| Ссылки |
| |
| В последний раз измененный | R2012b | |
| ID: Заголовок | hisf_0013: Использование путей к переходу (пересекающий параллельные государственные границы) | |
|---|---|---|
| Описание | Постараться не создавать схемы, которые трудно понять, | |
| A | Постарайтесь не создавать переходы, которые пересекаются от одного параллельного состояния до другого. | |
| Примечания | Можно использовать эту инструкцию, чтобы поддержать подмножество языка моделирования в проектах высокой целостности. | |
| Объяснение | A | Улучшите удобочитаемость модели. |
| Образцовые проверки советника |
Для получения дополнительной информации проверки смотрите диаграммы Stateflow Проверки для путей к переходу тот перекрестные параллельные государственные границы. | |
| Ссылки |
| |
| В последний раз измененный | R2017b | |
| Пример | В следующем примере, когда
| |
| ID: Заголовок | hisf_0014: Использование путей к переходу (проходящий через состояния) | |
|---|---|---|
| Описание | Постараться не создавать схемы, которые сбивают с толку и включают пути к переходу без преимущества, | |
| A | Избегайте путей к переходу, которые входят и из состояния, не заканчиваясь на подсостоянии. | |
| Примечания | Можно использовать эту инструкцию, чтобы поддержать подмножество языка моделирования в проектах высокой целостности. | |
| Объяснение | A | Улучшите удобочитаемость модели. |
| Образцовые проверки советника |
Для получения дополнительной информации проверки смотрите Проверку на несоответствующее использование путей к переходу. | |
| Ссылки |
| |
| В последний раз измененный | R2018b | |
| Примеры |
| |
| ID: Заголовок |
hisf_0015: Сильный ввод данных (бросающий переменные и параметры в выражениях) | |
|---|---|---|
| Описание |
Упростить сильный ввод данных, | |
| A |
Явным образом введите переменные броска и параметры различных типов данных в:
| |
| Примечания |
Программное обеспечение Stateflow автоматически бросает переменные другого типа в совпадающий тип данных. Эта инструкция помогает разъяснить типы данных промежуточных переменных. | |
| Объяснение | A | Примените сильный ввод данных. |
| Образцовые проверки советника |
Для получения дополнительной информации проверки смотрите диаграммы Stateflow Проверки для сильного ввода данных. | |
| Ссылки |
| |
| В последний раз измененный | R2017b | |
| Примеры |
Рекомендуемый
Не рекомендуемый
| |
| ID: Заголовок | hisf_0016: имена порта Stateflow |
|---|---|
| Описание | Имя ввода или вывода Stateflow должно совпасть с соответствующим сигналом. Исключение: Допускающие повторное использование блоки Stateflow могут иметь различные имена порта. |
| Объяснение | Поддержите генерацию прослеживаемого кода. |
| Образцовые проверки советника |
Для получения дополнительной информации проверки смотрите, что Проверка называет портов в диаграммах Stateflow. |
| Ссылки |
|
| В последний раз измененный | 2018a |
| ID: Заголовок | hisf_0017: определение объема объекта данных Stateflow |
|---|---|
| Описание | Объекты данных Stateflow с локальным осциллографом должны быть заданы на уровне графика или ниже. |
| Объяснение | Поддержите генерацию прослеживаемого кода. |
| Образцовые проверки советника |
Для получения дополнительной информации проверки смотрите, что Проверка определяет объем объектов данных Stateflow. |
| Ссылки |
|
| В последний раз измененный | 2018a |
| Примеры |
Рекомендуемый
Не рекомендуемый
|