我用串口每次发送6个数据,其中最后两个是由text输入的十六进制数据,请教以下代码为什么不管用。Private Sub Command1_Click(Index As Integer)Dim s(5) As Byte
s(0) = 1
s(1) = 57
s(2) = 3
s(3) = 1
s(4) = datehigh '数据高位
s(5) = datelow '数据底位
datelow = CLng("&H" & Text1.Text)datehigh = CLng("&H" & Text2.Text)
MSComm1.Output = sEnd Sub
s(0) = 1
s(1) = 57
s(2) = 3
s(3) = 1
s(4) = datehigh '数据高位
s(5) = datelow '数据底位
datelow = CLng("&H" & Text1.Text)datehigh = CLng("&H" & Text2.Text)
MSComm1.Output = sEnd Sub
解决方案 »
- 奇怪问题帮忙解决:在开发环境中点调试可以运行,生成EXE却不能运行
- msflexgrid的设置问题?
- 界面当中的十几个DataCombo连接到十几个adodc控件,导致内在消耗非常严重!
- copymemory怎么是倒着连接字符串的,我晕哟,哪位达人能帮忙看一下
- 关于应用程序的路径
- 【求助】关于注册表键值的读写
- 求XP关机代码!
- 又一个windows media player 问题
- 给你80分的机会!心动就行动,高手进来!!
- 在线等待50分--为什么用公用对话框打开文件时,如果我不选择任何文件,那么程序就会报错
- (读)COM+ Programming with Visual Basic(散分)
- Spread控件与adodc棒定问题
datelow = CLng("&H" & Text1.Text)datehigh = CLng("&H" & Text2.Text)Dim s As Byte
redim s(5)
s(0) = 1
s(1) = 57
s(2) = 3
s(3) = 1
s(4) = datehigh '数据高位
s(5) = datelow '数据底位
MSComm1.Output = sEnd Sub
s(0) = 1
s(1) = 57
s(2) = 3
s(3) = 1
s(4) = HexToValue(Text1.Text) '数据高位
s(5) = HexToValue(Text2.Text) '数据底位
MSComm1.Output = sEnd SubFunction HexToValue(strHex As String) As Byte
Dim char1 As String * 1
Dim char2 As String * 1
Dim mTenPos As Byte
Dim mEndPos As Byte
char1 = Left(strHex, 1)
char2 = Right(strHex, 1)
If Asc(char1) < 58 Then
mTenPos = Asc(char1) - 48
Else
mTenPos = Asc(char1) - 55
End If
If Asc(char2) < 58 Then
mEndPos = Asc(char2) - 48
Else
mEndPos = Asc(char2) - 55
End If
HexToValue = mTenPos * 16 + mEndPos
End Function