【问题标题】:Serial communication with scilab in Linux在 Linux 中与 scilab 进行串行通信
【发布时间】:2012-11-22 12:42:37
【问题描述】:

您能否提供一些在 Linux 中与 scilab 进行串行通信的示例。当我下达命令时:

h=openserial(1,"9600,n,8,1");

我收到以下错误:

-->h=openserial(1,"9600,n,8,1");
!--error 999 
TCL_EvalStr,  at line 1
bad option "-mode": should be one of -blocking, -buffering, -buffersize, -encoding, -eofchar, or -translation
while executing
"fconfigure file114 -mode 9600,n,8,1"
at line      27 of function openserial called by :  
h=openserial(1,"9600,n,8,1");

【问题讨论】:

标签: linux serial-port communication scilab


【解决方案1】:

与例如 Arduino 设备的简单串行通信只需要指定为 openserial 中的第二个参数的波特率。似乎字符串参数(n?)中的其他变量搞砸了。

Scilab 5.4 示例,带有 Serial Toolbox,用于 com 端口 3 和波特率 9600。尝试读取串行之前有 5 秒延迟。

h = openserial(3,"9600");
xpause(5000000);
data = readserial(h);
closeserial(h);

连同您的 arduino 设备上的一些串行垃圾邮件代码,您应该在每次在 Scilab 中运行时收到一串数据。

Arduino 设备上的串口示例代码:

int cc=0;

void setup(){
   Serial.begin(9600); 
}

void loop(){
  Serial.println(cc);
  if (cc<10){
  cc++;
  }
  else{
  cc=0;
  }
  delay(100);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-23
    • 2017-08-13
    • 1970-01-01
    • 2014-10-01
    • 2011-04-21
    • 1970-01-01
    • 2012-10-20
    相关资源
    最近更新 更多