以往控制LCD1602模組需要透過Data line與Control line等多條線驅動導致占用多個I/O,而LCM1602是於LCD模組增加驅動IC,也就是在原本控制系統與被控制的硬體之間增加轉換器,而這轉換器的介面為I2C,因此只需要4條線就能控制LCD1602模組,減少驅動控制與I/O的占用。LCD
[硬體連接圖]
[說明]
RPLCD 支援I2C LCD項目
檢查LCM1602的I2C Device address
輸入指令: i2cdetect -y 1
確認Address為0x27
若有多組LCM可透過LCM1602後方的A0,A1,A2進行設置
出現錯誤訊息"Remote I/O error" 代表無法與硬體進行連接
[程式碼]
import sys
import time
from RPLCD.i2c import CharLCD
lcd = CharLCD('PCF8574', address=0x27, port=1, backlight_enabled=True)
try:
print('按下 Ctrl-C 可停止程式')
lcd.clear()
while True:
lcd.cursor_pos = (0, 0)
lcd.write_string("Date: {}".format(time.strftime("%Y/%m/%d")))
lcd.cursor_pos = (1, 0)
lcd.write_string("Time: {}".format(time.strftime("%H:%M:%S")))
time.sleep(1)
except KeyboardInterrupt:
print('關閉程式')
finally:
lcd.clear()
留言列表