GPIO(General Purpose Input/Output) 端子の制御

2002/09/26-


■概要
S1S60000(SEIKO EPSON社)は,GPIOを16ポート搭載しています.インターネットエクスプローラなどのブラウザを利用し,次のように状態を確認したり,制御が簡単に行えます.ここでは,GPIOの制御について説明します.「内蔵レジスタ」の変更も必要になりますので,どうぞサンプルプログラムをご利用ください.→ダウンロード

http://192.168.0.254:8080/GPIO/0X



■内蔵レジスタの確認
ダウンロードしたプログラムを実行すると,次のようなウィンドウが現れます.これは「内蔵レジスタの読み書き」で利用したプログラムに,システム端点に対する「オープン」と「初期化」の処理を加えたものです.仮想COMポートの起動である「接続」ボタンを押し,「読込開始」を押します.順に,レジスタの内容を読込みます.


次に,システムのオープンを押すと,IPアドレス(192.168.0.254)などの情報により,システムの端点をオープンします.この状態で,ブラウザからGPIOを確認することができます.内蔵レジスタの変更により,EPN-001のLEDの状態を変更してみます.

[ 0Ah : GPDAT ] の下位4ビットを「0」にします.LEDは負論理なので,点灯します.「f」にすると,すべて消灯します.次に,内蔵レジスタの設定値の確認をします.

08h GPALT 0xff00 上位8ビットはGPIOをシリアルI/Fとして使用するという意味です.
09h GPCFG 0xc7ff 「1」:出力 「0」:入力なので,下位8ビットは出力となります.
0ah GPDAT 0xXXaa 出力を「0」か「1」か定義します.ここでは,上位8ビットはシリアルI/Fの定義なので,変更しません.

実際に,「09h:GPDAT」 を 0xXX12 として,ブラウザで確認します.上位8ビットは,GPIO機能は無効となっています.下位8ビットは0x12と設定した値と一致します.


今までは,下位8ビットすべてを出力ピンと定義しました.次にEPN-001の押しボタンスイッチを利用して,下位2ビットを入力ピンと定義し,状態を取得してみます.
●GPCFG 0xc7fc
●GPDAT 0xff00
▼ボタンを押すと負論理なので「L」
 
▼ボタンを押していない状態

以上のように,GPIOの状態を得ることができました.

メールでのご質問はこちらへどうぞ

HDLのホームページへ