usb_ioを使った制御実験
- 7セグメントLEDの点灯実験
- 2つの7セグメントを点灯
- 7セグメントLEDと光センサーの実
- USB-M4Bを使った模型制御
- 複数のUSB-IOを使った制御テスト(H17/9/11)
■3...USB-IO/IVB usb-ioインバータボードと「HSP」を使って
7セグメントLED 1個と光センサー入力の実験をします。
プログラム5
hspエディターに貼り付けると起動します。プログラムを起動するには「HSP」本体とHSP USB-IO用プラグインが必要です
(hsp Ver3以降に対応しています、hsp Ver2.6以前のバージョンで使用する場合は、(int,str)の記述を書き換えてください)
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
;usbポート7セグメントI/O テスト
#include "hspusbio.as"
screen 0,180,100 ;画面の大きさを指定
dim n7,10 ;配列変数 n7 を宣言
;最大要素は、10個
n7.0=63 : n7.1=6 : n7.2=91 ;0番〜9番までの10個の
n7.3=79 : n7.4=102 : n7.5=109 ;要素に0から9までの
n7.6=125: n7.7=39 : n7.8=127: n7.9=111 ;7セグメント表示データを
;割り当てる
pos 25,10 ;メッセージ表示位置指定
mes " 7セグメントLEDで"
mes "入力カウントを表示" ;メッセージを表示
pos 50,60 ;スタートボタンの位置を指定
button "スタート" , *iru ;スタートボタンがおされると
;サブルーチン iru に飛ぶ
stop ;プログラム1時停止
;-------------------------------------------------
*iru ;サブルーチン iru
uio_out 1,15 ;ポート1を入力に
*@
await
uio_inp u1,1 ;ポート1のデータをu1に
;読み込む
if u1=14 :await 5:f=1:goto *@b ;ポート1の0番ビットが0
;(u1=14)なら変数fを1にし
;ポート1を読みに戻る
if f:cn=0:gosub *dis :goto *@b ;変数fが0でないなら
;サブルーチン disに飛ぶ
await 5
goto *@b ;ポート1のデータを読みに
;もどる
;------------------------------------------------
*dis ;サブルーチン dis
count+ ;変数countを1ずつ増加してゆく
cod=count ;変数codにcountの値を代入
se=cod\10 ;変数codの1桁目を変数seに代入
uio_out 0,n7.se ;7セグメントデータのse番目の
;データをポート0から出力
cod=str(cod) ;数値型変数codを文字型変数に[str cod(Vre2.6)]
objprm 0,cod ;ボタンにカウント数を表示
cod=int(cod) ;文字型変数codを数値型変数に[int cod(Ver2.6)]
f=0 ;変数fの値を0にもどす
return ;戻る
1
2
3
4
5