カテゴリー
お知らせ

備忘録 1.44inch LCD HAT

 これは自分のためのメモです。
 この備忘録を見られて真似されても結構ですが、動作の保証は出来かねます。
 また、真似られたことで不測の不具合が発生しましても、私は一切の責任を負いません。


www.waveshare.com/wiki/1.44inch_LCD_HAT

wikiに倣い、config.txtを修正する。

wikiに倣い、config.txtを修正する。

# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on ← コメントアウトを外す
#dtparam=i2s=on
dtparam=spi=on ← コメントアウトを外す

check whether SPI is occupied. If the terminal outputs /dev/spidev0.1 and /dev/spidev0.1, SPI is not occupied.

$ls /dev/spi*


ライブラリーのインストール
BMC2835関係のみ必要。(wikiにあるWiringPiは不要)
ここで最新を確認する。

2023年9月22日時点で バージョン1.73

#Open the Raspberry Pi terminal and run the following command
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.73.tar.gz
tar zxvf bcm2835-1.73.tar.gz
cd bcm2835-1.73/
sudo ./configure && sudo make && sudo make check && sudo make install
# For more information, please refer to the official website: http://www.airspayce.com/mikem/bcm2835/

Pythonのライブラリーをpipインストールする
#python3
sudo apt-get update
sudo apt-get install python3-pip
sudo apt-get install python3-pil
sudo apt-get install python3-numpy
sudo pip3 install RPi.GPIO
sudo pip3 install spidev

waveshare提供のサンプルプログラムをダウンロード
sudo apt-get install p7zip-full -y
wget https://files.waveshare.com/upload/f/fa/1.44inch-LCD-HAT-Code.7z
7z x 1.44inch-LCD-HAT-Code.7z
sudo chmod 777 -R 1.44inch-LCD-HAT-Code
cd 1.44inch-LCD-HAT-Code/RaspberryPi/


pi@raspberrypi:~/1.44inch-LCD-HAT-Code/RaspberryPi/python $ cat test.py
import LCD_1in44
import LCD_Config
import time
import config
import traceback
import ipget

from PIL import Image,ImageDraw,ImageFont,ImageColor
tempfile='/sys/class/thermal/thermal_zone0/temp'

def getTemp():
    with open(tempfile, 'r') as f:
        rdata = f.readline()
        t = float(rdata)/ 1000.0
    return t

target_ip = ipget.ipget()
print(target_ip.ipaddr("wlan0"))
wlan_ip = target_ip.ipaddr("wlan0")

t = getTemp()
cputemp = 'cputemp=%2.2f C' % (t)



LCD = LCD_1in44.LCD()

Lcd_ScanDir = LCD_1in44.SCAN_DIR_DFT  #SCAN_DIR_DFT = D2U_L2R
LCD.LCD_Init(Lcd_ScanDir)
LCD.LCD_Clear()

image = Image.new("RGB", (LCD.width, LCD.height), "BLACK")
#image = Image.new("RGB", (LCD.width, LCD.height), "WHITE")
draw = ImageDraw.Draw(image)
#font = ImageFont.truetype('/usr/share/fonts/truetype/freefont/FreeMonoBold.ttf', 16)

draw.text((0, 0), wlan_ip, fill = "WHITE")
draw.text((0, 20), cputemp, fill = "WHITE")


LCD.LCD_ShowImage(image,0,0)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です