Если вы полностью задаете свои таблицы истинности, вы начинаете процесс отладки их. Первый шаг должен запустить диагностику, чтобы проверять таблицы истинности на синтаксические ошибки включая сверхспецификацию и underspecification, как описано в Правильных Чрезмерно определенных и Таблицах истинности Underspecified. Кроме того, можно добавить точки останова непосредственно в таблицу истинности, чтобы отладить в процессе моделирования.
Таблицы истинности не поддерживаются в автономном Stateflow® графики в MATLAB®. Для получения дополнительной информации см. Таблицы истинности Использования к Комбинаторной логике Модели.
Проверять на синтаксические ошибки:
Дважды кликните таблицу истинности.
В таблице истинности нажмите Run Diagnostics .
Например, если вы изменяете действие для столбца решения D4 к действию, которое не существует, вы получаете сообщение об ошибке в Диагностическом Средстве просмотра.
Диагностика таблицы истинности запускается автоматически, когда вы симулируете модель с новой или модифицированной таблицей истинности. Если никакие ошибки не существуют, диагностическое окно не появляется, и симуляция сразу запускается.
Можно использовать точки останова в таблице истинности Stateflow, чтобы приостановить симуляцию и отладить логику. Если точка останова заставляет симуляцию делать паузу, можно продвинуться посредством действий и исследовать значения данных в том отдельном моменте в симуляции.
С таблицами истинности можно установить эти различные типы точки останова:
Условие протестировано
Решение протестировано
Допустимое решение
Действие выполняется
После того, как симуляция останавливается в точке останова, можно продолжить выполнение графика на панели инструментов Stateflow Editor в командной строке MATLAB, или путем выбора горячей клавиши.
Значок панели инструментов | Опция | Команда | Описание | Горячая клавиша |
---|---|---|---|---|
| Продолжение | dbcont | Продолжите симуляцию к следующей точке останова. | Ctrl+T |
| Переступить | dbstep | Перейдите к следующему шагу в выполнении таблицы истинности. | F10 |
| Вступить | dbstep in | От состояния или действия перехода, которое вызывает функцию, усовершенствование к первому исполняемому оператору в функции. От оператора в функции, содержащей другой вызов функции, перейдите к первому исполняемому оператору во второй функции. В противном случае перейдите к следующему шагу в выполнении таблицы истинности. (См., Переступают.) | F11 |
| Выйти | dbstep out | От вызова функции возвратитесь к оператору, вызывающему функцию. В противном случае продолжите симуляцию к следующей точке останова. (См., Продолжаются.) | Shift+F11 |
| Шаг вперед | Выйдите из режима отладки и приостановите симуляцию перед следующим временным шагом. | ||
| Остановка | dbquit | Выйдите из режима отладки и симуляции остановки. | Ctrl+Shift+T |
Чтобы установить точку останова, когда условие будет протестировано, щелкните правой кнопкой по ячейке условия и выберите Set Breakpoint (Condition Tested). Красный значок появляется на крайне левой из таблицы рядом с количеством условия. Когда вы запускаете модель, симуляция делает паузу, когда условие тестируется. Stateflow подсвечивает протестированную строку условия. Установите свой курсор на данные в таблице истинности, чтобы видеть ее текущее значение.
Чтобы установить точку останова, когда решение будет протестировано, щелкните правой кнопкой по верхней части столбца решения и выберите Set Breakpoint (Decision Tested). Красный значок появляется на верхней части столбца решения рядом с количеством решения. Когда вы запускаете модель, симуляция делает паузу, когда решение тестируется. Stateflow подсвечивает протестированный столбец решения. Установите свой курсор на данные в таблице истинности, чтобы видеть ее текущее значение.
Чтобы установить точку останова, когда решение будет допустимо, щелкните правой кнопкой по ячейке действия в нижней части столбца решения и выберите Set Breakpoint (Decision Valid). Красный значок появляется на верхней части ячейки рядом с номером действия. Когда вы запускаете модель, симуляция делает паузу, когда действие допустимо. Stateflow подсвечивает допустимое решение. Установите свой курсор на данные в таблице истинности, чтобы видеть ее текущее значение.
Если существует больше чем одно действие, чтобы взять, когда решение допустимо, точка останова установлена для первого исполняемого файла.
Чтобы установить точку останова, когда действие будет выполняться, щелкните правой кнопкой по ячейке действия и выберите Set Breakpoint (Action Executed). Красный значок появляется на крайне левой из таблицы рядом с количеством действия. Когда вы запускаете модель, симуляция делает паузу, когда действие выполняется. Stateflow подсвечивает протестированную строку действия. Установите свой курсор на данные в таблице истинности, чтобы видеть ее текущее значение.
Если существует больше чем одно действие в ячейке действия, точка останова установлена для первого действия.
Кликните по точке останова, чтобы открыть диалоговое окно Edit Breakpoint. Из этого окна можно отключить точку останова путем снятия флажка Enable Breakpoint.
Когда вы добавляете условие в точку останова, точка останова приостанавливает симуляцию только, когда ее связанным условием является true
.