Класс: hdlcoder. ReferenceDesign
Пакет: hdlcoder
Указатель на функцию для пользовательской функции обратного вызова, которая выполняется после задачи Generate Software Interface в HDL Workflow Advisor
PostSWInterfaceFcn
PostSWInterfaceFcn
регистрирует указатель на функцию для функции обратного вызова, которая выполняется в конце Generate Software Interface задачи в HDL Workflow Advisor. Если hRD
является исходный проект объектом, который вы создаете со hdlcoder.ReferenceDesign
класс, используйте этот синтаксис для регистрации указателя на функцию.
hRD.PostSWInterfaceFcn = @my_reference_design.callback_PostSWInterface;
Чтобы определить функцию обратного вызова, создайте файл, который задает MATLAB® и добавьте его к пути MATLAB. Вы можете использовать любое имя для функции обратного вызова. В этом примере имя функции callback_PostSWInterface
, и находится в папке исходного проекта пакета +my_reference_design
.
С помощью этой функции обратного вызова можно изменить модель сгенерированного программного обеспечения интерфейса для пользовательского исходного проекта.
Этот пример кода показывает, как создать функцию обратного вызова. Функция добавляет DocBlock в модель программного интерфейса.
function [status, log] = callback_PostSWInterface(infoStruct) % Reference design callback run at the end of the task % Generate Software Interface Model % % infoStruct: information in structure format % infoStruct.ReferenceDesignObject: current reference design registration object % infoStruct.BoardObject: current board registration object % infoStruct.ParameterStruct: custom parameters of the current reference design, in struct format % infoStruct.HDLModelDutPath: the block path to the HDL DUT subsystem % infoStruct.SWModelDutPath: the block path to the SW interface subsystem % % feature controlled by IPCoreSoftwareInterfaceLibrary % infoStruct.SWLibBlockPath: the block path to the SW interface library block % infoStruct.SWLibFolderPath: the folder path to the SW interface library % % status: process run status % status == true means process run successfully % status == false means process run failed % log: output log string status = true; log = ''; swDutPath = infoStruct.SWModelDutPath; add_block(['simulink/Model-Wide', char(10), 'Utilities/DocBlock'], sprintf('%s/DocBlock', swDutPath), 'Position', [50, 50, 80, 80]); end
В HDL Workflow Advisor, когда HDL- Coder™ запускает Generate Software Interface задачу, она выполняет функцию обратного вызова в конце задачи.
Когда вы создаете функцию обратного вызова, передайте infoStruct
аргумент функции. Аргумент содержит исходный проект и информацию о плате в structure
формат. Используйте эту информацию для задания пользовательских настроек для генерации модели программного интерфейса.