登录论坛

查看完整版本 : [MATLAB混合编程] 用GSM串口发两条手机短信不行,只接收到1条。为什么?以下代码如何修改?


footballandsun
2011-11-03, 15:47
cc={'第一条短信','第二条短信'} ;
cc{1}=double(cc{1});
cc{2}=double(cc{2});
phone='683178901241F5';

s=serial('com1','Terminator','CR','Timeout',6);
fopen(s);

for J=1:2
sms = sprintf('0891683108701905F011000D91%s0008AA%02X', phone, 2*length(cc{J}));
cc{J} = sprintf('%04X', cc{J});
sms = [sms, cc{J}];

try
cmd = sprintf('AT+CMGS=%d', length(sms)/2-9);
fprintf(s, cmd);
catch
end
try
cmd = sprintf('%s\x1a', sms);
fprintf(s, cmd);
catch
end
end