|
@@ -0,0 +1,84 @@
|
|
|
|
|
+const i2c = require('i2c-bus');
|
|
|
|
|
+const i2c1 = i2c.openSync(1);
|
|
|
|
|
+
|
|
|
|
|
+// x,y,z角度=Angle/32768*180
|
|
|
|
|
+// const data1 = i2c1.readWordSync(0x50, 0x3d);
|
|
|
|
|
+// const data2 = i2c1.readWordSync(0x50, 0x3e);
|
|
|
|
|
+// const data3 = i2c1.readWordSync(0x50, 0x3f);
|
|
|
|
|
+
|
|
|
|
|
+// // 时间
|
|
|
|
|
+// const data4 = i2c1.readWordSync(0x50, 0x30);
|
|
|
|
|
+// const data5 = i2c1.readWordSync(0x50, 0x31);
|
|
|
|
|
+// const data6 = i2c1.readWordSync(0x50, 0x32);
|
|
|
|
|
+// const data7 = i2c1.readWordSync(0x50, 0x33);
|
|
|
|
|
+
|
|
|
|
|
+// 模块温度 = */100 °c
|
|
|
|
|
+// const data8 = i2c1.readWordSync(0x50, 0x40);
|
|
|
|
|
+
|
|
|
|
|
+// // 轴加速度xyz = Angle/32768*16
|
|
|
|
|
+// const data9 = i2c1.readWordSync(0x50, 0x34);
|
|
|
|
|
+// const data10 = i2c1.readWordSync(0x50, 0x35);
|
|
|
|
|
+// const data11 = i2c1.readWordSync(0x50, 0x36);
|
|
|
|
|
+
|
|
|
|
|
+// // 轴角速度xyz = Angle/32768*2000
|
|
|
|
|
+// const data12 = i2c1.readWordSync(0x50, 0x37);
|
|
|
|
|
+// const data13 = i2c1.readWordSync(0x50, 0x38);
|
|
|
|
|
+// const data14 = i2c1.readWordSync(0x50, 0x39);
|
|
|
|
|
+
|
|
|
|
|
+// // 高低气压pa
|
|
|
|
|
+// const data15 = i2c1.readWordSync(0x50, 0x45);
|
|
|
|
|
+// const data16 = i2c1.readWordSync(0x50, 0x46);
|
|
|
|
|
+
|
|
|
|
|
+// // 高度低|高cm
|
|
|
|
|
+// const data17 = i2c1.readWordSync(0x50, 0x47);
|
|
|
|
|
+// const data18 = i2c1.readWordSync(0x50, 0x48);
|
|
|
|
|
+
|
|
|
|
|
+// 高低经度 = %10000000/100000 lon
|
|
|
|
|
+// const data19 = i2c1.readWordSync(0x50, 0x49);
|
|
|
|
|
+// const data20 = i2c1.readWordSync(0x50, 0x4a);
|
|
|
|
|
+
|
|
|
|
|
+// // 高低纬度 = %10000000/100000 lat
|
|
|
|
|
+// const data21 = i2c1.readWordSync(0x50, 0x4b);
|
|
|
|
|
+// const data22 = i2c1.readWordSync(0x50, 0x4c);
|
|
|
|
|
+
|
|
|
|
|
+// // GPS高度
|
|
|
|
|
+// const data23 = i2c1.readWordSync(0x50, 0x4d);
|
|
|
|
|
+
|
|
|
|
|
+// // GPS航向角
|
|
|
|
|
+// const data24 = i2c1.readWordSync(0x50, 0x4e);
|
|
|
|
|
+
|
|
|
|
|
+// // GPS 地速低字
|
|
|
|
|
+// const data25 = i2c1.readWordSync(0x50, 0x4f);
|
|
|
|
|
+
|
|
|
|
|
+// // GPS 地速高字
|
|
|
|
|
+// const data26 = i2c1.readWordSync(0x50, 0x50);
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+// const txt1 = `角度:x:${data1 / 32768 * 180},y:${data2 / 32768 * 180},z:${data3 / 32768 * 180}`
|
|
|
|
|
+
|
|
|
|
|
+// const txt2 = `GPS高度:${data23 / 100}`
|
|
|
|
|
+
|
|
|
|
|
+// const txt3 = `模块温度:${data8 / 100}`
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+// const a = (data19.toString() + data20.toString()) % 10000000
|
|
|
|
|
+// const b = (data21.toString() + data22.toString()) % 10000000
|
|
|
|
|
+// console.log(data19, data20);
|
|
|
|
|
+// console.log(data21, data22);
|
|
|
|
|
+// console.log(txt1);
|
|
|
|
|
+
|
|
|
|
|
+const bf = Buffer.alloc(8)
|
|
|
|
|
+i2c1.writeByteSync(0x50, 0x49, 2)
|
|
|
|
|
+i2c1.i2cReadSync(0x50, bf.length, bf);
|
|
|
|
|
+const a = bf.readUIntBE(0, 6).toString();//切分字节流
|
|
|
|
|
+console.log(a);
|
|
|
|
|
+console.log(bf);
|
|
|
|
|
+const bd = Buffer.alloc(8)
|
|
|
|
|
+i2c1.writeByteSync(0x50, 0x4a, 2)
|
|
|
|
|
+i2c1.i2cReadSync(0x50, bd.length, bd);
|
|
|
|
|
+const b = bd.readUIntBE(0, 6).toString();//切分字节流
|
|
|
|
|
+console.log(b);
|
|
|
|
|
+console.log(bd);
|
|
|
|
|
+console.log(+a + +b);
|
|
|
|
|
+
|
|
|
|
|
+
|