summaryrefslogtreecommitdiff
path: root/src/gps_test.rb
diff options
context:
space:
mode:
authorJames Maki <jmaki@multitech.com>2010-05-12 13:23:59 -0500
committerJames Maki <jmaki@multitech.com>2010-05-12 13:23:59 -0500
commitf6100159e49f3cc087bc757fe5b175cbd0019437 (patch)
tree316cafd143431b97742d17c567715735589ae514 /src/gps_test.rb
parent3b2e0c7388926f6b8128d5e10d5ef9c02a24cd42 (diff)
downloadvenus-gps-f6100159e49f3cc087bc757fe5b175cbd0019437.tar.gz
venus-gps-f6100159e49f3cc087bc757fe5b175cbd0019437.tar.bz2
venus-gps-f6100159e49f3cc087bc757fe5b175cbd0019437.zip
add gps to serial example
Diffstat (limited to 'src/gps_test.rb')
-rwxr-xr-xsrc/gps_test.rb49
1 files changed, 28 insertions, 21 deletions
diff --git a/src/gps_test.rb b/src/gps_test.rb
index 4f35ec5..8f64112 100755
--- a/src/gps_test.rb
+++ b/src/gps_test.rb
@@ -4,40 +4,47 @@ require 'socket'
GPS_SERVER_IP = "192.168.2.1"
GPS_SERVER_PORT = 5445
-MODE = :client
-PROTOCOL = :tcp
+MODE = :tcp_server
+#MODE = :tcp_client
+#MODE = :udp_server
+#MODE = :serial
def tcp_read(sock)
loop {
- data = sock.readline()
- puts data.inspect
+ begin
+ data = sock.readline()
+ p data
+ rescue Errno::EAGAIN, Errno::EWOULDBLOCK => e
+ puts "read error: #{e.class}: #{e}"
+ return
+ end
}
end
-if PROTOCOL == :tcp
- if MODE == :client
- sock = TCPSocket.new(GPS_SERVER_IP, GPS_SERVER_PORT)
- tcp_read(sock)
- sock.close
- else
- serv = TCPServer.new(GPS_SERVER_PORT)
- sock = serv.accept
- tcp_read(sock)
- sock.close
- end
-elsif PROTOCOL == :udp
- sock = UDPSocket.new
- sock.bind('0.0.0.0', GPS_SERVER_PORT)
-
+def udp_read(sock)
loop {
begin
msg, sender = sock.recvfrom(1024)
+ p msg
rescue Errno::EAGAIN, Errno::EWOULDBLOCK => e
puts "recvfrom error: #{e.class}: #{e}"
next
end
- puts msg.inspect
}
end
-
+if MODE == :tcp_client
+ sock = TCPSocket.new(GPS_SERVER_IP, GPS_SERVER_PORT)
+ tcp_read(sock)
+ sock.close
+elsif MODE == :tcp_server
+ serv = TCPServer.new(GPS_SERVER_PORT)
+ sock = serv.accept
+ tcp_read(sock)
+ sock.close
+elsif MODE == :udp_server
+ sock = UDPSocket.new
+ sock.bind('0.0.0.0', GPS_SERVER_PORT)
+ udp_read(sock)
+ sock.close
+end