a-mizutani
2015年6月4日 11時08分
Armadillo-840のCON8のGPIOで割り込みを使用する事は可能ですか?
コメント
a-mizutani
なるほど
どうもありがとうございます
> 笹山です。
>
> > Armadillo-840のCON8のGPIOで割り込みを使用する事は可能ですか?
>
> 可能です。
>
> 下記は Armadillo-400シリーズ向けのドキュメントですが、Armadillo-840 でも同様の手順で使用できます。
>
> 第9章 Linux カーネルデバイスドライバー仕様 9.9. GPIO
> http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_soft…
>
>
> 下記表の PORTxx と /sys/class/gpioxx が対応しています。
>
> 表18.12 CON8 信号配列
> http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…
>
>
> ■参考情報
>
> Armadillo-800シリーズ 60ピン/100ピンコネクタ ピッチ変換基板
> http://armadillo.atmark-techno.com/option-products/SA-A800-B2BEXT-00
at_takashi.sasayama
笹山です。
申し訳ございません。
先に記載しました Armadillo-400 シリーズの GPIO sysfs 割り込みサンプルプログラムは、
Armadillo-800 シリーズでは正常に動作しないことがわかりました。
Armadillo-800シリーズでは、以下の POLLIN に設定している個所を、
POLLPRI もしくは POLLERR に変更すると正常に動作します。
24 pfd.fd = fd; 25 pfd.events = POLLPRI; /* POLLIN から POLLPRI に変更 */ 26 pfd.revents = 0;
また、割り込みを検出できるピンは IRQ が割り当てられているピンに限られます。
Armadillo-840 CON8 ですと、以下のピンが該当します。
ピン番号 GPIO 15 PORT38(IRQ25) 52 PORT180(IRQ24)
■参考情報
linux-3.4-at/Documentation/gpio.txt
ファイル | ファイルの説明 |
---|---|
gpio_sysfs_a840.c | Armadillo-840 GPIO sysfs 割り込みサンプルプログラム |
at_takashi.sasayama
笹山です。
度々、申し訳ございません。
linux-3.4-at/Documentation/gpio.txt によりますと、
POLLPRI と同時に POLLERR も設定する必要がありました。
その為、以下の様に修正するのが正しいです。
24 pfd.fd = fd; 25 pfd.events = POLLPRI | POLLERR; /* POLLIN から POLLPRI | POLLERR に変更 */ 26 pfd.revents = 0;
ファイル | ファイルの説明 |
---|---|
gpio_sysfs_a840_rev2.c | Armadillo-840 GPIO sysfs 割り込みサンプルプログラム 修正版 |
at_takashi.sasayama
2015年6月4日 13時32分
笹山です。
> Armadillo-840のCON8のGPIOで割り込みを使用する事は可能ですか?
可能です。
下記は Armadillo-400シリーズ向けのドキュメントですが、Armadillo-840 でも同様の手順で使用できます。
第9章 Linux カーネルデバイスドライバー仕様 9.9. GPIO
http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_soft…
下記表の PORTxx と /sys/class/gpioxx が対応しています。
表18.12 CON8 信号配列
http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…
■参考情報
Armadillo-800シリーズ 60ピン/100ピンコネクタ ピッチ変換基板
http://armadillo.atmark-techno.com/option-products/SA-A800-B2BEXT-00