kazukitakahashi
2019年2月12日 18時52分
Armadillo-IoT G3Lで、外にデジタル出力(出力のGPIO)を出すことはできないでしょうか?
Armadillo-IoT G3Lから一本信号線を外に出して、High/Lowを出力し制御したい装置がございます。
理想はCON4 シリアルインターフェースの5,6番ピンを出力のGPIOにすることなのですが、おそらくRS422専用なので無理
保障外になってもかまわないので、CON5 デバッグシリアルインターフェースや他の空き端子、スルーホールなど
ケースを開けて、中の基板にはんだ付けするような改造の形でも、出力GPIOを外に一つ追加することはできないでしょうか。
コメント
kazukitakahashi
y.nakamura
中村です。
横から失礼します。
> 記載いただきましたとおり、CON5デバッグシリアルインターフェースを使うのが楽そうです。
...
> USBシリアル変換アダプタの5、7ピンのケーブルを抜いてしまうのが良さそうです。。
このコネクタに、これの7Pのが使えそうです。
http://www.aitendo.com/product/1221
少し前にArmadilloとは関係のない別件の探しものをしていて
(そのときに探していたのは在庫切れの6Pでした)、
「これ、Armamadilloで使えるじゃん!」とメモしておいたものです。
--
なかむら
kazukitakahashi
kazukitakahashi
y.nakamura
at_koseki
2019年2月12日 19時59分
古関です。
> Armadillo-IoT G3Lで、外にデジタル出力(出力のGPIO)を出すことはできないでしょうか?
> Armadillo-IoT G3Lから一本信号線を外に出して、High/Lowを出力し制御したい装置がございます。
以下、外付けのリモートI/Oモジュールを使ったhowtoもございますが、
コスト高になってしまいますし、簡易的にできる手段があるといいですよね。。。
https://armadillo.atmark-techno.com/howto/connect-armadillo-iot-g3l-wit…
> 理想はCON4シリアルインターフェースの5,6番ピンを出力のGPIOにすることなのですが、おそらくRS422専用なので無理
はい。
ご指摘の通りここはRS485/422専用で
トランシーバーも間に入っておりGPIOにはできません。
> 保障外になってもかまわないので、CON5デバッグシリアルインターフェースや他の空き端子、スルーホールなど
> ケースを開けて、中の基板にはんだ付けするような改造の形でも、出力GPIOを外に一つ追加することはできないでしょうか。
保証対象外となりますが、以下案となります。
記載いただきましたとおり、CON5デバッグシリアルインターフェースを使うのが楽そうです。
以下、CTS/RTSの以下2ピンを、GPIOに割り当てる場合の手順例です。
USBシリアル変換アダプタの5、7ピンのケーブルを抜いてしまうのが良さそうです。。
※ ごめんなさい、手順の実動作確認はしていません。
* UART_DBG_CTS_B -> GPIO1_IO05
* UART_DBG_RTS_B -> GPIO1_IO04
Linux-Kernelの arch/arm/boot/dts/armadillo_x1l.dts を変更
ビルドして、Armadillo-IoT G3Lの "armadillo_iotg_g3l.dtb" を書き換え。
---------------------------------------------------------------------
pinctrl_lpsr_uart5: lpsr_uart5grp {
fsl,pins = <
MX7D_PAD_GPIO1_IO07__UART5_DCE_TX 0x00
MX7D_PAD_GPIO1_IO06__UART5_DCE_RX 0x70
MX7D_PAD_GPIO1_IO05__UART5_DCE_RTS 0x10 ※削除
MX7D_PAD_GPIO1_IO05__GPIO1_IO5 0x00 ※追加
MX7D_PAD_GPIO1_IO04__UART5_DCE_CTS 0x00 ※削除
MX7D_PAD_GPIO1_IO04__GPIO1_IO4 0x00 ※追加
>;
};
---------------------------------------------------------------------
書き換え後、Armadillo-IoT G3Lを起動して以下のコマンドを実行
# echo 5 > /sys/class/gpio/export
# echo 4 > /sys/class/gpio/export
GPIO1_IO05 を out にしてhigh/lowする
# echo out > /sys/class/gpio/gpio5/direction
# echo 1 > /sys/class/gpio/gpio5/value
# echo 0 > /sys/class/gpio/gpio5/value
> ・・他の空き端子、スルーホールなど
こちらも確認してみましたが、ちょうどいいのがありませんでした。
CON6は改造が楽そうですが、JTAG専用ピンでGPIOにはできません。
よろしくお願いします。