VB6.0与VB.NET有什么不同呢? 点击:1584 | 回复:5



大江大海

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:29帖 | 205回
  • 年度积分:0
  • 历史总积分:445
  • 注册:2005年10月23日
发表于:2007-01-30 19:57:00
楼主
请问各位高人有没有学习VB串口编程的资料呢?



Isaiah

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 380回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-01-30 21:43:00
1楼
我一般用delphi写。个人认为VB功能似乎单薄了点,但是很容易上手。delphi功能强大但是上手不容易。我现在都想转VB了

大城

  • 精华:25帖
  • 求助:0帖
  • 帖子:564帖 | 1178回
  • 年度积分:0
  • 历史总积分:8243
  • 注册:2006年8月25日
发表于:2007-01-30 22:01:00
2楼

这里有两则VB串口使用心得,不知对你是否有所帮助

 

心得1:串口的输出属性:

按照书上或是MSDN中给出OUTPUT的数据类型是字符串或VARIANT类型,我出现的问题是我想传送0至255之间的数,可是按照,以上的输出数据类型进行设置的化,传输不了诸如200,210等大于125的数,我又不想按照帖子上介绍的文章进行转换,于是有了一点心得:  将给OUTPUT的变量的数据类型设置为BYTE的数组,数组元素的个数为1即可。                                                                                                        

Dim Sendtemp(0)  As Byte   

Const SendCmd = &H55

   Sendtemp(0) = SendCmd
 MSComm1.Output = Sendtemp()

心得2:设置改变带来的一个问题

      当你的串口设置好后,一旦在以后你对串口的某一项设置改变后所有的设置都需要重新设置,如设定了串口的端口号,而没有设置串口的输入模式,如果你认为前面已经设置了输入模式,而不去理他,则他会用默认的模式去处理你的输入。造成不必要的麻烦,本人就为此调试了一会,才找到此问题,希望大家以后注意。
 

大江大海

  • 精华:1帖
  • 求助:0帖
  • 帖子:29帖 | 205回
  • 年度积分:0
  • 历史总积分:445
  • 注册:2005年10月23日
发表于:2007-02-01 19:00:00
3楼
请问有没有用VB编写的源程序!让我看看啊!

大江大海

  • 精华:1帖
  • 求助:0帖
  • 帖子:29帖 | 205回
  • 年度积分:0
  • 历史总积分:445
  • 注册:2005年10月23日
发表于:2007-02-02 20:02:00
4楼
MScomm控件好不好用!
与API比有什么优缺点

大江大海

  • 精华:1帖
  • 求助:0帖
  • 帖子:29帖 | 205回
  • 年度积分:0
  • 历史总积分:445
  • 注册:2005年10月23日
发表于:2007-02-14 10:42:00
5楼
请问我这个程序和LG的iG5变频器通讯为什么接受到的都是乱码呢?
Private Sub Command1_Click() '发送按钮
Dim dat As String
dat = Text1.Text & Text2.Text & Text3.Text & Text4.Text
MSComm1.Output = Chr$(5) + dat + SumChk(dat) + Chr(4)
End Sub
-----------------------------------------------------
Private Sub Command2_Click() '接收缓冲区清空
Text7.Text = ""
End Sub
-------------------------------------------------------
Private Function SumChk(Dats$) As String '和校验
    Dim i&              '定义i为long型
    Dim CHK&
    For i = 1 To Len(Dats)
        CHK = CHK + Asc(Mid(Dats, i, 1))
    Next i
   SumChk = Right(Hex$(CHK), 2)
End Function
-------------------------------------------------------
Private Sub Form_Load() '窗体程序
MSComm1.InBufferCount = 0
MSComm1.OutBufferCount = 0
MSComm1.CommPort = 1 '用Com1口
MSComm1.Settings = "9600,n,8,1" '通讯参数 波特率 奇偶校验 数据位 停止位
MSComm1.PortOpen = True '开串口
MSComm1.RThreshold = 0 '当接收缓冲区的数据达到RThreshold所设定的字节数时产生OnComm事件
MSComm1.InputLen = 14 '表示用Input函数从接收缓冲区读取的字节数
End Sub
----------------------------------------------------------
Private Sub MSComm1_OnComm() ,通讯事件
a = MSComm1.Input
Text7.Text = a
End Sub
------------------------------------------------------

热门招聘
相关主题

官方公众号

智造工程师