Basically i glued Peter Drescher and Simon Ford libs in a GraphicsDisplay class, then derived TFT or LCD class (which inherits Protocols class), then the most derived ones (Inits), which are per-display and are the only part needed to be adapted to diff hw.

Dependents:   testUniGraphic_150217 maze_TFT_MMA8451Q TFT_test_frdm-kl25z TFT_test_NUCLEO-F411RE ... more

Revision:
9:1749ae993cfe
Parent:
7:bb0383b91104
Child:
10:668cf78ff93a
--- a/Inits/TFT_MIPI.cpp	Tue Feb 17 17:54:14 2015 +0000
+++ b/Inits/TFT_MIPI.cpp	Tue Feb 17 22:35:07 2015 +0000
@@ -9,12 +9,13 @@
 // display settings ///////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////
 
-#define LCDSIZE_X       320 // display X pixels, TFTs are usually portrait view
-#define LCDSIZE_Y       480  // display Y pixels
+// put in constructor
+//#define LCDSIZE_X       320 // display X pixels, TFTs are usually portrait view
+//#define LCDSIZE_Y       480  // display Y pixels
 
 
 
-TFT_MIPI::TFT_MIPI(proto_t displayproto, PortName port, PinName CS, PinName reset, PinName DC, PinName WR, PinName RD, const char *name)
+TFT_MIPI::TFT_MIPI(proto_t displayproto, PortName port, PinName CS, PinName reset, PinName DC, PinName WR, PinName RD, const char *name , unsigned int LCDSIZE_X, unsigned  int LCDSIZE_Y)
     : TFT(displayproto, port, CS, reset, DC, WR, RD, LCDSIZE_X, LCDSIZE_Y, name)
 {
     hw_reset();
@@ -26,7 +27,7 @@
     cls();
     locate(0,0); 
 }
-TFT_MIPI::TFT_MIPI(proto_t displayproto, int Hz, PinName mosi, PinName miso, PinName sclk, PinName CS, PinName reset, PinName DC, const char *name)
+TFT_MIPI::TFT_MIPI(proto_t displayproto, int Hz, PinName mosi, PinName miso, PinName sclk, PinName CS, PinName reset, PinName DC, const char *name , unsigned int LCDSIZE_X , unsigned  int LCDSIZE_Y )
     : TFT(displayproto, Hz, mosi, miso, sclk, CS, reset, DC, LCDSIZE_X, LCDSIZE_Y, name)
 {
     hw_reset(); //TFT class forwards to Protocol class