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 GraphicsDisplay

Fork of the UniGraphic-Library for monochrome LCDs with ST7920 controller and 128x64-IIC-OLED-Display with SH1106-Controller

/media/uploads/charly/20170522_210344.jpg

/media/uploads/charly/20180425_230623.jpg

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/

Changes

RevisionDateWhoCommit message
38:1b6f9fc49a03 2018-10-30 charly some modifications. default tip
37:5de028b08308 2018-04-25 charly Restored SSD1306.
36:668396f861d2 2018-04-22 charly Added SH1106 for OLED Display 128x64 via IIC
35:b8d3f1e68000 2017-05-21 charly buitify
34:a9648877491f 2017-05-20 charly First working Version with 128x64LCD with ST7920-COntroller;
33:f87f06292637 2017-02-06 dreschpe Add I2C protocol. ; Add SSD1306 i2C modus
32:9cd6227dc7a6 2016-05-02 dreschpe If char is not in font, print blank.; Useful if you have a number only font and want to format output.
31:ef4225cef157 2016-04-01 Rhyme The width and height of SEPS225 are 0x80, but I mistook it to 0x7F in the first version and have fixed them in later version, but in the newest version we had the return of 0x7F, so I try to fix them to 0x80 again.
30:87855d03d91a 2015-11-29 Geremia Add ILI9320 init to ILI932x
29:866213bb9bf0 2015-11-28 Geremia Add ILI9327 and S6D04D1 (240x400 displays)
28:2b562717a864 2015-11-28 Geremia fix ILI932x spi
27:acb2594b8aa4 2015-10-26 dreschpe fix handling of PAR8 / PAR16 includes
26:09c1d5110134 2015-10-18 dreschpe Add GCC defines to the font files to enable compiling with gcc
25:daacdcf34e52 2015-10-18 dreschpe Add check if platform supports par port mode
24:1a2ebae1d289 2015-06-22 Rhyme SEPS225 window function started working
23:d0eb35bbd2f3 2015-06-18 Rhyme SEPS225 added and still being worked
22:f9a37f22b9cb 2015-06-11 Geremia Add set_font_zoom(x_mul, y_mul)
21:ae0a4eedfc90 2015-03-31 Geremia Add BUS_8 and BUS_16 (slow as expected)
20:14daa48ffd4c 2015-03-23 Geremia Add ILI 9320/9325/9328 custom TFT932x class, parallel/spi 8/16bit, with orientation, scroll, pixelread, fastwindow.; Par8 and 16 tested, SPI not at all, needs checking if the CS toggle is necessary (see SPI8.cpp SPI16.cpp).
19:1bdfb971b2c1 2015-03-02 Geremia Added LCD ST7565, the very basic std one, tested also on UC1701
18:ffa58f1a680a 2015-03-02 Geremia Added LCD ST7565, compatible with UC1701
17:1dafb896c6f5 2015-02-24 dreschpe Add SSD1306 scroll functions
16:244f9563ebc1 2015-02-23 Geremia revised Bitmap() for faster plotting
15:b9483ba842c8 2015-02-23 Geremia LCD macro undef workaround for KL46Z KL43Z, thanks ban4jp
14:29bab588ba75 2015-02-22 dreschpe correct doku
13:d8c593fa7705 2015-02-22 Geremia multibyte cmds workaround for compatibility with actual SPI_16 NOP trick (see LCD class wr_cmd8)
12:9c8f3076347c 2015-02-22 dreschpe Add SSD1306 OLED Driver
11:b842b8e332cb 2015-02-20 Geremia added auto_gram_read_format() to TFt inits. Even if write is set to 16bit RGB color, for some controllers the read cmd outputs 18bit BGR. Now that function will autodetect and set internal flags accordingly, so pixelread() is always correct.
10:668cf78ff93a 2015-02-19 Geremia Added FastWindow for TFT (truncated set page/column cmds), which increases speed when plotting single pixels (around 20-25% faster?!?!)
9:1749ae993cfe 2015-02-17 dreschpe Add param LCDSIZE_x, LCDSIZE_Y to constructor. They are optional.
8:26757296c79d 2015-02-17 Geremia Fixed scroll for smaller area, better font spacing
7:bb0383b91104 2015-02-17 Geremia TFT: added get deviceID, scroll functions
6:8356d48a07db 2015-02-16 Geremia updated docs
5:b222a9461d6b 2015-02-16 Geremia Added pixelread for TFTs
4:12ba0ecc2c1f 2015-02-15 Geremia Added PAR16, separated 16bit writes for cmd parameters and pixeldata
3:48f3282c2be8 2015-02-14 Geremia small things
2:713844a55c4e 2015-02-13 Geremia Initial TFT implementation, needs to add read cmds
1:ff019d22b275 2015-02-13 Geremia Added SPI_16, LCD done
0:75ec1b3cde17 2015-02-12 Geremia Initial tests, LCD par and spi ok