簡単で一般的な質問
カーネル4.9を搭載したBeagleboneBlackでDebian9(Stretch)を実行しています。オンラインで見つけた手順に従ってみましたが、これまでUARTデバイスを構成できなかったようです。デバイスを構成するにはどうすればよいですか?構成をデバッグ/トラブルシューティングするにはどうすればよいですか?構成が正しいかどうかを確認するにはどうすればよいですか?
長くて詳細な質問
私は組み込みLinux全般、特にBeagleboneに非常に慣れていません。ここに記載されている指示に従いました:
- BeagleBoard.org:はじめに
最新の「StretchIoT(グラフィカルデスクトップなし)for BeagleBone and PocketBeagle via microSD card」画像(具体的にはbone-debian-9.3-iot-armhf-2018-03-05-4gb.img)を最新の画像ページからダウンロードしてフラッシュしましたSDカードからのビーグルボード。インストール後、次の記事で説明されているのと同様の方法で、シリアルからUSBへのケーブルを介してLinuxデスクトップからBeagleboneにアクセスできました。
- シリアル経由でUSB経由でビーグルボーンブラックを接続する方法
次のscreen
を使用できました コマンドが正常に実行されました:
screen /dev/ttyUSB0 115200
また、Micro-USB-USBケーブルでSSH経由で接続することもできました:
ssh [email protected]
Beagleboneに接続したら、カーネルバージョンがLinux beaglebone 4.9.82-ti-r102
であることを確認しました。 。次に、BeagleboneUART構成に関するいくつかの記事を読みました。
-
Trevorの電子ブログ:Element 14 Beaglebone BlackrevCでUARTを有効にする
-
StackOverflow:BeagleboneBlackでUARTを有効にする
-
シングプリンター:ケープマネージャーが帰ってきた、ベイビー!
-
燃えるようなロータスガール:ビーグルボーンブラック–UART1を有効にする
-
Billwaaのブログ:起動時にすべてのUARTポートを有効にする
-
Tender Love Making(?):BeagleBoneでttyO1を有効にする
-
ELinux:BeagleBoneBlack Debian
私の持ち帰りは、(一般的に言えば)オペレーティングシステムとカーネルのバージョンに応じて、チェックする必要のあるいくつかの異なる構成ファイルがあるということでした。これらには次のものが含まれます:
-
/boot/uEnv.txt
-
/boot/uboot/uEnv.txt
-
/etc/default/capemgr
-
/media/BEAGLEBONE/uEnv.txt
次のようないくつかのデバイスファイルも言及されていました:
- /sys/devices/bone_capemgr.*/slots
さまざまなuEnv.txt
のそれぞれに次の各行を追加してみました ファイル:
-
cape_enable=capemgr.enable_partno=BB-UART1,BB-UART2,BB-UART4,BB-UART5
-
optargs=capemgr.enable_partno=BB-UART1,BB-UART2,BB-UART3,BB-UART5
また、/etc/default/capemgr
に次の行を追加してみました :
CAPE=BB-SPI-01,BB-UART1,BB-UART2,BB-UART4
再起動後、次のコマンドを使用して、UARTデバイスが表示されたかどうかを確認しました。
ls -l /dev/ttyO*
残念ながら、次の結果が得られました(予期しない結果):
[email protected]:~$ ls -l /dev/ttyO*
lrwxrwxrwx 1 root root 5 Jan 1 00:00 /dev/ttyO0 -> ttyS0
注:私はttyO0
には関心がありません 、ではなく、ttyO1, ..., ttyO5
。
他にもいくつか試しましたが、(時間とスペースを節約するために)要求されない限り、すべての試みについて説明することはしません。
私はここで何が間違っているのですか? UARTデバイスを有効にする正しい方法は何ですか?
関連:Office 365で2要素認証を有効にする方法は?承認された回答:
以下は、カーネル4.14を使用するDebian 9.9で機能します(Debian 8.3でも機能し、Debian 9.3では機能しませんでした)。
起動すると、/ dev / ttyO1、O2、O4ファイルが表示されますが、ピンを正しいpinmuxに設定するまで機能しません:
#ttyO1:
config-pin P9_24 uart
config-pin P9_26 uart
#ttyO2:
config-pin P9_21 uart
config-pin P9_22 uart
#ttyO4:
config-pin P9_11 uart
config-pin P9_13 uart
再起動するたびにその手順を実行する必要があります。ある種の起動スクリプトに属しています。
UARTが単純なループバックテストで機能していることを確認できます。 UART4の場合:
-
P9_11とP9_13の間にワイヤーを配置します
-
画面/dev/ ttyO4
-
ウィンドウに入力したテキストが表示され、ワイヤを切断すると、それ以上入力しても表示されません。 UARTは機能します。