Armbian で Orange PI PC+ で SPI を有効にする方法は?

Armbian で Orange PI PC+ で SPI を有効にする方法は?

私は自分のボードで SPI を動作させようとしています。私が思いついたのは次のことです:

  • SPI は ARMBian ではデフォルトで有効になっていないため、最初に有効にする必要があります (対応する DT オーバーレイを有効にします)
  • LinuxではSPIは/dev/spidev*.*ファイル経由でのみアクセスできます。
  • 開発フォルダにSPIデバイスが表示されない場合は、ボード上でSPIが有効になっていません。
  • 最新バージョンのarmbianでは、spiはarmbain-config(System/Hardware/spi-spidevの下)で有効にできます。
  • /boot/script.bin以前のバージョンでは、fexファイルに逆コンパイルし、そこでSPIを有効にして再度コンパイルする必要がありました。 

Armbian Bionic をクリーン インストールし (以前に Stretch も試しました)、更新して spi-spidev を有効にし、ボードを再起動しましたが、それでも spidev ファイルは取得されませんでした。 

これが私のarmbianmonitor ログSPI が有効になっているかどうかを確認する方法は次のとおりです。

dima@orangepipcplus:~$ cat /boot/armbianEnv.txt
verbosity=1
logo=disabled
console=both
disp_mode=1920x1080p60
overlay_prefix=sun8i-h3
rootdev=UUID=09e9478d-c7f2-4b16-a2d7-66f5313ff813
rootfstype=ext4
overlays=spi-add-cs1 spi-jedec-nor spi-spidev
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u
dima@orangepipcplus:~$ ls /dev/*spi*
ls: cannot access '/dev/*spi*': No such file or directory

could not open /dev/spidev0.0ところで、私の目標はnrf24l01通信を備えたスマートホームプロジェクトを作成することですが、 (正確な貼り付けではありません)というスクリプトエラーで行き詰まっています。

私の質問は次のとおりです。ファイルが表示されるように spi を有効にするにはどうすればいいですか/dev/spidev*.*?

答え1

ああ、これは本当に馬鹿げた話だ。私はただこれについて読む必要があったデバイスツリーオーバーレイ気をつけて。

必要な SPI パラメータを設定していませんでしたparam_spidev_spi_bus。これがarmbianEnv.txt現在の状態です:

verbosity=1
logo=disabled
console=both
disp_mode=1920x1080p60
overlay_prefix=sun8i-h3
rootdev=UUID=09e9478d-c7f2-4b16-a2d7-66f5313ff813
rootfstype=ext4
overlays=spi-spidev
param_spidev_spi_bus=0
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u

ご了承くださいアームバイン構成このパラメータは設定されないため、このツールのみを使用して SPI を動作させることはできません。そのため、現時点では直接編集する方が簡単ですarmbianEnv.txt

答え2

私はOrange Pi Liteを持っていますアルムビア語インストールしました。MCP3208 アナログ - デジタル コンバーターを使用していくつかのセンサーからデータを取得し、rattrapper の指示どおりに実行しましたが、私の場合、SPI インターフェイスが機能しませんでした。最終的に、次の操作を実行して解決しました。

  1. コマンドラインで: sudo armbian-config -> system -> hardware -> enable spi-spidev
  2. param_spidev_spi_bus = 0rattraper が /boot/armbianEnv.txt ファイルで説明しているように、SPI パラメータを確認します。オーバーレイには spi-spidev が書き込まれている必要があります。
  3. 次のコマンドを使用して、ライブラリ spidev がインストールされていることを確認します。 sudo pip3 install spidev
  4. 最後に、スクリプトに spidev ライブラリをインポートしていることを確認します。import spidev

これは私にとっては効果があった方法なので、あなたにも効果があることを願っています。

関連情報