ID : 9173
DefIO
機能
I/O型のローカル変数を宣言します。
構文
DefIO 変数名 = データサイズ, ポートアドレス[, マスク情報]
指定項目
- 変数名
- 変数名を指定します。命名規則にしたがって指定します。有効範囲内で同じ名称は使用できません。また配列の宣言も可能です。
- データサイズ
- I/O型データのデータサイズを指定します。指定できるデータサイズは"Bit"、"Byte"、"Word"、"Short"、"Integer"、"Single"のいずれかです。
- ポートアドレス
- I/Oポートの開始番号を指定します。整数型データで指定します。I/Oポートにない番号を指定したり、データサイズが入出力ポート内に収まらない場合はエラーです。
- マスク情報
-
マスク情報を整数型データで指定します。
入力ポートの場合、入力データとマスク情報をAnd演算した結果を得ます。
出力ポートの場合、出力データとマスク情報のAndをとり出力しますが、マスクがセットされていないビットの出力状態は変化しません。データサイズがSingleのときはマスク情報を指定することはできません。
解説
I/O型のローカル変数を宣言します。
配列での宣言について
リモートレジスタなどで連続したI/Oポートをまとめて使用したい場合などに配列で宣言できます。
'I/Oポート4096からワードデータで16個Rwdinという変数宣言する例
DefIO Rwdin(15) = Word, 4096
'I/Oポート4608からワードデータで16個Rwdoutという変数宣言する例
DefIO Rwdout(15) = Word, 4608
関連項目
-
注意事項
-
用例
'!TITLE "入出力ポートに対応するI/O変数の宣言" ' I/O変数をBit型、Byte型、Word型、Integer型、Single型で宣言 Sub Sample_DefIO ' 変数IO_OFFSETを256として宣言 #Define IO_OFFSET 256 ' aaaをポート1から始まるBit型I/O変数として宣言 DefIO aaa = Bit, 1 ' bbbをポート10から始まるByte型I/O変数のマスク情報を付けて宣言 DefIO bbb = Byte, 10, &B00001111' cccをポート15から始まるWord型I/O変数として宣言 DefIO ccc = Word, 15 ' dddをポート1から始まるInteger型I/O変数として宣言 DefIO ddd = Integer, 1 ' eeeをポート計算結果のポートから始まるByte型I/O変数として宣言 DefIO eee = Byte, IO_OFFSET + 10 ' fffをポート128から始まるSingle型I/O変数として宣言 DefIO fff = Single, 128 ' gggをポート128から始まるByte型I/O変数の配列として宣言 DefIO ggg(4) = Byte, 128 ' ポート128に1、129から135に0を格納 ggg(0) = 1 ' ポート136から142に0、ポート143に1を格納 ggg(1) = &H80 End Sub
ID : 9173

