OpenBCI 32bit board variation with STM32L476 mircocontroller and mbed support

Dependencies:   mbed

Committer:
akpc806a
Date:
Sun Jan 22 04:10:11 2017 +0000
Revision:
1:4683702d7ad8
Parent:
0:2cb59ea20ace
OpenBCI 32bit board variation with STM32L476 mircocontroller and mbed support. Version V2 of firmware, forked from the same official version for the PIC32 board.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
akpc806a 0:2cb59ea20ace 1 // interface for Uart implemented with mbed framework
akpc806a 0:2cb59ea20ace 2
akpc806a 0:2cb59ea20ace 3 #ifndef __PlatformUart__
akpc806a 0:2cb59ea20ace 4 #define __PlatformUart__
akpc806a 0:2cb59ea20ace 5
akpc806a 0:2cb59ea20ace 6 #define DEC 10
akpc806a 0:2cb59ea20ace 7 #define HEX 16
akpc806a 0:2cb59ea20ace 8 #define OCT 8
akpc806a 0:2cb59ea20ace 9 #define BIN 2
akpc806a 0:2cb59ea20ace 10
akpc806a 0:2cb59ea20ace 11 #include <stddef.h>
akpc806a 0:2cb59ea20ace 12 #include <stdint.h>
akpc806a 0:2cb59ea20ace 13
akpc806a 1:4683702d7ad8 14
akpc806a 1:4683702d7ad8 15 class platformUart_Dummy {
akpc806a 1:4683702d7ad8 16 public:
akpc806a 1:4683702d7ad8 17 int write(int data) { return 0; }
akpc806a 1:4683702d7ad8 18 //int write(char* str);
akpc806a 1:4683702d7ad8 19
akpc806a 1:4683702d7ad8 20 size_t print(const char[]) { return 0; }
akpc806a 1:4683702d7ad8 21 size_t print(char) { return 0; }
akpc806a 1:4683702d7ad8 22 size_t print(unsigned char, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 23 size_t print(int, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 24 size_t print(unsigned int, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 25 size_t print(long, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 26 size_t print(unsigned long, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 27 size_t print(double, int = 2) { return 0; }
akpc806a 1:4683702d7ad8 28
akpc806a 1:4683702d7ad8 29 size_t println(const char[]) { return 0; }
akpc806a 1:4683702d7ad8 30 size_t println(char) { return 0; }
akpc806a 1:4683702d7ad8 31 size_t println(unsigned char, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 32 size_t println(int, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 33 size_t println(unsigned int, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 34 size_t println(long, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 35 size_t println(unsigned long, int = DEC) { return 0; }
akpc806a 1:4683702d7ad8 36 size_t println(double, int = 2) { return 0; }
akpc806a 1:4683702d7ad8 37 size_t println(void) { return 0; }
akpc806a 1:4683702d7ad8 38
akpc806a 1:4683702d7ad8 39 unsigned char available() { return 0; }
akpc806a 1:4683702d7ad8 40 unsigned char read() { return 0; }
akpc806a 1:4683702d7ad8 41 void begin(int baudrate) {};
akpc806a 1:4683702d7ad8 42
akpc806a 1:4683702d7ad8 43 operator int() const { return 0; }
akpc806a 1:4683702d7ad8 44
akpc806a 1:4683702d7ad8 45 };
akpc806a 1:4683702d7ad8 46
akpc806a 0:2cb59ea20ace 47 class platformUart {
akpc806a 0:2cb59ea20ace 48 public:
akpc806a 0:2cb59ea20ace 49 int write(int data);
akpc806a 0:2cb59ea20ace 50 //int write(char* str);
akpc806a 0:2cb59ea20ace 51
akpc806a 0:2cb59ea20ace 52 size_t print(const char[]);
akpc806a 0:2cb59ea20ace 53 size_t print(char);
akpc806a 0:2cb59ea20ace 54 size_t print(unsigned char, int = DEC);
akpc806a 0:2cb59ea20ace 55 size_t print(int, int = DEC);
akpc806a 0:2cb59ea20ace 56 size_t print(unsigned int, int = DEC);
akpc806a 0:2cb59ea20ace 57 size_t print(long, int = DEC);
akpc806a 0:2cb59ea20ace 58 size_t print(unsigned long, int = DEC);
akpc806a 0:2cb59ea20ace 59 size_t print(double, int = 2);
akpc806a 0:2cb59ea20ace 60
akpc806a 0:2cb59ea20ace 61 size_t println(const char[]);
akpc806a 0:2cb59ea20ace 62 size_t println(char);
akpc806a 0:2cb59ea20ace 63 size_t println(unsigned char, int = DEC);
akpc806a 0:2cb59ea20ace 64 size_t println(int, int = DEC);
akpc806a 0:2cb59ea20ace 65 size_t println(unsigned int, int = DEC);
akpc806a 0:2cb59ea20ace 66 size_t println(long, int = DEC);
akpc806a 0:2cb59ea20ace 67 size_t println(unsigned long, int = DEC);
akpc806a 0:2cb59ea20ace 68 size_t println(double, int = 2);
akpc806a 0:2cb59ea20ace 69 size_t println(void);
akpc806a 0:2cb59ea20ace 70
akpc806a 0:2cb59ea20ace 71 unsigned char available();
akpc806a 0:2cb59ea20ace 72 unsigned char read();
akpc806a 1:4683702d7ad8 73 void begin(int baudrate) {}
akpc806a 0:2cb59ea20ace 74
akpc806a 0:2cb59ea20ace 75 platformUart();
akpc806a 0:2cb59ea20ace 76
akpc806a 0:2cb59ea20ace 77 private:
akpc806a 0:2cb59ea20ace 78
akpc806a 0:2cb59ea20ace 79 size_t printNumber(unsigned long n, uint8_t base);
akpc806a 0:2cb59ea20ace 80 size_t printFloat(double number, uint8_t digits);
akpc806a 0:2cb59ea20ace 81
akpc806a 0:2cb59ea20ace 82 };
akpc806a 0:2cb59ea20ace 83
akpc806a 0:2cb59ea20ace 84 #endif