1
0
forked from dyf/APP

BLE发送数据添加安卓苹果不同的逻辑

This commit is contained in:
liub
2025-08-11 14:51:09 +08:00
parent ca844723fa
commit 4ab10bb251

View File

@ -146,7 +146,7 @@ class BleHelper {
}); });
} }
} }
//移除发现新设备的回调 //移除发现新设备的回调
removeDeviceFound() { removeDeviceFound() {
let key = this.getCurrentPagePath(); let key = this.getCurrentPagePath();
@ -194,8 +194,8 @@ class BleHelper {
} }
} }
getError(ex) { getError(ex) {
let code = ex.code; let code = ex.code;
@ -366,7 +366,7 @@ class BleHelper {
if (!state.available) { //蓝牙状态不可用了,将所有设备标记为断开连接 if (!state.available) { //蓝牙状态不可用了,将所有设备标记为断开连接
this.data.LinkedList.filter((v) => { this.data.LinkedList.filter((v) => {
v.Linked = false; v.Linked = false;
v.notifyState=false; v.notifyState = false;
return true; return true;
}); });
uni.setStorageSync(this.StorageKey, this.data uni.setStorageSync(this.StorageKey, this.data
@ -375,7 +375,7 @@ class BleHelper {
}); });
uni.onBLEConnectionStateChange((res) => { uni.onBLEConnectionStateChange((res) => {
if (!res.connected) { if (!res.connected) {
console.log("蓝牙连接已断开", res); console.log("蓝牙连接已断开", res);
@ -389,9 +389,8 @@ class BleHelper {
}); });
uni.setStorageSync(this.StorageKey, this.data uni.setStorageSync(this.StorageKey, this.data
.LinkedList); .LinkedList);
} } else {
else{ console.log("蓝牙连接已恢复,", res);
console.log("蓝牙连接已恢复,",res);
} }
}); });
@ -943,7 +942,7 @@ class BleHelper {
////console.log("无已连接设备"); ////console.log("无已连接设备");
} }
} }
//向蓝牙设备发送数据,如果没连接将自动连接后再发 //向蓝牙设备发送数据,如果没连接将自动连接后再发
sendData(deviceid, buffer, writeServiceId, wirteCharactId, ms) { sendData(deviceid, buffer, writeServiceId, wirteCharactId, ms) {
@ -1057,21 +1056,24 @@ class BleHelper {
} }
//将点阵数据转换成RGB565 //将点阵数据转换成RGB565
convertToRGB565(pixels) { convertToRGB565(pixels, type) {
const result = new Uint16Array(pixels.length/4); const result = new Uint16Array(pixels.length / 4);
let index = 0; let index = 0;
console.log("pixels.length=" + pixels.length);
for (let i = 0; i < pixels.length; i += 4) { for (let i = 0; i < pixels.length; i += 4) {
const r = pixels[i]; let r = pixels[i];
const g = pixels[i + 1]; let g = pixels[i + 1];
const b = pixels[i + 2]; let b = pixels[i + 2];
// 转换为RGB565 (R:5bit, G:6bit, B:5bit)
const rgb565 = ((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3);
result[index++] = rgb565; let rgb565 = ((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3);
let bgr565 = (b >> 3) | ((g & 0xFC) << 3) | ((r & 0xF8) << 8);
if(type=='bgr'){
result[index++] = bgr565;
}else{
result[index++] = rgb565;
}
} }
return result; return result;
} }
} }