Невиртуальные шины влияют на симуляцию и генерацию кода. Блок, соединенный с невиртуальной шиной, читает входные параметры и пишет выходные параметры путем доступа к копиям отдельных сигналов в шине. Эти копии хранятся в области памяти, выделенной шине.
Можно использовать невиртуальные шины для:
Отобразите и регистрируйте сигналы шины с блоком Scope.
Создайте массив шин.
Имейте перекрестный блок MATLAB Function данных о шине или контуры графика Stateflow®.
Интерфейс с внешним кодом через S-функцию.
Данные о шине пакета как структуры в сгенерированном коде.
Чтобы создать невиртуальную шину, необходимо задать тип данных Object шины и что шина является невиртуальной в Bus Creator, In Bus Element, Out Bus Element, блоке Inport или Outport.
Установите Data type на Bus: <object name>
, где <object name>
имя объекта шины.
Выберите Output as nonvirtual bus или, для блоков выходного порта, Output as nonvirtual bus in parent model.
Можно использовать объект шины задать тип данных для блока, не указывая, что шина является невиртуальной шиной. Объекты шины являются дополнительными для виртуальных шин, но требуемые для невиртуальных шин. Для получения дополнительной информации об объектах шины смотрите Specify Bus Properties с Объектами Шины.
ex_bus_object_tutorial_using_objects
модели задает невиртуальные шины, которые могут быть идентифицированы их стилем линии после компиляции модели.
Если вы очищаете Output as nonvirtual bus для блока Bus Creator и обновляете схему, выходная шина становится виртуальной и изменения стиля линии в трех сплошных линиях.
Если блок MATLAB Function выводит структуру, то необходимо использовать объект шины задать шину выход. В модели ex_bus_object_matlab_func
, блок MATLAB Function включает код MATLAB®, который создает структуру.
Чтобы видеть определение структуры, дважды кликните блок MATLAB Function.
Откройте Редактор Шины и расширьте определение объекта шины, которое представляет структуру.
Чтобы видеть, как объект шины используется, чтобы задать шину, выход для блока MATLAB Function, в редакторе MATLAB, нажимает Edit Data и затем нажимает y
. Выход Type задан как function_bus
объект шины.