从串行端口读取Ruby

我试图使用ruby对串行端口进行简单的读写操作.

这是我到目前为止的代码.我正在使用串口宝石.

require 'rubygems'
require 'serialport'

ser = SerialPort.new("/dev/ttyACM0",9600,8,1,SerialPort::NONE)

ser.write "ab\r\n"
puts ser.read

但是脚本在运行时挂起.

解决方法

我有问题.这是因为使用ser.read告诉Ruby永远不断阅读,Ruby永远不会停止阅读,从而挂起脚本.解决方案是只读取特定数量的字符.

例如:

ser.readline(5)

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...