Getting error of Double
8 次查看(过去 30 天)
显示 更早的评论
This is portion of my code
function [dtmf]=dtmfdial(x,fs);
%This function produces DTMF Tone corresponding to given
%key number
%abcdefg=input key numbers
%fs= The sampling frequency
lfg = [697 770 852 941]; % Low frequency group
hfg = [1209 1336 1477]; % High frequency group
f = [];
for c=1:4,
for r=1:3,
f = [ f [lfg(c);hfg(r)] ];
end
end
table=f';
dur=.5;
tt=0:(1/fs):dur;
n=length(x);
C=cell(1,length(x));
for k=1:n
if x(k)==1
freqa=table(1,1);
freqb=table(1,2);
else if x(k)==2
freqa=table(2,1);
freqb=table(2,2);
and so on
When i run this function i get this error
>> dtmf=dtmfdial([1 2 3 4 5 6 7],8000)
??? Undefined function or method 'dtmfdial' for input arguments of type 'double'.
0 个评论
采纳的回答
Wayne King
2011-10-6
Hi, are you actually assigning anything to dtmf inside your function?
For example, if you wrote a function
function test = test_func(x)
test1 = x+1;
And called that function at the command line:
y = test_func(4);
You would get that error message, because you assign the output to test1 inside the function, but the function is set up to return test.
更多回答(3 个)
Honglei Chen
2011-10-6
Is your dtmfdial on path? You can also try
rehash toolbox
to regenerate the path.
HTH
0 个评论
Laura Proctor
2011-10-6
Try the command
which dtmfdial
at the command window. Perhaps the function is not on your path or you have a variable with the name dtmfdial. This will let you know why it's not working.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 DTMF 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!