This project simplifies the use of KS0108-based monochrome graphic LCD modules. These displays have an 8-bit parallel interface and control signals that would need at least 14 port pins of your host system, but this interface allows you to use just two I2C lines plus an additional buffer flag line to display text and graphics. But most important: this intelligent interface offers a complete set of text and graphic commands to control the display and six character fonts of different heights and widths, freeing your host system from time-consuming graphic operations and critical timing issues.
There are many displays with KS0108 controllers, we divided the most common versions (yes: there are more!) into three types: Type 1 (128 x 64 pixels) and Type 2 (4”, 64 x 192 pixels) with square pixels and Type 3 (3.3” 192 x 64 pixels) with rectangular pixels. Every type has its own pin arrangement on the interface connector and also the location of the connector on the displays differs. The third type is less suited for graphic applications due to its non-isometric pixels: squares will look like rectangles on these displays and circles will become ovals. The PCB for this project is designed for Type 1 and Type 2: it has two connectors (one for either type) and a jumper that switches the firmware to the correct resolution at power on.
Smart I2C interface for graphic LCDs 
5. März 2018