Foxtable(狐表)用户栏目专家坐堂 → 串口不能收发中文字符


  共有12482人关注过本帖树形打印复制链接

主题:串口不能收发中文字符

美女呀,离线,留言给我吧!
yangming
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2010/3/30 19:44:00 [显示全部帖子]

帮助

中文字符的收发

在默认情况下,串口不支持中文字符的手法,如果字符串口中包括中文字符,那么必须在发送前将字符串转换为字节数组,在接收端再将接收到的字节数组转换为字符串。


 回到顶部
美女呀,离线,留言给我吧!
yangming
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2010/3/30 19:58:00 [显示全部帖子]

在命令窗口测试成功

Dim bty() As Byte
With Ports("COM3")
    bty = .GetBytes("狐表很强大") '转换为字节数组
    .Write(bty, 0, bty.length) '发送字节数组
End With
Output.Show(bty.length)
Dim p As Port = Ports("COM3")
Dim cnt As Integer = p.BytesToRead
If cnt > 0 Then '缓冲区是否有数据
    Dim bty1(cnt - 1) As Byte
    Dim val As String
    p.Read(bty1,0,cnt) '接收字节数据
    Val = p.GetString(bty1) '转换为字符
    '后续处理代码
Output.Show(Val)
End If

 回到顶部