登录论坛

查看完整版本 : matlab与串口通信的问题


lily1202
2008-05-22, 19:29
我的问题其实就是用超级终端对串口实现的所有操作,是不是应该通过matlab都可以实现呢?

我现在根据控制器和超级终端的通讯方式可以实现matlab对串口数据的读取,也就是说在matlab中对串口写入参数地址,然后回车,串口就能将能参数值读进matlab,比方说用如下的形式:
fprintf(s,'%s','R0203')
fprintf(s,'%s','\r\n')
a = fscanf(s)
这里可以通过写入参数地址R0203读出温度值.

但其实我在超级终端上除了读参数值以外,还可以通过一些命令控制测量过程,比方说meas让测量过程开始,save可以将改变的参数值保存等等.
我现在的问题就是这些控制命令在超级终端上虽然好用,但为什么我根据超级终端的方式对matlab写入时,是无效命令呢?
比方说在超级终端上写入meas,然后回车,测量过程自动开始,而我同样对matlab进行如下写入时
fprintf(s,'%s','MEAS')
fprintf(s,'%s','\r\n')
b=fscanf(s)
就会报错 Illegal Command: MEAS\R

matlab的串口程序和超级终端是对同一个串口进行操作,为什么会有这种差别呢?难道matlab只能从串口里读出数据,而通过matlab控制串口进行具体指令操作(如开始测量等)是不行的呢?还是我的理解哪里有问题?
还请各位高手指教,谢谢!

lily1202
2008-05-27, 03:58
问题已经解决!

foxselina
2008-06-05, 14:13
如何解决的?可否详述一下。

awhitetiger
2008-07-01, 19:21
老大,你既然求助了,又解决了。也把解决方案贴一个啊。
人人为我,我为人人

summitandy
2008-07-07, 19:57
大哥
有QQ嘛》?
或是别的联系方式,想请教您几个问题 真的很学要,