kan_harada
2024年10月31日 13時17分
お世話になります。Armadillo-X2のCON11のマルチプレクスを変更してUART3,4を使えるようにしようとしています。
https://armadillo.atmark-techno.com/blog/615/21936
マニュアルや上記ページを参考にして、
- カーネルソースをインストール→default configを実行
- at-dtweb/mkswuを使ってデバイスツリー設定のat-dtweb.swuファイルを作成
- abos webでX2に書込み
としていますが・・まるで通信できてる感じがないので、CON11の11,13番ピンUART4(RX,TX),8,10番ピンUART3(RX,TX)の電圧をみてみたところ、両方とも1.8Vです。これはデバイスツリーの更新ができていないということでしょうか? その場合、どこか手順が間違っている(抜けている)のでしょうか?
※デバイスツリー設定設定中の画面を貼付します。
ファイル | ファイルの説明 |
---|---|
ATDE画面.png |
コメント
kan_harada
早速のご回答、ありがとうございます。マルチプレクスの設定に問題なしとのことで、そこに自信がついたのでもう一度確認してみました。
開発中のシステムではサブ基板を作って、レベル変換ICはそちららに載せてあります。そのサブ基板側にオシロのプローブを接続して波形をみていたのですが、Armadillo側に接続して波形を確認したところ、Armadillo側からのデータ送出に応じてTXが正常に出ていることが確認できました。
一方で、サブ基板側の同じ端子でTXに変化が出ないことから、この基板間の接触不良が怪しいと結論づけました。基板実装用のヘッダーコネクタを2連結しているのですが、どうもその連結部分の接触だったようです。この接続部を修正して再度トライしてみます。
どうもありがとうございました。
ファイル | ファイルの説明 |
---|---|
image001.png | TXが出た波形を貼付します。RXは変化なしです。 |
at_shota.shimoyama
2024年10月31日 14時57分
下山です。
デフォルトのデバイスツリーの状態では11,13,8,10番ピンの電圧は0Vですが、
UART3・UART4に変更したデバイスツリーの状態では1.8Vになります。
ですので、デバイスツリーの更新は問題なくできていると思われます。
通信ができていない原因の1つとして信号レベルの不一致が考えられます。
11,13,8,10番ピンの信号レベルは1.8V(Low: 0V, High: 1.8V)ですので、
UARTの通信を行うためには、
・通信相手のUARTの信号レベルも1.8V
または
・通信相手のUARTの信号レベル↔1.8Vのレベル変換回路を仲介させる
必要があります。
まずはこの点については問題ないでしょうか?
もし問題ない場合は
・通信相手機器の詳細な情報
・通信方法(X2側で使用しているコマンドや手順など)
についてお教えいただけますと幸いです。
よろしくおねがいします。