请大虾帮忙将qb的串口通讯程序改成vb,多谢~_~ 点击:970 | 回复:3



nature_pet

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 1回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2006年5月16日
发表于:2006-07-20 23:24:00
楼主
本人不是搞这个的,因为要做实验,需要测一个功率表的数据;下面这个是qb写得一个程序,能否改成vb?尤其是out那几句?或者可以改成vc?哪位大虾能帮一下忙啊?
SCREEN 0
CLEAR
        OPEN "COM1:9600,n,8,1,RS,CS,DS,CD" FOR RANDOM AS #1
        ON COM(1) GOSUB 3000
        COM(1) OFF
        COM(1) ON

CLS
ON KEY(1) GOSUB 500
KEY(1) ON
LOCATE 1, 28: PRINT "--- Power Monitor System Test ---   "
LOCATE 2, 1: PRINT "F1: Get Data  "
10

GOTO 10
500 :   'f1
'CLS
OUT &H3FC, 11
'LOCATE 1, 1: PRINT "Get Data ---   "
B1$ = CHR$(&H2) + CHR$(&H44) + CHR$(&H47) + CHR$(&H30) + CHR$(&H30)
B2$ = CHR$(&H33) + CHR$(&H31) + CHR$(&H45) + CHR$(&H3) + CHR$(&HD)
b$ = B1$ + B2$
GOSUB 2180
OUT &H3FC, 9
RETURN

END

2180 :
TN = LEN(b$)
'PRINT TN
FOR Ii = 1 TO TN
z$ = MID$(b$, Ii, 1)
PRINT #1, z$;
NEXT Ii
RETURN

3000 :  'com
  COM(1) OFF
  BEEP
 LINE INPUT #1, DZ$
 PRINT DZ$
COM(1) ON
RETURN

END



nature_pet

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 1回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2006年5月16日
发表于:2006-07-20 23:31:00
1楼
我试着改成如下的vb,但是运行时 无法启动MSComm1_OnComm()事件,为什么?
Private Sub cmdTest_Click()
    MSComm1.CommPort = 2
    'É趨Com2
    If MSComm1.PortOpen = False Then
     MSComm1.Settings = "9600,n,8,1"
         MSComm1.PortOpen = True
       End If
    MSComm1.OutBufferCount = 0
      MSComm1.InBufferCount = 0
    Dim ByteArray(10) As Byte
    ByteArray(0) = &H2
    ByteArray(1) = &H44
        ByteArray(2) = &H47
        ByteArray(3) = &H30
        ByteArray(4) = &H30
        ByteArray(5) = &H33
        ByteArray(6) = &H31
        ByteArray(7) = &H45
        ByteArray(8) = &H3
        ByteArray(9) = &HD
    
    MSComm1.Output = ByteArray
End Sub

    Private Sub MSComm1_OnComm()
    Select Case MSComm1.CommEvent
     Case comEvReceive
     Dim Buffer As Variant
     MSComm1.InputLen = 0
     MSComm1.InputMode = comInputModeBinary
     Buffer = MSComm1.Input
      MSComm1.InputMode = comInputModeText
     Buffer = MSComm1.Input
     Text1.Text = Buffer
     Case Else
    End Select
    End Sub

xuehan1108

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2009-07-02 15:34:00
2楼
这个程序,你运行成功了吗?

paradise

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 6回
  • 年度积分:0
  • 历史总积分:74
  • 注册:2003年11月26日
发表于:2010-01-05 11:53:11
3楼

那是因为你在vb里没有添加MSComm控件,希望对你有帮助。

 


热门招聘
相关主题

官方公众号

智造工程师