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

タイトル Re: VB2010 シリアル受信通信 byte で上手くいかない
投稿日: 2017/08/07(Mon) 07:28
投稿者shu
>    Private Sub RcvDataToTextBox(data As String)
dataをstringで渡していますが受信データは文字列ではないのではないですか?

>         Dim LenX As Integer
>         Dim I As Integer
>         Dim DD As String
>         LenX = Len(data)
>         Dim s(LenX) As String
>
>         DD = ""
>         Dim bytes() As Byte = System.Text.Encoding.GetEncoding(932).GetBytes(data)



>         For I = 1 To LenX
>             s(I) = BitConverter.ToString(bytes)
>             DD = DD & s(I)
>         Next
BitConverter.ToString(Byte())の結果は
各要素を16進にしてハイフンで区切った文字列なので
このループは同じ文字列を文字列長だけ連結することになるかと
思います。
hhttps://msdn.microsoft.com/ja-jp/library/3a733s97(v=vs.110).aspx


>         RcvTextBox.AppendText(DD)
>     End Sub
>
> 無線機に FEFE66000600FD を変換したものをPortに書き込みます
>
> そうすると以下のように返ってきます( ”−”らしきものは勝手につくらしい)
>
> 3F-66-063F-66-063F-66-063F-74-3F3F-74-3F3F-74-3F
なのでこれは
{3F,66,06}
{3F,74,3F}
という2つのバイト列が取得出来ていることになります。ただShift-Jis文字列から
バイト列に変換しているのでデータが欠落している可能性があります。

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

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