UniGraphic-Fork for ST7920-LCD-controller and SH1106. Tested with 128x64 LCD with SPI and 128x64-OLED with IIC
Dependents: UniGraphic-St7920-Test AfficheurUTILECO
Fork of UniGraphic by
Fork of the UniGraphic-Library for monochrome LCDs with ST7920 controller and 128x64-IIC-OLED-Display with SH1106-Controller

Had to adapt LCD for following reasons:
- Give access to screenbuffer buffer[] to parent class
- pixel() and pixel_read() as they are hardware-dependent
- added reset-pin to IIC-Interface
GraphicDisplay:: sends buffer to LCD when auto_update is set to true.
Testprogram for ST7920 can be found here:
https://developer.mbed.org/users/charly/code/UniGraphic-St7920-Test/
Revision 15:b9483ba842c8, committed 2015-02-23
- Comitter:
- Geremia
- Date:
- Mon Feb 23 16:05:16 2015 +0000
- Parent:
- 14:29bab588ba75
- Child:
- 16:244f9563ebc1
- Commit message:
- LCD macro undef workaround for KL46Z KL43Z, thanks ban4jp
Changed in this revision
--- a/Display/LCD.h Sun Feb 22 18:55:54 2015 +0000 +++ b/Display/LCD.h Mon Feb 23 16:05:16 2015 +0000 @@ -8,6 +8,10 @@ #include "SPI16.h" #include "Protocols.h" +// undefine the KL43Z and KL46Z LCD macro +#ifdef LCD +#undef LCD +#endif /** Draw mode * NORMAl
--- a/Display/TFT.cpp Sun Feb 22 18:55:54 2015 +0000
+++ b/Display/TFT.cpp Mon Feb 23 16:05:16 2015 +0000
@@ -18,7 +18,7 @@
#include "TFT.h"
-#include "mbed_debug.h"
+//#include "mbed_debug.h"
#define SWAP(a, b) { a ^= b; b ^= a; a ^= b; }
--- a/Inits/SSD1306.cpp Sun Feb 22 18:55:54 2015 +0000
+++ b/Inits/SSD1306.cpp Mon Feb 23 16:05:16 2015 +0000
@@ -132,5 +132,5 @@
{
contrast = o;
- wr_cmd16(0x8100|(o));
+ wr_cmd16(0x8100|(o&0xFF));
}
--- a/Inits/SSD1306.h Sun Feb 22 18:55:54 2015 +0000
+++ b/Inits/SSD1306.h Mon Feb 23 16:05:16 2015 +0000
@@ -40,7 +40,13 @@
* @param LCDSIZE_Y y size in pixel - optional
*/
SSD1306(proto_t displayproto, int Hz, PinName mosi, PinName miso, PinName sclk, PinName CS, PinName reset, PinName DC, const char* name , unsigned int LCDSIZE_X = 128, unsigned int LCDSIZE_Y = 64);
-
+
+ /** set the contrast of the screen
+ * @note here overrided because of not standard value range
+ * @param o contrast 0-255
+ */
+ virtual void set_contrast(int o);
+
protected:
