VBでFL232RLを汎用IOとして使用するソース
http://hidebbs.net/bbs/bake?n=43873769&s=4&m=10
D2XXドライバが必要
FTDIサイトには、Virtual COM Port Drivers(仮想COMポート)ドライバと、D2XX Direct Drivers(デバイスに直接にアクセス
できる)ドライバがありますが、このサイトでは、仮想COMポートとして使いたいので VCP ドライバについて書きました。
D2XXドライバを見てみる。
http://d.hatena.ne.jp/yaneurao/20080630
解説
http://www.ftdichip.com/Drivers/D2XX.htm
ソースや回路図
変数はバリアント型を使うみたい
Private Sub Command1_Click()
Dim i As Integer
Dim x As Variant
Dim c As Collection
Set c = New Collection
c.Add (1)
c.Add (2)
For Each x In c
MsgBox (x)
Next
End Sub
collectionを使ったサンプル
'プロパティ値を保持するためのローカル変数。 Private mvarparaComment As Collection 'ローカル コピー Private mvarreadCount As Integer 'ローカル コピー Public Sub readStart() Attribute readStart.VB_Description = "コメント読み出し開始" mvarreadCount = 0 End Sub Public Sub addStart() Attribute addStart.VB_Description = "コメント追加開始" Dim i As Integer If mvarparaComment.Count > 0 Then For i = mvarparaComment.Count To 1 Step -1 mvarparaComment.Remove (i) Next i End If End Sub Private Sub class_initialize() 'MsgBox ("Start") Set mvarparaComment = New Collection End Sub Public Sub addComment(Comment As String) Attribute addComment.VB_Description = "コメントを追加する" mvarparaComment.Add (Comment) End Sub Public Function readComment() As String Attribute readComment.VB_Description = "コメントを読み出す" If mvarparaComment.Count > mvarreadCount Then mvarreadCount = mvarreadCount + 1 readComment = mvarparaComment.Item(mvarreadCount) Else 'MsgBox ("EOC") End If End Function Public Property Let readCount(ByVal vData As Integer) 'プロパティに値を代入するときに、代入式の左辺で使用します。 'Syntax: X.readCount = 5 mvarreadCount = vData End Property Public Property Get readCount() As Integer 'プロパティの値を取得するときに、代入式の右辺で使用します。 'Syntax: Debug.Print X.readCount readCount = mvarreadCount End Property Public Property Set paraComment(ByVal vData As Collection) Attribute paraComment.VB_Description = "コメントを保存する" 'プロパティにオブジェクトを代入するときに、Set ステートメントの左辺で使用します。 'Syntax: Set x.paraComment = Form1 Set mvarparaComment = vData End Property Public Property Get paraComment() As Collection 'プロパティの値を取得するときに、代入式の右辺で使用します。 'Syntax: Debug.Print X.paraComment Set paraComment = mvarparaComment End Property