summaryrefslogtreecommitdiff
path: root/n/avr/rs232/avrconfig.h
diff options
context:
space:
mode:
Diffstat (limited to 'n/avr/rs232/avrconfig.h')
-rw-r--r--n/avr/rs232/avrconfig.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/n/avr/rs232/avrconfig.h b/n/avr/rs232/avrconfig.h
index a497a22..b661fe9 100644
--- a/n/avr/rs232/avrconfig.h
+++ b/n/avr/rs232/avrconfig.h
@@ -33,13 +33,27 @@
/** Baudrate : 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 76800,
* 115200, 230400, 250000, 500000, 1000000. */
#define AC_RS232_BAUDRATE 115200
-/** Choose between interrupt (1) or polling (0). */
-#define AC_RS232_INTERRUPT 0
+/** Send mode :
+ * - POLLING : no interrupts;
+ * - RING : interrupts, ring buffer;
+ * - PACKETS : interrupts, by packets delimited by SOP and EOP
+ * (unimplemented). */
+#define AC_RS232_SEND_MODE POLLING
+/** Recv mode, same as send mode. */
+#define AC_RS232_RECV_MODE POLLING
/** Parity : ODD, EVEN, NONE. */
#define AC_RS232_PARITY ODD
/** Stop bits : 1, 2. */
#define AC_RS232_STOP_BITS 2
-/** Character size : 5, 6, 7, 8, 9. */
+/** Character size : 5, 6, 7, 8, 9 (only 8 implemented). */
#define AC_RS232_CHAR_SIZE 8
+/** SOP (Start of packet) caracter. */
+#define AC_RS232_SOP(c) ((c) == '!')
+/** EOP (End of packet) caracter. */
+#define AC_RS232_EOP(c) ((c) == '\r')
+/** Send buffer size, should be power of 2 for RING mode. */
+#define AC_RS232_SEND_BUFFER_SIZE 32
+/** Recv buffer size, should be power of 2 for RING mode. */
+#define AC_RS232_RECV_BUFFER_SIZE 32
#endif /* avrconfig_h */