网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

vb.net串口发送,net 串口

VB.NET串口通讯怎么发送和接收十六进制?

串口通信最终都是用二进制传输的,你用代码把二进制转化成十六进制就可以了。不需要额外设置。

创新互联公司10多年成都定制网站服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,成都定制网站及推广,对广告设计等多个领域拥有丰富的网站推广经验的网站建设公司。

VB.NET使用AxMSComm实现串口通信的发送读取问题?

上面的代码看不出问题,如果初始化串口控件时已经注册了AxMSComm1_OnComm,有数据接收应该能触发,至于为什么没有触发,要看看你的接收方是否已经收到你的发出指令,是否已经有响应数据回发。

建议分开调试,用一个通用的串口助手,如格西烽火串口助手之类的,分别调试你的上位机和下位机。格西烽火串口助手能轻松的定制如你上面的发送数据。

vb.net 串口收发数据有问题

不知道你是不是用51单片机往串口发数据,是的话那是因为51的sbuf最多存放8个字节,所以你发12个字节会分成两次发完。还有在接收的时候最好定义好通信协议,比如加一个侦头,一个侦尾,通过这两个字节的内容来接收数据。

老兄,提问还是给点悬赏分嘛,不要吝啬哪点分,知识是无价的,你给得越多,回答你的人才会越多。

如何用vb.net向串口发送十六位进制数据

下面代码就是将文本框中以一个空格隔开的十六进制转为字节的代码,文本框中数字格式为:01 02 03

Dim TestArray() As String = Split(TextBox1.Text)

Dim hexBytes() As Byte

ReDim hexBytes(TestArray.Length - 1)

Dim i As Integer

For i = 0 To TestArray.Length - 1

hexBytes(i) = Val("h" TestArray(i))

Next

SerialPort.Write(hexBytes, 0, hexBytes.Length)

VB.net 串口发送数据

你可以这样操作:

Form1.BeginInvoke(Sub()

'一些操作

End Sub)

这样主线程就会放下手里的事情并执行Sub里的操作了

VB.net 串口传送回数据处理的问题

使用委托方式处理:

Public Class Form1

Dim mSTR As String

Dim strData As String

Dim strDat As String

Dim mRecvByte() As Byte

Dim Hexsj As String

Dim form2 As Form

Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived

Dim mSize As Integer = Me.SerialPort1.BytesToRead

ReDim mRecvByte(mSize - 1)

SerialPort1.Read(mRecvByte, 0, mSize)

BeginInvoke(New EventHandler(AddressOf ONMLoadA), SerialPort1.BytesToRead()) '使用委托方式显示接收到的字符串

End Sub

Sub ONMLoadA(ByVal sender As System.Object, ByVal e As System.EventArgs) '委托

strDat = ""

TextBox1.Text = ""

Dim i As Integer

For i = 0 To UBound(mRecvByte) 'mSize - 1

strData = strData  IIf(mRecvByte(i)  15, Hex(mRecvByte(i)), "0"  Hex(mRecvByte(i)))  " "

Next

Dim sj As Byte

For i = 1 To Len(strData) Step 3 '处理为ASCII字符

sj = Val("H"  Mid(strData, i, 2))

If sj  32 Or sj  128 Then '当接收字节中有Chr(0)时,其后字符被切割

strDat = strDat  "."

Else

strDat = strDat  Chr(sj)

End If

Next

TextBox1.Text = strDat '显示字符

TextBox2.Text = strData '显示为16进制

TextBox3.Text = Len(strData) / 3

End Sub


新闻标题:vb.net串口发送,net 串口
标题路径:http://bjjierui.cn/article/hspecd.html

其他资讯