summaryrefslogtreecommitdiff
path: root/Venus_Skeleton/comm.h
diff options
context:
space:
mode:
Diffstat (limited to 'Venus_Skeleton/comm.h')
-rw-r--r--Venus_Skeleton/comm.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/Venus_Skeleton/comm.h b/Venus_Skeleton/comm.h
new file mode 100644
index 0000000..5cdf77e
--- /dev/null
+++ b/Venus_Skeleton/comm.h
@@ -0,0 +1,23 @@
+typedef enum {
+ RESET1 = 0x81,
+ RESET2 = 0x82,
+ ACK1 = 0x81,
+ ACK2 = 0x82,
+ OUTOFSYNC = 0x83,
+ PING = 0x80,
+ PONG = 0x80,
+ DATA_ESCAPE = 0x84,
+} serial_control_command_t;
+
+typedef enum {
+ // waiting for RESET1
+ SERIAL_UNKNOWN,
+ // received RESET1, sent ACK1, waiting for RESET2
+ SERIAL_INIT,
+ // received RESET2, sent ACK1, waiting for other commands
+ SERIAL_READY,
+} serial_state_t;
+extern serial_state_t serial_state;
+
+void handle_serial(data_t *data, int changedBits);
+void serial_print_debug(const char *str);