RETRO ROBOT E

Dependents:   RETRO_ROBOT_SC16IS750E

Committer:
RLRiedinger
Date:
Mon Mar 02 04:20:29 2015 +0000
Revision:
0:efe9c8c9c925
RETRO ROBOT E

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RLRiedinger 0:efe9c8c9c925 1 #include "mbed.h"
RLRiedinger 0:efe9c8c9c925 2
RLRiedinger 0:efe9c8c9c925 3 #pragma once
RLRiedinger 0:efe9c8c9c925 4
RLRiedinger 0:efe9c8c9c925 5 class DisplayN18 {
RLRiedinger 0:efe9c8c9c925 6
RLRiedinger 0:efe9c8c9c925 7 static const unsigned char STEP = 4;
RLRiedinger 0:efe9c8c9c925 8 DigitalOut resetPin;
RLRiedinger 0:efe9c8c9c925 9 DigitalOut backlightPin;
RLRiedinger 0:efe9c8c9c925 10 DigitalOut rsPin;
RLRiedinger 0:efe9c8c9c925 11 DigitalOut csPin;
RLRiedinger 0:efe9c8c9c925 12 SPI spi;
RLRiedinger 0:efe9c8c9c925 13
RLRiedinger 0:efe9c8c9c925 14 void writeCommand(unsigned char command);
RLRiedinger 0:efe9c8c9c925 15 void writeData(unsigned char data);
RLRiedinger 0:efe9c8c9c925 16 void writeData(const unsigned char* data, unsigned int length);
RLRiedinger 0:efe9c8c9c925 17
RLRiedinger 0:efe9c8c9c925 18 void reset();
RLRiedinger 0:efe9c8c9c925 19 void initialize();
RLRiedinger 0:efe9c8c9c925 20 void setClippingArea(unsigned char x, unsigned char y, unsigned char width, unsigned char height);
RLRiedinger 0:efe9c8c9c925 21
RLRiedinger 0:efe9c8c9c925 22 public:
RLRiedinger 0:efe9c8c9c925 23
RLRiedinger 0:efe9c8c9c925 24 DisplayN18();
RLRiedinger 0:efe9c8c9c925 25
RLRiedinger 0:efe9c8c9c925 26 static const unsigned short BLUE = 0x00F8;
RLRiedinger 0:efe9c8c9c925 27 static const unsigned short GREEN = 0xE007;
RLRiedinger 0:efe9c8c9c925 28 static const unsigned short RED = 0x1F00;
RLRiedinger 0:efe9c8c9c925 29 static const unsigned short WHITE = 0xFFFF;
RLRiedinger 0:efe9c8c9c925 30 static const unsigned short BLACK = 0x0000;
RLRiedinger 0:efe9c8c9c925 31
RLRiedinger 0:efe9c8c9c925 32 static const unsigned int WIDTH = 160;
RLRiedinger 0:efe9c8c9c925 33 static const unsigned int HEIGHT = 128;
RLRiedinger 0:efe9c8c9c925 34 static const unsigned char CHAR_WIDTH = 5;
RLRiedinger 0:efe9c8c9c925 35 static const unsigned char CHAR_HEIGHT = 8;
RLRiedinger 0:efe9c8c9c925 36 static const unsigned char CHAR_SPACING = 1;
RLRiedinger 0:efe9c8c9c925 37
RLRiedinger 0:efe9c8c9c925 38 static unsigned short rgbToShort(unsigned char r, unsigned char g, unsigned char b);
RLRiedinger 0:efe9c8c9c925 39
RLRiedinger 0:efe9c8c9c925 40 void clear(unsigned short backColor = 0x0000);
RLRiedinger 0:efe9c8c9c925 41 void draw(const unsigned short* data, int x, int y, int width, int height);
RLRiedinger 0:efe9c8c9c925 42 void setPixel(int x, int y, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 43
RLRiedinger 0:efe9c8c9c925 44 void fillRect(int x, int y, int width, int height, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 45 void drawRect(int x, int y, int width, int height, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 46
RLRiedinger 0:efe9c8c9c925 47 void fillCircle(int x, int y, int radius, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 48 void drawCircle(int x, int y, int radius, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 49
RLRiedinger 0:efe9c8c9c925 50 void drawLine(int x0, int y0, int x1, int y1, unsigned short foreColor);
RLRiedinger 0:efe9c8c9c925 51
RLRiedinger 0:efe9c8c9c925 52 void drawCharacter(int x, int y, const char character, unsigned short foreColor, unsigned short backColor, unsigned char fontSize = 1);
RLRiedinger 0:efe9c8c9c925 53 void drawString(int x, int y, const char* str, unsigned short foreColor, unsigned short backColor, unsigned char fontSize = 1);
RLRiedinger 0:efe9c8c9c925 54 };