Tag: 串口

硬件流控制位不适用于ruby-serialport gem

我试图使用USB串行端口适配器的控制位作为通用I / O. 这个简单的例子应该将DTR线切换为高,然后是低。 require ‘serialport’ DataBits = 8 StopBits = 1 Parity = SerialPort::NONE Baud = 38400 port = ‘/dev/tty.usbserial-A100KXWU’ serial = SerialPort.new(port, ‘baud’ => Baud, ‘data_bits’ => DataBits, ‘stop_bits’ => StopBits, ‘parity’ => Parity) serial.flow_control = SerialPort::HARD loop do p serial.signals sleep(1) serial.dtr = (serial.dtr + 1) % 2 end 并输出: {“rts”=>1, “dtr”=>1, […]

从Ruby on Rails应用程序中的串行端口读取挂起

我正在使用serialport gem从我的Ruby on Rails 3.2应用程序中的串口读取。 串行端口本身用于从Arduino板写入数据。 gem被添加到Gemfile 。 端口在application.rb初始化: config.serial_port = SerialPort.new “/devttyACM0”, 9600 config.serial_port.read_timeout = 100 当我尝试从此端口读取时出现问题。 @sp = ProjectName::Application::config.serial_port @sp.read 该应用程序挂起致命。 我试图从pry会话中进行阅读,一切都很好。 如果我将read_timeout设置为0 ,则从pry读取也会挂起。 我已经尝试将read_timeout设置为更大的值而没有结果。 我该怎么做才能让它发挥作用? 更新: 我试图使用sinatra 框架执行相同的操作。 它也挂了。 require “sinatra” require “serialport” get ‘/’ do read_data end helpers do def read_data sp = SerialPort.new “/dev/ttyACM0”, 9600 sp.read_timeout = 1500 t = […]