vb.net接收串口数据 vb串口的接收与发送

VB.NET中如何处理串口通信接收的数据?

你可以预先约定一个截止附,读取的字节统统放到缓存区里,直到读到截止附再处理、显示。

为咸阳等地区用户提供了全套网页设计制作服务,及咸阳网站建设行业解决方案。主营业务为成都网站建设、网站建设、咸阳网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

vb.net 串口接收问题

0x3F表示字符"?"

估计是你的发送指令不正确,设备返回你发送的指令后面加''?""

VB。net 串口接收数据,用串口调试助手发数据,只有第一次可以正常接收

你定义的委托需要带参数才行,DataReceived事件中没有接收数据代码,下面的代码经测试可用

Delegate Sub SetTextCallback(ByVal InputString As String)

Private Sub ShowString(ByVal comData As String)

txt_Rect.Text += comData '将收到的数据入接收文字框中

txt_Rect.SelectionStart = txt_Rect.Text.Length

txt_Rect.ScrollToCaret()

End Sub

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

Dim inData As String = SerialPort1.ReadExisting

Dim d As New SetTextCallback(AddressOf ShowString)

BeginInvoke(d, inData)

End Sub

使用vb.net接收大量串口数据时,界面卡顿

上位机软件接收大量数据并显示,会造成界面卡顿,可采用双缓冲技术,即将数据存到内存,再将其绘制到界面,比将数据直接绘制到界面要省很多时间

添加在子进程里面,就加在你批量传输代码里的每一个传输后面,也就是大批量中的每传输一个数据就暂停一下,而不是每一个大批量才暂停一下。

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

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

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

VB.net串口通讯接收数据写法

Do

Application.DoEvents()

Loop Until MSComm1.InBufferCount = 13

Dim a As String = MSComm1.Input

Label1.Caption = a.Substring(1, 9)

Label2.Caption = a.Substring(10, 3)


分享名称:vb.net接收串口数据 vb串口的接收与发送
网站URL:http://cdiso.cn/article/dochsoe.html

其他资讯