use '!' as end of frame sync
This commit is contained in:
@@ -1,10 +1,11 @@
|
|||||||
class InSyncState < StatePattern::State
|
class InSyncState < StatePattern::State
|
||||||
|
|
||||||
# END_OF_FRAME = "!\n"
|
END_OF_FRAME = "!\n"
|
||||||
|
|
||||||
def handle_byte_stream(bytes)
|
def handle_byte_stream(bytes)
|
||||||
idx = 0
|
idx = 0
|
||||||
sync_pattern_length = Synchronizer::SYNC_PATTERN.length
|
#sync_pattern_length = Synchronizer::SYNC_PATTERN.length
|
||||||
|
sync_pattern_length = END_OF_FRAME.length
|
||||||
#p "Sync length: #{sync_length}"
|
#p "Sync length: #{sync_length}"
|
||||||
|
|
||||||
frame = ""
|
frame = ""
|
||||||
@@ -30,6 +31,7 @@ class InSyncState < StatePattern::State
|
|||||||
|
|
||||||
private
|
private
|
||||||
def new_frame_starts(bytes,idx,sync_pattern_length)
|
def new_frame_starts(bytes,idx,sync_pattern_length)
|
||||||
return bytes[idx..idx+sync_pattern_length-1].eql?(Synchronizer::SYNC_PATTERN)
|
#return bytes[idx..idx+sync_pattern_length-1].eql?(Synchronizer::SYNC_PATTERN)
|
||||||
|
return bytes[idx..idx+sync_pattern_length-1].eql?(END_OF_FRAME)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -14,7 +14,7 @@ ActiveRecord::Base.establish_connection(connection_details)
|
|||||||
# # Open connection to serial port
|
# # Open connection to serial port
|
||||||
ser = SerialPort.new("/dev/ttyUSB1", 9600, 7, 1, SerialPort::EVEN)
|
ser = SerialPort.new("/dev/ttyUSB1", 9600, 7, 1, SerialPort::EVEN)
|
||||||
lines = ""
|
lines = ""
|
||||||
for i in 0..22
|
for i in 0..21
|
||||||
lines = lines+ser.readline("\n").gsub(/\r/, '')
|
lines = lines+ser.readline("\n").gsub(/\r/, '')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user