Skip to main content

A simple library for controlling JHD128X64E GLCDs

Project description

128x64 Graphical LCD Display

A simple library for JHD128x64E GLCD, this GLCD consists 2 KS0108 chip which developed by Samsung electronics is a LCD driver LSl with 64 channel output for dot matrix liquid crystal graphic display system. It has the internal display RAM for storing the display data transferred from a 8 bit microcontroller and generates the dot matrix Liquid crystal driving signals corresponding to stored data. This library can display all Alphabets in English language both CAPS and small, numbers from 0 to 9 and standard special characters.

Resources

  • For datasheets of JHD128x64E and KS0108 please refer Docs

Hardware support

  • Raspberry Pi Zero W
  • Raspberry Pi 3 B+
  • Raspberry Pi 4

Limitations:

  • Cannot display any kind of images
  • Does not support display other than JHD128X64E GLCD
  • No scroll option available
  • Tested only with Raspberry Pi

Installation

To install the library just type:

pip install glcd-jhd128x64

Available methods

  • Pinmap
GLCD = glcd_jhd128x64e.KS0108(rs=4, rw=7, en=8, d0=9, d1=10, 
                              d2=11, d3=14, d4=15, d5=17, 
                              d6=18, d7=25, chip_set0=22, 
                              chip_set1=23, reset=24)

Here the pin numbers can be changed for the user's convenience.

  • Initialization
GLCD.start()

This function is used to initialize display, it sends command to turn ON display and clears the memory.

  • Setting cursor position
GLCD.set_cursor()

This function takes 3 arguments which are: chip to be used, line from where data is to be displayed and from which column the data must be displayed.

  • Line selection
GLCD.go_to_line()

This function takes one argument where the user can specify from which line data is to be displayed.

  • Shift to next line
GLCD.go_to_nextline()

This function will shift to next line and display the data.

  • Display data
GLCD.print_str()

This function will display string or integer or character on the display.

  • Display a character
GLCD.print_chr()

This function will display a character on the display

Usage examples

  • In this example, a string and a character is displayed on the GLCD continuously starting chip 0, line 0 and cursor 0
import glcd_jhd128x64e    

      
def main():
    GLCD = glcd_jhd128x64e.KS0108(rs=4, rw=7, en=8, d0=9, d1=10, 
                              d2=11, d3=14, d4=15, d5=17, 
                              d6=18, d7=25, chip_set0=22, 
                              chip_set1=23, reset=24)
    GLCD.start()
    GLCD.set_cursor(0, 0, 0)
    GLCD.print_str("Hello! How are you")
    GLCD.print_chr("?")
        
            
if __name__ == "__main__":
    main()
  • In this example DTH11 sensor data is displayed on GLCD, The sentence will be written on line 0, 1, 2 using both the chips, temperature is displayed on line 3 of chip 0 and humidity is displayed on line 3 of chip 1
import glcd_jhd128x64e
import Adafruit_DHT
import time


def main():
    GLCD = glcd_jhd128x64e.KS0108(rs=4, rw=7, en=8, d0=9, d1=10,
                                  d2=11, d3=14, d4=15, d5=17,
                                  d6=18, d7=25, chip_set0=22,
                                  chip_set1=23, reset=24)
    hum, temp = Adafruit_DHT.read_retry(11, 26)
    time.sleep(2)
    GLCD.start()
    while True:
        GLCD.set_cursor(0, 0, 0)
        GLCD.print_str("This example displays\nTemperature, humidity")
        GLCD.go_to_nextline()
        GLCD.print_str("from DHT11 sensor")
        GLCD.set_cursor(0, 4, 0)
        GLCD.print_str("Temp: ")
        GLCD.print_str(temp)
        GLCD.print_chr("C")
        GLCD.set_cursor(1, 4, 0)
        GLCD.print_str("Hum: ")
        GLCD.print_str(hum)
        GLCD.print_chr("%")


if __name__ == "__main__":
    main()

Note: While displaying dynamic data the function used to set cursor potion and to display data must be in while loop, "\n" will shift the data to the next line in display.

Main references

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

glcd-jhd128x64-1.0.1.tar.gz (7.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page