X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=host%2Fget_test.rb;h=3c88cfd524531b4b7aec24debf967b14137aceaf;hb=2c909fca2a13cd76a526515bda5d0292483d7a55;hp=8b3f940c5be60f7b5c85d7ad02fb7902f038b825;hpb=3f759a542ce8ba4ffbeb6d336a3557a8abbd3ad4;p=avr-crypto-lib.git diff --git a/host/get_test.rb b/host/get_test.rb index 8b3f940..3c88cfd 100644 --- a/host/get_test.rb +++ b/host/get_test.rb @@ -21,13 +21,24 @@ require 'rubygems' require 'serialport' +$debug = false +$progress_dots = false + def read_line(error_msg=true) - s = $sp.gets() - if s==nil - puts("ERROR: read timeout!\n") if error_msg - return nil - end - s.gsub(/\006/, ''); + begin + i = $extended_wait + begin + s = $sp.gets() + i -= 1 + end while !s && i > 0 + if s==nil + puts("ERROR: read timeout!\n") if error_msg + return nil + end + putc('.') if s.include?(6.chr) && $progress_dots + puts(s.inspect) if $debug + end while s == 6.chr + s.gsub(/\006/, '') end def readTestVector(param) @@ -70,6 +81,7 @@ def readTestVector(param) end puts("-> "+fname+"txt"); file=File.new(fname+"txt", "w"); + file.sync = true buffer+=lb; file.write(buffer); begin @@ -112,8 +124,8 @@ param=(ARGV.size>=7)?ARGV[6]:""; puts("\nPort: "+ARGV[0]+ "@"+ARGV[1]+" "+ARGV[2]+"N"+ARGV[3]+"\n"); $linewidth = 16 $sp = SerialPort.new(ARGV[0], ARGV[1].to_i, ARGV[2].to_i, ARGV[3].to_i, SerialPort::NONE); -$sp.read_timeout=1000; # 1 secound -$extended_wait=100; +$sp.read_timeout=1000; # 1 second +$extended_wait=100000; $sp.write(command); if(readTestVector(param)==false)