tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: VB2005でバイナリデータをシリアル通信
投稿日: 2009/12/17(Thu) 02:26
投稿者ロージー
何度もすみません。

>   bytOut配列にそのまま値を代入して送信すればOKかと・・・
bytOutがByte型なのでString型は入れれないということでエラーが返ってきます。。

そして、今さらなのですが、現在書いているプログラムには元のコード(私が作ったものではないです)があります。
VB6のコードなのですが、これをVB2005に修正したいと考えています。

ようやく探しあてて変換(アップグレード?)前のコードを表示できるようになったのでこちらを示します。


色々と見てきましたが、ChrB$の箇所がどうも上手く書き換えられない状況です。
他も間違っている箇所があるかもしれませんので、合わせてご教示願いたいです。



'******元のコード(VB6)******
Sub SendComPort3WFForward(Frequency As Double)
    '変数宣言
    Dim CH(0 To 99) As String    '10進数を16進数に変換する配列
    Dim m As Byte, n As Byte     'カウンタ
    Dim k As Integer             'カウンタ
    Dim fre As Variant           '周波数を入れる変数
    Dim DA As Variant            'データを入れる変数
    Dim bytOut() As Byte         '無線機に送信するデータを入れる配列
    
    '10進数を16進数に変換する配列CH()を設定する.
    For m = &H0 To &H9
      For n = &H0 To &H9
        CH(&HA * m + n) = ChrB$(&H10 * m + n)
      Next n
    Next m

    fre = Right$("00000" + Mid$(Str$(CLng(Frequency * 1000000#)), 2), 10)
    For k = 1 To 10 Step 2
      DA = CH(Val(Mid$(fre, k, 2))) + DA
    Next k

    bytOut() = ChrB$(&HFE) + ChrB$(&HFE) + ChrB$(&H60) + ChrB$(&HE0) _
             + ChrB$(&H0) + DA + ChrB$(&HFD)   '←ここが問題かと思います。
    msSerialRadio.Output = bytOut
End Sub




よろしくお願いいたします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。