Tangwx

Tangwx

博客网站

ラズベリーパイの環境設定

Raspberry Pi 環境の設定#

イメージの書き込み#

image-20230217202807072

書き込みが完了したら、電源を入れて起動します。

VNC の有効化#

設定(preferences)-> Raspberry Pi Configuration
Interfacesを選択し、VNC のボタンをオンにします。

image-20230217203141423

image-20230217203229798

VNC ツールを使用して Raspberry Pi に接続し、仮想デスクトップを表示します。

image-20230217203058361

Raspberry Pi のハードウェアシリアルポートの有効化#

GPIO シリアルポート機能を有効にし、ハードウェアシリアルポートを使用します。
sudo raspi-configを実行してグラフィカルインターフェースに入ります。
メニューInterfacing Options -> 6 Serialを選択します。

image-20230217204854148

image-20230217204928814

最初のオプション(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*で確認します。

image-20230217205312764

以前よりも 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 が表示されれば、設定が成功しています。

image-20230217210932567

シリアルポートの受信テスト#

データの受信(エコーバック機能)

# -*- 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を実行します。

image-20230218102819936

sudo apt-get install matchbox-keyboard --fix-missingを実行します。

image-20230218102854604

以下の画像でインストールが成功したことが確認できます。

image-20230218103022698

Raspberry Pi に PyQt5 をインストール#

  1. ソフトウェアソースを変更します。sudo nano /etc/apt/sources.list

  2. このソフトウェアソースに変更します。deb http://mirrordirector.raspbian.org/raspbian/ stretch main contrib non-free rpi

  3. アップデートします。sudo apt-get update

  4. pyqt5 をインストールします。sudo apt-get install python3-pyqt5【大文字小文字に注意してください、間違っていません】。

    image-20230218105841356

  5. Python3 を起動します。

  6. import PyQt5を入力します。【大文字小文字に注意してください、間違っていません】。

    image-20230218105858552

  7. エラーが表示されない場合、インストールが成功しています。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。