2020年11月10日火曜日

Raspberry Pi に I2C接続のLCD AQM1602Aを繋げる。Python

 早速買ってあったAQM1602Aを繋げようとググり始めたら早速不具合がある事が分かり、モチベーションダウン↓

2.2Kのプルダウンが必要との事。

気を取り直してPythonのスクリプトを書いてみる。

私はpigpio libraryを使うので、こちらのページでのサンプルを置き換えてみました。

https://www.denshi.club/pc/raspi/i2c.html

しかし、実行してもエラーI2Cのおまじないが必要でした。

sudo raspi-config で 5.Interfacing Option を選択して P5 I2C を Enableにして下記プログラムで全て1を液晶に表示できました。

lcdtest.py

import pigpio

import time



addr = 0x3e

_command=0x00

_data=0x40

_clear=0x01

_home=0x02

display_On=0x0f

LCD_2ndline=0x40+0x80


pi = pigpio.pi()

h = pi.i2c_open(1,addr)


pi.i2c_write_byte_data(h, _command, 0x38)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, 0x39)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, 0x14)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, 0x73)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, 0x56)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, 0x6c)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, _home)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, _clear)

time.sleep(0.2)

pi.i2c_write_byte_data(h, _command, display_On)

time.sleep(0.2)


while 1:

pi.i2c_write_byte_data(h, _data, 0x31)

time.sleep(0.2)



0 件のコメント:

コメントを投稿