hirakawa_yf
2022年1月5日 16時30分
armadillo610のHOST機能USBを介してマイコン間のUSB通信を確認しています
確認環境、方法を下記のとおりです。
マイコンAとマイコンBをそれぞれarmadillo610のTYPEA USBの上下段に接続
マイコンAからマイコンBに対しPollコマンドを送信:マイコンAの送信割込みは正常に完了
マイコンBの受信割込みは未検出
上記の状況より、armadilloからマイコンBに対し、マイコンAからのPollコマンドを
送信していないように思われます
armadilloがマイコンA,Bへの通信を行うためのalmadilloに対しての設定項目、確認内容等
ご教示いただきたく存じます
armadilloとPCをUSB接続し、下記コマンドへの応答を確認しましたので添付いたします
コマンド1:ls /dev/ttyACM*
コマンド2:sudo LANG=C systemctl status system_init_test.service
お忙しいところ恐れ入りますが宜しくお願い申し上げます
ファイル | ファイルの説明 |
---|---|
armadillo.bin | PC USBシリアル通信LOG |
armadillo_USB_log.txt | PC USBシリアル通信コマンドレスポンス抜粋 |
at_shinya.koga
2022年1月7日 13時03分
アットマークテクノの古賀です。
hirakawa_yf さん:
>armadillo610のHOST機能USBを介してマイコン間のUSB通信を確認しています
この構成について質問ですが、二つのマイコンが、それぞれ USB デバイスとして振舞い、USB ホストの Armadillo を介して相互通信できるようにしたい、という理解で合っているでしょうか?
おそらく、以下の「コマンド2」に出現している system_init_test.service が、二つのマイコン(二つの USB デバイス)の仲介役となるプログラムであり、「コマンド1」の 'ls /dev/ttyACM*' の結果出力されている
/dev/ttyACM0 /dev/ttyACM1
が、二つのマイコンに対応しているのだろうと思います(添付して頂いた armadillo.bin を拝見しました)。もし違っていましたら、教えて下さい。
上記の認識で合っている場合、二つのマイコンは、どちらも USB CDC ACM デバイスとして振舞い、system_init_test.service が、一方の CDC ACM デバイスから受信したデータをもう一方の CDC ACM デバイスに送信する、という仕組みなのだと思います。
>確認環境、方法を下記のとおりです。
>
>マイコンAとマイコンBをそれぞれarmadillo610のTYPEA USBの上下段に接続
>マイコンAからマイコンBに対しPollコマンドを送信:マイコンAの送信割込みは正常に完了
> マイコンBの受信割込みは未検出
>上記の状況より、armadilloからマイコンBに対し、マイコンAからのPollコマンドを
>送信していないように思われます
>armadilloがマイコンA,Bへの通信を行うためのalmadilloに対しての設定項目、確認内容等
>ご教示いただきたく存じます
>armadilloとPCをUSB接続し、下記コマンドへの応答を確認しましたので添付いたします
>コマンド1:ls /dev/ttyACM*
>コマンド2:sudo LANG=C systemctl status system_init_test.service
system_init_test.service の動作の詳細が分からないので、コメントするのが難しいですが、要因切り分けのため、Armadillo で minicom を起動して、「マイコンA」に割当たっている方の /dev/ttyACMx (ACM0 or ACM1) からデータを受信できるかどうか確認してみる、というのは、いかがでしょうか?