Azzera filtri
Azzera filtri

how can i modify this code to use in Stateflow?

1 visualizzazione (ultimi 30 giorni)
kadri
kadri il 2 Giu 2013
for s2=1:b
for s1=1:b-1
if m(1,s1)>m(1,s1+1)
c=m(1,s1);
m(1,s1)=m(1,s1+1);
m(1,s1+1)=c;
end
end
end
How can i generate this code in Stateflow Chart without using Matlab embeded function block. i have vector such as m=[0 1 2 3 4 5 6 7 8 9 10 ] and i m planning to use code that above to sort numbers in ascending order.
thank you.

Risposte (2)

Siddharth
Siddharth il 3 Giu 2013
If you are building your state machine in R2012b or newer, use the new chart block that uses MATLAB. In that block you can directly use MATLAB functions in the state actions/conditions. In your example, you could replace the loops with a call to the MATLAB function
sort
in the state diagram. Or you could write the loops directly in the state diagram too. Learn more about the chart block that uses MATLAB here: http://www.mathworks.com/videos/matlab-as-the-action-language-70059.html
  1 Commento
kadri
kadri il 3 Giu 2013
thank you for your answer but i have to use stateflow chart, cuz calling Matlab function is not allowed to do this challenge.
My main problem is about this code, i can't generate for loop in for loop (two for loop) with stateflow charts. Could you give me example how can i create two for loop with stateflow charts?
thank you.

Accedi per commentare.


Siddharth
Siddharth il 17 Giu 2013
If you are not allows to use MATLAB functions, use graphical functions to achieve the same functionality. Find more information on how to create for loops using graphical functions here .

Categorie

Scopri di più su Complex Logic in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by