Raspberry Pi 環境の設定#
イメージの書き込み#
書き込みが完了したら、電源を入れて起動します。
VNC の有効化#
設定(preferences)-> Raspberry Pi Configuration
Interfaces
を選択し、VNC のボタンをオンにします。
VNC ツールを使用して Raspberry Pi に接続し、仮想デスクトップを表示します。
Raspberry Pi のハードウェアシリアルポートの有効化#
GPIO シリアルポート機能を有効にし、ハードウェアシリアルポートを使用します。
sudo raspi-config
を実行してグラフィカルインターフェースに入ります。
メニューInterfacing Options -> 6 Serial
を選択します。
最初のオプション(would you like a login shell to be accessible over serial?)を NO に選択します。
2 番目のオプション(would you like the serial port hardware to be enabled?)を YES に選択します。
保存して再起動し、マッピング関係を確認します。serial0 は GPIO ピンに対応するシリアルポートであり、serial1 は Bluetooth に対応するシリアルポートです。デフォルトでは serial0 は無効です。現在のマッピング関係をls -l /dev/serial*
で確認します。
以前よりも gpio のシリアルポート serial0 が追加され、ttyS0 が使用されています。ここで GPIO シリアルポート機能が有効になっていますが、ソフトウェアシリアルポートを使用しています。
安定した信頼性のあるハードウェアシリアルポートを使用したい場合は、Raspberry Pi 3b + のハードウェアシリアルポートと mini シリアルポートのデフォルトのマッピングを交換する必要があります(まず Bluetooth を無効にする sudo systemctl disable hciuart
)。
/boot/config.txt
ファイルの末尾にdtoverlay=disable-bt
という行を追加し、コマンドラインで次のコマンドを入力します。
sudo systemctl disable hciuart
保存して再起動し、デバイスの対応関係を再確認するためにls -l /dev/serial*
を実行します。serial0 -> ttyAMA0 が表示されれば、設定が成功しています。
シリアルポートの受信テスト#
データの受信(エコーバック機能)
# -*- coding: utf-8 -*
import serial
import time
# シリアルポートを開く
ser = serial.Serial("/dev/ttyAMA0", 9600)
def main():
while True:
# 受信バッファの文字を取得
count = ser.inWaiting()
if count != 0:
# 内容を読み取り、エコーバック
recv = ser.read(count)
ser.write(recv)
# 受信バッファをクリア
ser.flushInput()
# 必要なソフトウェアの遅延
time.sleep(0.1)
if __name__ == '__main__':
# このファイルがスクリプトとして実行される場合
try:
main()
except KeyboardInterrupt:
# 例外処理
if ser != None:
ser.close()
import serial
でエラーが発生した場合は、python3-serial
モジュールをインストールしてください。
sudo apt-get install python3-serial
シリアルポートの送信テスト#
import serial
import time
ser = serial.Serial("/dev/ttyAMA0", 9600)
ser.flushInput() # 位置2
ser.write("begin".encode("utf-8")) # 串口发送字符串begin
def main():
while True:
count = ser.inWaiting()
if count != 0:
recv = ser.read(count)
ser.write("Recv some data is : ".encode("utf-8"))
ser.write(recv)
ser.flushInput()
time.sleep(0.1)
if __name__ == '__main__':
main()
仮想キーボードのインストール#
sudo apt-get install matchbox-keyboard
を実行します。
sudo apt-get install matchbox-keyboard --fix-missing
を実行します。
以下の画像でインストールが成功したことが確認できます。
Raspberry Pi に PyQt5 をインストール#
-
ソフトウェアソースを変更します。sudo nano /etc/apt/sources.list
-
このソフトウェアソースに変更します。deb http://mirrordirector.raspbian.org/raspbian/ stretch main contrib non-free rpi
-
アップデートします。sudo apt-get update
-
pyqt5 をインストールします。sudo apt-get install python3-pyqt5【大文字小文字に注意してください、間違っていません】。
-
Python3 を起動します。
-
import PyQt5を入力します。【大文字小文字に注意してください、間違っていません】。
-
エラーが表示されない場合、インストールが成功しています。