上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.-- -- l スポンサー広告 l top
暑い日が続きますね。今日少しだけ時間ができたのでICHIGOJAMタッチパネルアダプタの回路図を入れてみました。

回路図にすると配線が多いようですが、バッファIC1個だけの簡単な回路です。
R1とR2は「タッチしていない時」を検出するためのプルアップ抵抗です。

うっかりしてましたが回路図中の74125は74HC125です。普通の74125(今時売ってない?)5V用ですが、この回路は3.3VなのでHCまたは他シリーズで3.3Vに対応した石が必要です。


簡単に動作を説明してみます。

もうひとつうっかりですが、以下の説明図及び文で、「オン」とは0Vを与えること(OUT命令で0)、「オフ」とは3.3Vを与えること(OUT命令で1)です。これは74HC125の制御入力がアクティブロー(0Vでオン)なのでこうなっています。



style="display:block"
data-ad-client="ca-pub-0620260288102702"
data-ad-slot="9773401572"
data-ad-format="auto">




■下がX座標を検出する時の操作です。


X側の74HC125をオンにしてます。こうすると、X側は抵抗膜の両端に3.3Vと0Vを繋いだ状態となり、その間の電圧はX座標に比例して異なります。
Y側の74HC125をオフにしてます。こうすると、Y側はフロートになり、タッチしていないと100KΩ抵抗でプルアップされているだけになります。このときタッチしないでY側の電圧を見るとプルアップで3.3Vになります。

タッチすると、Y側の抵抗膜がX側に触れますので、Y側の電圧はX側に触れた位置(X座標)の電圧となります。プルアップ抵抗の抵抗膜の抵抗より非常に大きいので、このときは影響は無視できます。こうしてY側に繋がっているBTNピンをANA命令で読むことでX座標を読むことができます。



■次がY座標を検出する時の操作です。


X側の74HC125をオフにし、Y側の74HC125をオンにしてます。あとは上の説明をX,Y入れ替えてみていただけば良いと思います。

■プログラムについて
操作は全てICHIGOJAMのプログラムが行っています。OUT命令でX,Yを交互にオン、オフし、ANA命令で反対側の電圧を見ます。
タッチされているかどうかは、X座標、Y座標の両方の大きさで見ています。ANAの値が両方とも3.3V近く(800ないし900以上)になっていればプルアップの値でタッチされていない、どちらかがそれ未満ならタッチされてる、と判断して画面座標に変換します。
前回と同じものですが、ICHIGOJAMソースをコピーします。


10 CLS:LC28,0:?"CLS";
20 GOSUB 300
25 LC 0,0:?"x=";X;".";"y=";y;" ";
35 WAIT 1
40 IF X>0 AND Y>0 THEN GOSUB 200
45 IF X>50 AND Y<4 THEN GOTO 10
50 GOTO 20
195 '**********************
196 ' SEMIGRAPHIC ROUTINES
197 '**********************
200 '=== PSET X,Y ===
205 Z=(X&1)+(Y&1)*2:W=X/2:V=Y/2:LC W,V:? CHR$(VPEEK(W,V)|(1<< Z)|#80):RETURN
290 '**********************
295 ' TABLET ROUTINE
297 '**********************
300 OUT1,0:OUT2,1
310 Y=ANA(2):IFY>800 THEN Y=-1ELSE Y=(Y-170)*48/(800-190)
320 OUT1,1:OUT2,0
330 X=ANA(0):IFX>900 THEN X=-1 ELSE X=(900-X)*31/(450-85)
340 RETURN

 
■補足
74HC125を使っている理由は、読み取る側の反対側を切り離してフロートにする必要があるためです。フロートにしないでドライブしたままだと、その電圧にひっぱられてタッチした反対側の電圧を読むことができません。今のICHIGOJAMのOUT端子はオン、又はオフの2状態で、フロートという状態がないのでフロートにできる74HC125を使っています。
 
しかし、ICHIGOJAMのベースとなっているLPC1114はデバイスの能力としてはIOをフロートにもできるので、今後ICHIGOJAMのファームウェアバージョンアップでフロートもできるようになれば、74HC125なしでさらにシンプルにできる可能性が有ります。

 
今日も暑いのでこのくらいで。

それではまたです。

2015.08.09 Sun l ICHIGOJAM l コメント (0) l top

コメント

コメントの投稿












上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。