[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [4371] Add flushing support to fms_serial_port and f
From: |
Allen Ibara |
Subject: |
[paparazzi-commits] [4371] Add flushing support to fms_serial_port and flush for each send by default for now |
Date: |
Thu, 10 Dec 2009 20:43:08 +0000 |
Revision: 4371
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=4371
Author: aibara
Date: 2009-12-10 20:43:08 +0000 (Thu, 10 Dec 2009)
Log Message:
-----------
Add flushing support to fms_serial_port and flush for each send by default for
now
Modified Paths:
--------------
paparazzi3/trunk/sw/airborne/fms/fms_serial_port.c
paparazzi3/trunk/sw/airborne/fms/fms_serial_port.h
Modified: paparazzi3/trunk/sw/airborne/fms/fms_serial_port.c
===================================================================
--- paparazzi3/trunk/sw/airborne/fms/fms_serial_port.c 2009-12-10 20:41:46 UTC
(rev 4370)
+++ paparazzi3/trunk/sw/airborne/fms/fms_serial_port.c 2009-12-10 20:43:08 UTC
(rev 4371)
@@ -22,6 +22,18 @@
free(me);
}
+
+void serial_port_flush(struct FmsSerialPort* me) {
+ /*
+ * flush any input that might be on the port so we start fresh.
+ */
+ if (tcflush(me->fd, TCIFLUSH)) {
+ TRACE(TRACE_ERROR,"%s, set term attr failed: %s (%d)\n", device,
strerror(errno), errno);
+ fprintf(stderr, "flush (%d) failed: %s (%d)\n", me->fd, strerror(errno),
errno);
+ }
+}
+
+
int serial_port_open(struct FmsSerialPort* me, const char* device,
void(*term_conf_callback)(struct termios*, speed_t*)) {
@@ -47,6 +59,7 @@
close(me->fd);
return -1;
}
+ serial_port_flush(me);
return 0;
}
Modified: paparazzi3/trunk/sw/airborne/fms/fms_serial_port.h
===================================================================
--- paparazzi3/trunk/sw/airborne/fms/fms_serial_port.h 2009-12-10 20:41:46 UTC
(rev 4370)
+++ paparazzi3/trunk/sw/airborne/fms/fms_serial_port.h 2009-12-10 20:43:08 UTC
(rev 4371)
@@ -11,6 +11,7 @@
extern struct FmsSerialPort* serial_port_new(void);
extern void serial_port_free(struct FmsSerialPort* me);
+extern void serial_port_flush(struct FmsSerialPort* me);
extern int serial_port_open(struct FmsSerialPort* me, const char* device,
void(*term_conf_callback)(struct termios*,
speed_t*));
extern void serial_port_close(struct FmsSerialPort* me);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [4371] Add flushing support to fms_serial_port and flush for each send by default for now,
Allen Ibara <=