RT,舉例:串口接收的資料一組為11:55 51 23 00 2E 00 15 08 F5 F0 F9
0 0x55 包頭
1 0x51 標識這個包是加速度包
2 AxL X 軸加速度低位元組
3 AxH X 軸加速度高位元組
4 AyL y 軸加速度低位元組
5 AyH y 軸加速度高位元組
6 AzL z 軸加速度低位元組
7 AzH z 軸加速度高位元組
8 TL 溫度低位元組
9 TH 溫度高位元組
10 Sum 校驗和
加速度計算公式:
ax =((AxH<<8)|AxL)/32768*16g(g 為重力加速度,可取9.8m/s2 )
ay =((AyH<<8)|AyL)/32768*16g(g 為重力加速度,可取9.8m/s2 )
az =((AzH<<8)|AzL)/32768*16g(g 為重力加速度,可取9.8m/s2)
溫度計算公式:
T=((TH<<8)|TL) /340+36.53
校驗和:
Sum=0x55+0x51+AxH+AxL+AyH+AyL+AzH+AzL+TH+TL
本人小白,想請問下各位該如何用VB6決議代碼,能寫一下代碼結構嗎,謝謝了
uj5u.com熱心網友回復:
VB中0X55 寫作 &H55 0X00 VB 寫作 &H0uj5u.com熱心網友回復:
我估計樓主是不會把資料從串口取出來。。。uj5u.com熱心網友回復:
左移8位就是乘以2的8次方,右移是除以2的8次方uj5u.com熱心網友回復:
Dim a() As Byte
Dim ax As Double
Dim ay As Double
Dim az As Double
a = MSComm1.Input()
If a(0) = &H55 And a(1) = &H51 Then
ax = (a(3) * &H100& + a(2)) / &H800& * 9.8
ay = (a(5) * &H100& + a(4)) / &H800& * 9.8
az = (a(7) * &H100& + a(6)) / &H800& * 9.8
...
End If
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/102498.html
標籤:控件
下一篇:請高手幫忙,不勝感激
