Ðăng Nhập

View Full Version : Hiển thị lên PC bằng VB6.0 bị sai số liệu !! Anh chị giúp em với ạ!


huunguyen1990
07-07-2012, 12:39 AM
Em làm mạch đo nhiệt độ dùng LM35 đang trong giai đoạn mô phỏng ! chương trình đo và hiển thị lên LCD , giao tiếp với PC qua RS232 để hiển thị nhiệt độ trên giao diện VB6.0, khi chạy trương trình hiển thị LCD thì ok rồi ,chỉ có điều là trên giao diện VB 6.0 hiển thị không đúng, em cho in thử một số lên cũng không đúng !! Code em sai chỗ nào anh chị chỉ rùm em với ạ!! thanks anh chị ! .
Code CCS :
......
While (true)
{
adc = read_adc();
nd=adc*500/1023;
LCD_putcmd(0xC0);
Printf(LCD_putchar," t = %f",nd) ;
LCD_putcmd(0xCA);
LCD_putchar("(C)") ;
delay_ms(500);
printf("%f",nd);
}
}
Code VB6.0 :
------------------------------------------------
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,n,8,1"
MSComm1.RThreshold = 1
MSComm1.SThreshold = 255
MSComm1.PortOpen = True
End Sub
------------------------------------------------
Private Sub MSComm1_OnComm()
Dim n As Integer
If (MSComm1.CommEvent = comEvReceive) Then
n = Asc(MSComm1.Input)
Text1.Text = CDec(n)
End If
End Sub
Hình chương trình em mô phỏng đây ạ!
http://www.mediafire.com/imageview.php?quickkey=k853z6d3073mmom

khienpzo
07-07-2012, 04:38 PM
Dim data as string

data=MSComm1.Input
text1.text=ASC(data)

bạn thử xem

Metechviet
08-07-2012, 03:40 PM
Nếu đã nhận được thì bạn xem lại giữa PIC và PC đã đồng bộ phần setting cho COM chưa. Chú ý tốc độ Baud.

huunguyen1990
11-07-2012, 05:33 PM
Cảm ơn anh ! em làm rồi nhưng kết qua hiển thị vẫn sai ạ

huunguyen1990
11-07-2012, 05:35 PM
Tốc đọ em cài đặt như nhau !k nhầm đâu a ạ !