I'm using the ruby serial port gem. After I open up the port I send the data I want like this.
sp.write [200.chr, 30.chr, 7.chr, 5.chr, 1.chr, 2.chr, 0.chr, 245.chr].to_s
It doesn't work,开发者_开发百科 but if I put it in a loop of around 200 times:
200.times do
sp.write [200.chr, 30.chr, 7.chr, 5.chr, 1.chr, 2.chr, 0.chr, 245.chr].to_s
end
It works. Any ideas on why this is happening?
It can be related to some kind of buffer that only gets flushed (ie: sends data) when:
- You're explicitly sending a CRLF at the end of your string
- It (the buffer) is full
Just for testing, would it be wrong for you to try to add \r\n at the end of the string?
精彩评论