이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
핀 맵을 보기 위한 푸시 버튼 추가
이 예제는 matlab.system.display.Action를 사용하여 블록 마스크에 버튼을 추가하는 방법을 보여줍니다. 버튼을 클릭하면 하드웨어 보드의 핀 맵이 열립니다. 이 예제는 버튼 옵션을 설정하고, actionData 객체 입력을 사용하여 그림 핸들을 저장하는 방법을 보여줍니다. 이렇게 하면 버튼을 여러 번 클릭할 때마다 새로운 그림이 열리는 대신, 같은 그림이 사용됩니다.
System object™의 메서드에
viewpinmap함수를 추가하십시오.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파일에 있는 이미지를 포함하는 그림을 생성합니다. 이 이미지는 하드웨어 보드의 핀 맵 이미지로 대체되어야 합니다.System object의 메서드에 다음
getPropertyGroupImpl함수를 추가하십시오.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함수를 실행합니다.버튼을 클릭하면 핀 맵이 화면에 표시되는지 확인하십시오.
참고
Digital Write 블록은 하드웨어에 직접 의존하므로, 사용자에게 하드웨어 보드의 핀 맵을 보여주는 블록 대화 상자 버튼을 추가하는 것이 좋습니다.
참고 항목
Add Custom Button to MATLAB System Block | Mapping System Object Code to MATLAB System Block Dialog Box