teste

Dependencies:   BurstSPI Fonts

Committer:
sergionatan
Date:
Tue Oct 24 20:12:54 2017 +0000
Revision:
0:cf17b1f16335
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sergionatan 0:cf17b1f16335 1 // ST7735 8 Bit SPI Library
sergionatan 0:cf17b1f16335 2
sergionatan 0:cf17b1f16335 3 #ifndef MBED_TEXTDISPLAY_H
sergionatan 0:cf17b1f16335 4 #define MBED_TEXTDISPLAY_H
sergionatan 0:cf17b1f16335 5
sergionatan 0:cf17b1f16335 6 #include "mbed.h"
sergionatan 0:cf17b1f16335 7
sergionatan 0:cf17b1f16335 8 class TextDisplay : public Stream {
sergionatan 0:cf17b1f16335 9 public:
sergionatan 0:cf17b1f16335 10
sergionatan 0:cf17b1f16335 11 // functions needing implementation in derived implementation class
sergionatan 0:cf17b1f16335 12 /** Create a TextDisplay interface
sergionatan 0:cf17b1f16335 13 *
sergionatan 0:cf17b1f16335 14 * @param name The name used in the path to access the strean through the filesystem
sergionatan 0:cf17b1f16335 15 */
sergionatan 0:cf17b1f16335 16 TextDisplay(const char *name = NULL);
sergionatan 0:cf17b1f16335 17
sergionatan 0:cf17b1f16335 18 /** output a character at the given position
sergionatan 0:cf17b1f16335 19 *
sergionatan 0:cf17b1f16335 20 * @param column column where charater must be written
sergionatan 0:cf17b1f16335 21 * @param row where character must be written
sergionatan 0:cf17b1f16335 22 * @param c the character to be written to the TextDisplay
sergionatan 0:cf17b1f16335 23 */
sergionatan 0:cf17b1f16335 24 virtual void character(int column, int row, int c) = 0;
sergionatan 0:cf17b1f16335 25
sergionatan 0:cf17b1f16335 26 /** return number if rows on TextDisplay
sergionatan 0:cf17b1f16335 27 * @result number of rows
sergionatan 0:cf17b1f16335 28 */
sergionatan 0:cf17b1f16335 29 virtual int rows() = 0;
sergionatan 0:cf17b1f16335 30
sergionatan 0:cf17b1f16335 31 /** return number if columns on TextDisplay
sergionatan 0:cf17b1f16335 32 * @result number of rows
sergionatan 0:cf17b1f16335 33 */
sergionatan 0:cf17b1f16335 34 virtual int columns() = 0;
sergionatan 0:cf17b1f16335 35
sergionatan 0:cf17b1f16335 36 // functions that come for free, but can be overwritten
sergionatan 0:cf17b1f16335 37
sergionatan 0:cf17b1f16335 38 /** redirect output from a stream (stoud, sterr) to display
sergionatan 0:cf17b1f16335 39 * @param stream stream that shall be redirected to the TextDisplay
sergionatan 0:cf17b1f16335 40 */
sergionatan 0:cf17b1f16335 41 virtual bool claim (FILE *stream);
sergionatan 0:cf17b1f16335 42
sergionatan 0:cf17b1f16335 43 /** clear screen
sergionatan 0:cf17b1f16335 44 */
sergionatan 0:cf17b1f16335 45 virtual void cls();
sergionatan 0:cf17b1f16335 46 virtual void locate(int column, int row);
sergionatan 0:cf17b1f16335 47 virtual void foreground(uint16_t colour);
sergionatan 0:cf17b1f16335 48 virtual void background(uint16_t colour);
sergionatan 0:cf17b1f16335 49 // putc (from Stream)
sergionatan 0:cf17b1f16335 50 // printf (from Stream)
sergionatan 0:cf17b1f16335 51
sergionatan 0:cf17b1f16335 52 protected:
sergionatan 0:cf17b1f16335 53
sergionatan 0:cf17b1f16335 54 virtual int _putc(int value);
sergionatan 0:cf17b1f16335 55 virtual int _getc();
sergionatan 0:cf17b1f16335 56
sergionatan 0:cf17b1f16335 57 // character location
sergionatan 0:cf17b1f16335 58 uint16_t _column;
sergionatan 0:cf17b1f16335 59 uint16_t _row;
sergionatan 0:cf17b1f16335 60
sergionatan 0:cf17b1f16335 61 // colours
sergionatan 0:cf17b1f16335 62 uint16_t _foreground;
sergionatan 0:cf17b1f16335 63 uint16_t _background;
sergionatan 0:cf17b1f16335 64 char *_path;
sergionatan 0:cf17b1f16335 65 };
sergionatan 0:cf17b1f16335 66
sergionatan 0:cf17b1f16335 67 #endif