网站建设资讯

NEWS

网站建设资讯

vb.net中的串口控件 串口 vbnet vs2010

vb.net如何在串口接收事件中访问并修改另一个窗体的控件?

可以将Form1里的串口公开,然后在Form2里添加对DataReceived事件的处理

专注于为中小企业提供成都网站设计、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业银州免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

Form1.Designer.cs中将

private System.IO.Ports.SerialPort port;改为

publice System.IO.Ports.SerialPort port;

然后在Form2里加上

Form1.port.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(port_DataReceived);

最后在

void port_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)

{

在这里进行处理就可以了;

}

这个是C#的,VB的你自己转一下

用VB.net 里面的SerialPort1.Write( )串口控件,怎么才能发送出去一个16进制的01

直接发数字1。

一般可以直接发10进制的数字,当然要转换,比如16进制的21,你可以直接发33

vb.net SerialPort控件接收数据问题,用串口调试助手发数据,只有第一次可以正常接收

你定义的委托需要带参数才行,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

c#中的串口控件和VB.NET中的Mscomm控件是一回事吗?

是独立的东西,没有依赖,尽管在底层有可能是类似的调用

还有在.net里一般只认为是普通类,并不属于控件,因为没界面


分享文章:vb.net中的串口控件 串口 vbnet vs2010
网站路径:http://njwzjz.com/article/hhpjhp.html