Отобразить информацию о шине можно с помощью нескольких подходов.
Чтобы отобразить, является ли шина виртуальной или невиртуальной, обновляйте или симулируйте модель. Виртуальная шина появляется как три сплошные линии (), а невиртуальная шина - как две сплошные линии с каждой стороны штриховой линии ().
Для интерактивного отображения иерархии шины см. раздел «Иерархия отображаемой шины».
Для интерактивного отображения значения элементов шины в порту смотрите Отображение значения элементов шины.
Для программного отображения виртуальности и иерархии шины смотрите Программно получите иерархию шины и виртуальность.
Для интерактивного отображения иерархии шин:
Щелкните сигнальную линию.
На вкладке Signal выберите Signal Hierarchy.
Откроется средство просмотра иерархии сигналов, показывающее иерархию сигнала для выбранного сигнала.
Для примера этот средство просмотра иерархии сигналов показывает иерархию сигналов для шины с именем main_bus
.
Каждое средство просмотра иерархии сигналов связано с определенной моделью. Если вы редактируете модель во время открытия связанного средства просмотра иерархии сигналов, то средство просмотра иерархии сигналов отражает эти обновления.
Примечание
Чтобы получить точные результаты во время редактирования в Signal Hierarchy Viewer, ваша модель должна успешно скомпилироваться.
Для фильтрации отображаемых сигналов нажмите кнопку Options в правой части Filter by name окна редактирования.
Как использовать MATLAB® регулярные выражения для фильтрации имен сигналов, выберите Enable regular expression. Например, чтобы отобразить все сигналы, имена которых заканчиваются нижним регистром r
(и их непосредственных родительских элементов), введите r$
в Filter by name окне редактирования. Для получения дополнительной информации см. раздел Регулярные выражения.
Чтобы отобразить плоский список отфильтрованных результатов, выберите Show filtered results as a flat list. Плоский список использует запись через точку для указания иерархии шин. В этом примере показан отфильтрованный набор вложенных шин.
Для интерактивного отображения значений элементов шины в порте:
Щелкните сигнальную линию.
На вкладке Signal выберите Output Value Label.
Щелкните метку значения порта и выберите сигналы, которые вы хотите отобразить.
Для примера в этой модели можно выбрать, какие сигналы отображать из сигналов, которые содержатся в ModelBus
.
Для получения дополнительной информации смотрите Отображение значения для определенного порта.
Чтобы программно получить иерархию и виртуальность шины в скомпилированной модели, запросите эти параметры с помощью get_param
функция:
'SignalHierarchy'
- Если сигнал является шиной, возвращает имя и иерархию сигналов в шине.
'CompiledBusType'
- Для модели, которая находится в 'compile'
фаза, возвращает информацию о том, является ли сигнал, соединенный с портом, шиной и является ли сигнал виртуальной или невиртуальной шиной. Прежде чем вы запросите CompiledBusType
значение параметров, используйте model
функция, чтобы поместить модель в 'compile'
фаза.
Для примера откройте и симулируйте busdemo
модель.
open_system('busdemo') sim('busdemo');
Получите указатель на порт, для которого требуется информация о шине.
ph = get_param('busdemo/Bus Creator', 'PortHandles');
Получите иерархию сигналов в порту.
sh = get_param(ph.Outport, 'SignalHierarchy')
sh = struct with fields:
SignalName: 'main_bus'
BusObject: ''
Children: [2x1 struct]
Получите скомпилированный тип шины в порту во время компиляции модели.
busdemo([],[],[],'compile'); bt = get_param(ph.Outport, 'CompiledBusType')
bt = 'VIRTUAL_BUS'
Завершает компиляцию.
busdemo([],[],[],'term');