How do I write a function that alternates an output variable between 0 and 1 every 1 second?

2 views (last 30 days)
I'm trying to find a solution for my stateflow project in which I want to alternate an output signal as stated in the summary.

Accepted Answer

Eric Delgado
Eric Delgado on 27 Oct 2022
Create a timer with its "UserData" property set to 0. And a timer function (you have to save it to a file) to switch this value between 0 and 1. Hope it helps! :)
% Timer
tmr = timer('Period', 1, ...
'ExecutionMode', 'fixedRate', ...
'TimerFcn', @tmrFunction, ...
'UserData', 0);
start(tmr)
% Timer function
function tmrFunction(Source, Event)
switch Source.UserData
case 0; Source.UserData = 1;
case 1; Source.UserData = 0;
end
end

More Answers (0)

Categories

Find more on Modeling in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!