Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Does simulink support calculation in which a declared variable can change its value?

Asked by TeHsin on 9 Oct 2012
   for example, for any declared variable "U"
U = U+5; 
U = U*a;
   I found that after a variable is calculated by a block, its output always become another variable. such as
C = U+5; 
B = U*a;
 Thanks 
    Tehsin

2 Comments

Azzi Abdelmalek on 9 Oct 2012

what do you mean? It's obvious, after U=U+5, U will change

TeHsin on 9 Oct 2012
 Hi Azzi Abdelmalek :
 Thanks for your reply.
 I want "U" as an global variable,but it is always replaced by an local   after using Simulink Coder to generate C code. The C syntax will be ,for example, "loc = U + 1;" not "U = U + 1;"
 So, how do I use simulink to create a global that satisfies the C syntax as "U++;" or "U=U*5;"
 ex: 
 simulink:
		(in_global)--->[*5]--->(out_local)
 simulink Coder:
		int  out_local; 
		out_local = in_global * 5;
 How to create the code as "in_global = in_global * 5;"
 Thank you
TeHsin

Tags

Products

1 Answer

Answer by Sachin on 9 Oct 2012

If I understand correctly, you want use U as a global variable. Is it correct?

1 Comment

TeHsin on 9 Oct 2012
 Hi SACHIN:
 Thanks for your reply.
 Yes, I want "U" as an global variable. 
 But the global variable is always replaced by an local   after I use  Simulink Coder to generate C code.
 So, how do I use simulink to create a global that equal to the C syntax  as "U++;" or ''U=U*5;"
 ex: 
 simulink:
		(in_global)--->[*5]--->(out_local)
 simulink Coder:
		int  out_local; 
		out_local = in_global * 5;
   How to create the code as "in_global = in_global * 5;"

Thank you

Sachin

Contact us