主要内容

添加普通按钮以查看引脚映射

此示例说明如何使用 matlab.system.display.Action 向模块封装添加按钮。当您点击该按钮时,会打开硬件板引脚映射的图像。此示例说明如何设置按钮选项并使用 actionData 对象输入来存储图窗句柄。这样,当按钮多次点击时会使用同一个图窗,而不是为每次按钮点击打开一个新图窗。

  1. 将函数 viewpinmap 添加到 System object™ 的方法中。

    methods
        function viewpinmap(obj,actionData)
            f = actionData.UserData;
            if isempty(f) || ~ishandle(f)
                
                % Create figure for pin map.
                f = figure;
                f.Name = 'Hardware Pin Map';
                f.NumberTitle = 'off';        % Remove number title
                f.ToolBar = 'none';           % Remove toolbar
                f.MenuBar = 'none';           % Remove menubar
    
                % Create axes in figure.
                ax = axes(f);                 
                ax.Position = [0 0 1 1];      % Set axes to fill figure
    
                % Display the image.
                imshow( 'peppers.png',...
                    'Parent',ax,...
                    'InitialMagnification','fit');
              
                actionData.UserData = f;
            else
                figure(f); % Make figure current.
            end
        end
    end

    此函数创建一个包含来自 peppers.png 文件的图像的图窗。此图像应替换为硬件板的引脚映射图像。

  2. 将以下 getPropertyGroupImpl 函数添加到 System object 的方法中。

    methods(Static,Access=protected)
        function group = getPropertyGroupsImpl
            group = matlab.system.display.Section(mfilename('class'));
            group.Actions = matlab.system.display.Action(@(actionData,obj) ...
                viewpinmap(obj,actionData),'Label','Pin Map');
        end
        ...
    end

    此函数在模块封装上创建按钮并在点击该按钮时执行函数 viewpinmap

  3. 点击该按钮以确认具有引脚映射图像的图窗显示在屏幕上。

注意

由于 Digital Write 模块直接依赖硬件,建议您添加模块对话框按钮,向用户显示硬件板的引脚映射。

另请参阅

|