A modified version of the GDEP015OC1 library that supports x-or as a color.
Fork of GDEP015OC1 by
GDEP015OC1.h@9:1f1e705a5f02, 2017-07-16 (annotated)
- Committer:
- ivo_n
- Date:
- Sun Jul 16 20:40:52 2017 +0000
- Revision:
- 9:1f1e705a5f02
- Parent:
- 8:cd51988ee35d
Added old API so old example won't break.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Anunnaki | 3:dc7b794b59b7 | 1 | /** |
Anunnaki | 3:dc7b794b59b7 | 2 | * Created by Filip Hormot (f.hormot@gmail.com) on 14/09/16. |
ivo_n | 9:1f1e705a5f02 | 3 | * Modified by knutsel.org on 16/07/2017. |
Anunnaki | 3:dc7b794b59b7 | 4 | */ |
Anunnaki | 3:dc7b794b59b7 | 5 | |
Anunnaki | 2:1c8f73aa2a16 | 6 | #include "mbed.h" |
Anunnaki | 2:1c8f73aa2a16 | 7 | |
Anunnaki | 2:1c8f73aa2a16 | 8 | #define BUFFER_SIZE 5000 |
Anunnaki | 3:dc7b794b59b7 | 9 | #define FONT_WIDTH 5 |
Anunnaki | 3:dc7b794b59b7 | 10 | #define FONT_HEIGHT 7 |
Anunnaki | 2:1c8f73aa2a16 | 11 | #define BUSY_STATE 1 |
Anunnaki | 2:1c8f73aa2a16 | 12 | |
Anunnaki | 2:1c8f73aa2a16 | 13 | class GDEP015OC1 { |
Anunnaki | 2:1c8f73aa2a16 | 14 | public: |
Anunnaki | 6:45d2ec037fd6 | 15 | //unsigned char _buffer[BUFFER_SIZE]; |
Anunnaki | 2:1c8f73aa2a16 | 16 | GDEP015OC1(SPI& spi, PinName cs, PinName dc, PinName rst, PinName busy); |
ivo_n | 8:cd51988ee35d | 17 | |
ivo_n | 8:cd51988ee35d | 18 | enum Color {eBlack,eWhite,eInvert}; |
Anunnaki | 2:1c8f73aa2a16 | 19 | |
Anunnaki | 4:86114342ce8f | 20 | void fill(unsigned char data, int i); |
Anunnaki | 2:1c8f73aa2a16 | 21 | unsigned char get(uint16_t i); |
Anunnaki | 2:1c8f73aa2a16 | 22 | void empty(void); |
Anunnaki | 2:1c8f73aa2a16 | 23 | void invert(void); |
Anunnaki | 7:70c58d3cbc8b | 24 | void write(void); |
Anunnaki | 7:70c58d3cbc8b | 25 | void writeFull(void); |
ivo_n | 9:1f1e705a5f02 | 26 | |
ivo_n | 9:1f1e705a5f02 | 27 | //old, put here to not break the API. |
ivo_n | 9:1f1e705a5f02 | 28 | void drawPixel(uint16_t startX, uint16_t startY, bool color); |
ivo_n | 9:1f1e705a5f02 | 29 | void drawLine(uint16_t startX, uint16_t startY, uint16_t stopX, uint16_t stopY, bool color); |
ivo_n | 9:1f1e705a5f02 | 30 | void drawTriangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t x3, uint16_t y3, bool color); |
ivo_n | 9:1f1e705a5f02 | 31 | void drawRectangle(uint16_t startX, uint16_t startY, uint16_t stopX, uint16_t stopY, bool color); |
ivo_n | 9:1f1e705a5f02 | 32 | void drawCircle(uint16_t startX, uint16_t startY, uint16_t radius, bool color); |
ivo_n | 9:1f1e705a5f02 | 33 | void fillCircle(uint16_t startX, uint16_t startY, uint16_t radius, bool color); |
ivo_n | 9:1f1e705a5f02 | 34 | void drawEllipse(uint16_t startX, uint16_t startY, uint16_t width, uint16_t height, bool color); |
ivo_n | 9:1f1e705a5f02 | 35 | void fillEllipse(uint16_t startX, uint16_t startY, uint16_t width, uint16_t height, bool color); |
ivo_n | 9:1f1e705a5f02 | 36 | void writeChar(char character, uint16_t startX, uint16_t startY, bool color); |
ivo_n | 9:1f1e705a5f02 | 37 | void writeString(char *string, uint16_t startX, uint16_t startY, bool color); |
ivo_n | 9:1f1e705a5f02 | 38 | // |
ivo_n | 9:1f1e705a5f02 | 39 | |
ivo_n | 8:cd51988ee35d | 40 | void drawPixel(uint16_t startX, uint16_t startY, Color color); |
ivo_n | 8:cd51988ee35d | 41 | void drawLine(uint16_t startX, uint16_t startY, uint16_t stopX, uint16_t stopY, Color color); |
ivo_n | 8:cd51988ee35d | 42 | void drawTriangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t x3, uint16_t y3, Color color); |
ivo_n | 8:cd51988ee35d | 43 | void drawRectangle(uint16_t startX, uint16_t startY, uint16_t stopX, uint16_t stopY, Color color); |
ivo_n | 8:cd51988ee35d | 44 | void fillRectangle(uint16_t startX, uint16_t startY, uint16_t stopX, uint16_t stopY, Color color); |
ivo_n | 8:cd51988ee35d | 45 | void drawCircle(uint16_t startX, uint16_t startY, uint16_t radius, Color color); |
ivo_n | 8:cd51988ee35d | 46 | void fillCircle(uint16_t startX, uint16_t startY, uint16_t radius, Color color); |
ivo_n | 8:cd51988ee35d | 47 | void drawEllipse(uint16_t startX, uint16_t startY, uint16_t width, uint16_t height, Color color); |
ivo_n | 8:cd51988ee35d | 48 | void fillEllipse(uint16_t startX, uint16_t startY, uint16_t width, uint16_t height, Color color); |
ivo_n | 8:cd51988ee35d | 49 | void writeChar(char character, uint16_t startX, uint16_t startY, Color color); |
ivo_n | 8:cd51988ee35d | 50 | void writeString(char *string, uint16_t startX, uint16_t startY, Color color); |
ivo_n | 9:1f1e705a5f02 | 51 | |
Anunnaki | 2:1c8f73aa2a16 | 52 | private: |
Anunnaki | 2:1c8f73aa2a16 | 53 | SPI& _spi; |
Anunnaki | 2:1c8f73aa2a16 | 54 | DigitalOut _cs; |
Anunnaki | 2:1c8f73aa2a16 | 55 | DigitalOut _dc; |
Anunnaki | 2:1c8f73aa2a16 | 56 | DigitalOut _rst; |
Anunnaki | 2:1c8f73aa2a16 | 57 | DigitalIn _busy; |
Anunnaki | 2:1c8f73aa2a16 | 58 | |
Anunnaki | 3:dc7b794b59b7 | 59 | bool _italic, _bold; |
Anunnaki | 3:dc7b794b59b7 | 60 | |
Anunnaki | 6:45d2ec037fd6 | 61 | unsigned char _buffer[BUFFER_SIZE]; |
Anunnaki | 2:1c8f73aa2a16 | 62 | |
Anunnaki | 2:1c8f73aa2a16 | 63 | void _spiCommand(unsigned char command); |
Anunnaki | 2:1c8f73aa2a16 | 64 | void _spiData(unsigned char data); |
Anunnaki | 2:1c8f73aa2a16 | 65 | void _init(void); |
Anunnaki | 7:70c58d3cbc8b | 66 | void _wakeUp(bool partial); |
Anunnaki | 2:1c8f73aa2a16 | 67 | void _sleep(void); |
Anunnaki | 2:1c8f73aa2a16 | 68 | unsigned char _pixelConv(unsigned char *data, int i); |
Anunnaki | 2:1c8f73aa2a16 | 69 | uint8_t _mirrorData(uint8_t data); |
Anunnaki | 2:1c8f73aa2a16 | 70 | }; |