variables in m files

Hi, I am new to MATLAB. This is the script i am working on:
FC = 360;
d = hex2dec ('*001C72*');
p = hex2dec ('*038E*');
t = hex2dec ('*0392*');
A = (d*0.5*FC/2^18);
B = (p*0.5*FC/2^15);
C = (t*0.5*FC/2^15);
Then writing 'A' in the command window i recieve an output in degrees depending on what the input 'd' is. My problem is that the hex values of d, p and t will change and not always equal the same. So is there any way that i can make the highlighted parts above a variable that i can somehow change without editing the m file everytime?
Many thanks

5 Comments

You could use a function
doc function
Darren
Darren on 11 Feb 2013
Could you provide an example using the code given in the OP?
Darren
Darren on 12 Feb 2013
Thanks very much for your answers. How would i implement 2s compliment in these fucntions?
i.e. in the current function if i enter hex value FE8D it would output decimal value 65186, however i would like the 2s compliment value -7282
Thanks in advance
José-Luis
José-Luis on 12 Feb 2013
Edited: José-Luis on 12 Feb 2013
That's a different question. Please accept an answer if it helped you and post a new question, but you should first try to see if it has been answered before.
Please look here for inspiration.
Darren
Darren on 12 Feb 2013
Thanks. The page you mentioned doesn't implement 2s compliment in the function. I'll keep searching for an answer although i have posted another question in the meantime. Thanks

Sign in to comment.

 Accepted Answer

José-Luis
José-Luis on 11 Feb 2013
function [A B C] = ImAFunction(d,p,t)
FC = 360;
d = hex2dec (d);
p = hex2dec (p);
t = hex2dec (t);
A = (d*0.5*FC/2^18);
B = (p*0.5*FC/2^15);
C = (t*0.5*FC/2^15);
Save it, place in the path or in the current folder and call it as follows:
[A B C] = ImAFunction(*001C72*', '*038E*', '*0392*');

More Answers (2)

Thorsten
Thorsten on 11 Feb 2013
Edited: Thorsten on 11 Feb 2013
Define function
function A B C = myfunction(d, p, t)
FC = 360;
A = (hex2dec(d)*0.5*FC/2^18);
B = (hex2dec(p)*0.5*FC/2^15);
C = (hex2dec(t)*0.5*FC/2^15);
Call function with values for d, p and t, e.g.,
[ A B C ] = myfunction('*001C72*', '*038E*', '*0392*');
Jan
Jan on 11 Feb 2013
Str = '001C72';
d = hex2dec(Str);
Such basic methods are described in the Getting Started chapters of the documentation. To use a powerful tool like Matlab efficiently, it is strongly recommended to read the manual. The forum is not the right location to learn the basic, because the manual is written well and descriptive enough already.

Categories

Community Treasure Hunt

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

Start Hunting!