from machine import Pin
from time import sleep
from lcd_library import LCD
# Initialize the LCD
lcd = LCD(rs=4, en=5, d4=12, d5=13, d6=14, d7=15)
# -------- BASIC TEXT PRINTING --------
lcd.set_cursor(0, 0)
lcd.print("MicroPython")
sleep(2)
# -------- DELETE CHARACTERS --------
lcd.delete_chars(0, 5, 3) # Delete 3 characters from position (0,5)
sleep(1)
# -------- BACKSPACE FUNCTION --------
lcd.backspace(0, 7) # Erase character at (0,7) and shift left
sleep(1)
# -------- SHIFT LEFT FUNCTION --------
lcd.set_cursor(0, 0)
lcd.print("ShiftLeftTest")
sleep(1)
lcd.shift_left(0, 5) # Shift text left from position (0,5)
sleep(2)
# -------- SHIFT RIGHT FUNCTION --------
lcd.set_cursor(1, 0)
lcd.print("ShiftRightTest")
sleep(1)
lcd.shift_right(1, 5) # Shift text right from position (1,5)
sleep(2)
# -------- SCROLLING TEXT --------
lcd.scroll_text("Welcome to MicroPython!", row=0, delay=0.2)
# -------- CENTER TEXT --------
lcd.clear()
lcd.center_text("Centered Text", row=0)
sleep(2)
# -------- FLASHING TEXT --------
lcd.flash_text("ALERT!", row=1, col=4, times=5, delay=0.5)
# -------- CUSTOM CHARACTERS (SMILEY) --------
smiley = [
0x00, 0x0A, 0x00, # Eyes
0x11, 0x0E, # Mouth
0x00, 0x00, 0x00 # Bottom padding
]
lcd.create_char(0, smiley)
lcd.print_custom_char(0, 0, 5) # Display smiley at row 0, column 5
sleep(2)
# -------- FINAL MESSAGE --------
lcd.clear()
lcd.center_text("Demo Complete!", row=0)