Callback Button
Execute MATLAB code using button
Libraries:
Simulink /
Dashboard
Description
The Callback Button block executes MATLAB® code in response to a click or a press of the button. When you press the button, the code executes after a time span that you specify has elapsed or at time intervals that you specify. You can configure the block to execute different code for a click versus for a press. When you use the Callback Button block from the Customizable Blocks library, you can also customize the appearance of the block to look like a button in your real system.
To push the virtual button, click the Callback Button block. While you press your pointer, the button is pushed. When you release your pointer, you release the button.
You can use callback functions to specify what you want the button to do:
PressFcns
functions run while the button is pushed. You can configure the button to run thePressFcn
function only once while the button is pushed, or you can specify a repeat interval.ClickFcns
functions run when you release the button.
You can configure the button to stay pushed when you release your pointer by setting
the Button Type to Latched
. When you
choose the latched button type:
To latch the button, click the button.
To unlatch the button, click the button again.
The PressFcn
function runs while the button is latched. The
ClickFcn
function runs once when you latch the button, and once
when you unlatch the button.
You can use states to specify how the appearance of the Callback Button block changes when you interact with the button:
While you push the button, the block is in the
Pressed
state.When the button is latched and you are not pushing it, the block is in the
Latched
state.When the button is latched and you are pushing it, the block is in the
Latched and Pressed
state.When the block is not in any of these three states, it is in the
Default
state.
A state pairs pointer actions with:
A State Label
A state icon
A state image
Note
Double-clicking the Callback Button block does not open its dialog box during simulation or when the block is selected. To edit the block parameters, you can use the Property Inspector or open the block dialog box by:
Double-clicking the block when the block is not selected and the model is not simulating
Right-clicking the block and selecting Block Parameters from the context menu
Customize Callback Button Blocks
When you add a Callback Button block to your model, the block is preconfigured with a default design. You can use the block with the default design or customize the appearance of the block.
To customize the appearance of the block, use design mode. After selecting the block, you can enter design mode in one of three ways:
In the Simulink® Toolstrip, on the block-specific tab, under Design, click Edit.
In the Property Inspector, on the Design tab, click Edit.
Pause on the ellipsis that appears over the block and click the Edit Custom Block button .
When you design a Callback Button block, you configure the block
appearance for each possible state. When you configure the Block
Type as Momentary
, the block has two
states. When you configure the Block Type as
Latch
, the block has four.
You can use the toolbar above the block to switch states. For each state, you can:
Upload a state image.
Upload a state icon and specify the position of the icon relative to the state label.
Specify the State Label text, color, opacity, and position.
You can also upload a foreground or a background image, or set a solid background color. The foreground and background apply to all states.
Use the toolbar above the block to configure the image, the icon, and the State Label color and opacity.
You can use the Design tab in the Property Inspector for fine control over the block design and to enter exact values for design settings.
Use the Design tab to:
Specify the State Label text and position.
Specify the icon position.
Upload a foreground image.
Upload a background image.
Set a solid background color.
When you finish editing the design, to exit design mode, click the X in the upper right of the canvas.
Examples
Extended Examples
Parameters
Block Characteristics
Data Types | |
Direct Feedthrough |
|
Multidimensional Signals |
|
Variable-Size Signals |
|
Zero-Crossing Detection |
|
Tips
To design a button that changes the value of a variable or parameter in your model, use the Push Button block.