summaryrefslogtreecommitdiff
path: root/include/Serial.h
diff options
context:
space:
mode:
authorXavi Del Campo <xavi.dcr@tutanota.com>2020-03-03 18:10:15 +0100
committerXavi Del Campo <xavi.dcr@tutanota.com>2020-03-03 18:10:27 +0100
commitb28059d49afce8524361fa7597adcc9e108f4eab (patch)
tree5041d37aa9571ac738ced4b9f16388550d0e8f78 /include/Serial.h
parentbf3bb8cdc590a18195e25c38f4f4db11e8bcd1c4 (diff)
downloadopensend-b28059d49afce8524361fa7597adcc9e108f4eab.tar.gz
Renamed folders to lowercase
Diffstat (limited to 'include/Serial.h')
-rw-r--r--include/Serial.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/include/Serial.h b/include/Serial.h
new file mode 100644
index 0000000..da2c4ce
--- /dev/null
+++ b/include/Serial.h
@@ -0,0 +1,49 @@
+#ifndef __SERIAL_HEADER__
+#define __SERIAL_HEADER__
+
+/* *************************************
+ * Includes
+ * *************************************/
+
+#include "Global_Inc.h"
+#include "System.h"
+#include "Gfx.h"
+#include "Font.h"
+
+/* *************************************
+ * Defines
+ * *************************************/
+
+#define ACK_BYTE_STRING "b"
+
+/* **************************************
+ * Structs and enums *
+ * *************************************/
+
+typedef enum
+{
+ SERIAL_STATE_INIT = 0,
+ SERIAL_STATE_STANDBY,
+ SERIAL_STATE_WRITING_ACK,
+ SERIAL_STATE_READING_HEADER,
+ SERIAL_STATE_READING_EXE_SIZE,
+ SERIAL_STATE_READING_EXE_DATA,
+ SERIAL_STATE_WAITING_USER_INPUT,
+ SERIAL_STATE_CLEANING_MEMORY,
+}SERIAL_STATE;
+
+/* *************************************
+ * Global prototypes
+ * *************************************/
+
+void SerialInit(void);
+bool SerialRead(uint8_t* ptrArray, size_t nBytes);
+bool SerialWrite(void* ptrArray, size_t nBytes);
+void ISR_Serial(void);
+void SerialSetState(SERIAL_STATE state);
+void SerialSetPCAddress(uint32_t addr);
+void SerialSetRAMDestAddress(uint32_t addr);
+void SerialSetExeSize(size_t size);
+void SerialSetExeBytesReceived(uint32_t bytes_read);
+
+#endif // __SERIAL_HEADER__