aboutsummaryrefslogtreecommitdiff
path: root/minimal/uart_core.c
diff options
context:
space:
mode:
authorPaul Sokolovsky2015-01-13 04:02:56 +0200
committerPaul Sokolovsky2015-01-13 04:02:56 +0200
commit5ebabcda4134dfac94967e43e7791354202c5b45 (patch)
tree0daec19a2b2e5655efe3a6d8f325f8d4f46595f6 /minimal/uart_core.c
parentd511a20a6ba28571b106e714eee8329288de7ba4 (diff)
minimal: Convert "bare-arm" port to "minimal" port.
This enable libc functions, GC, and line-editing function. Also, UART emulation for POSIX systems is added. Emulation build is set as default.
Diffstat (limited to 'minimal/uart_core.c')
-rw-r--r--minimal/uart_core.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/minimal/uart_core.c b/minimal/uart_core.c
new file mode 100644
index 000000000..92c81ecc9
--- /dev/null
+++ b/minimal/uart_core.c
@@ -0,0 +1,24 @@
+#include <unistd.h>
+#include "py/mpconfig.h"
+
+/*
+ * Core UART functions to implement for a port
+ */
+
+// Receive single character
+int stdin_rx_chr(void) {
+ unsigned char c = 0;
+#if MICROPY_MIN_USE_STDOUT
+ int r = read(0, &c, 1);
+ (void)r;
+#endif
+ return c;
+}
+
+// Send string of given length
+void stdout_tx_strn(const char *str, mp_uint_t len) {
+#if MICROPY_MIN_USE_STDOUT
+ int r = write(1, str, len);
+ (void)r;
+#endif
+}