PDA

View Full Version : giúp em 1 chút về VB với moi ngươì


rikimaru87
28-11-2009, 07:55 AM
đệ gửi nhiệt độ lên VB . cứ sau 1 s .
printf("%u",nhietdo);

hàm nhận ở VB:
Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Text1.Text = Text1.Text + MSComm1.Input
End If
End Sub

kết quả :
có lúc ra 1 chuỗi kí tự PPPPPPPPPP
có lúc ko nhận dc j hết ?
huhu giúp em với

nhanh0112
28-11-2009, 09:05 AM
đệ gửi nhiệt độ lên VB . cứ sau 1 s .
printf("%u",nhietdo);

hàm nhận ở VB:
Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Text1.Text = Text1.Text + MSComm1.Input
End If
End Sub

kết quả :
có lúc ra 1 chuỗi kí tự PPPPPPPPPP
có lúc ko nhận dc j hết ?
huhu giúp em với
Bạn thử sửa lại với đoạn code sau xem sao:

....
Text1.Text = Text1.Text + asc(MSComm1.Input)
....

rikimaru87
28-11-2009, 08:00 PM
nhung cứ thêm các lệnh asc rùi lệnh atoi ... đều thông báo lỗi
ko bit VB bị j nữa

rikimaru87
28-11-2009, 08:20 PM
hic . tốc độ baud của tiny boot loader phải giống trong công com . dù sao cũng cảm ơn bạn nha .

nhanh0112
28-11-2009, 09:30 PM
hic . tốc độ baud của tiny boot loader phải giống trong công com . dù sao cũng cảm ơn bạn nha .
Xin lỗi bạn, đoạn code trên của mình sai mất mấy ký tự. Đây là đoạn code nhận từ MCU(89C51) với cấu hình như sau (đã thử chạy thực tế):

With MSComm1
.CommPort = 1
.Settings = "9600,N,8,1"
.DTREnable = True
.RTSEnable = True
.RThreshold = 1
End With

sự kiện xảy ra ở cổng COM đc lấy như sau (hiển thị dữ liệu ra text1-multiline, mỗi đoạn dữ liệu nhận đc cách nhau bởi dấu ",")

Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Text1.Text = Text1.Text & Asc(MSComm1.Input) & ","
End If
End Sub