usb_ioを使った制御実験
  1. 7セグメントLEDの点灯実験
  2. 2つの7セグメントを点灯
  3. 7セグメントLEDと光センサーの実
  4. USB-M4Bを使った模型制御
  5. 複数のUSB-IOを使った制御テスト(H17/9/11)

■3...USB-IO/IVB usb-ioインバータボードと「HSP」を使って
7セグメントLED 1個と光センサー入力の実験をします。

回路図3
プログラム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