From 4c5da2298f785fd0e5bf22bff55de112a3f9a6ba Mon Sep 17 00:00:00 2001 From: lmx Date: Tue, 25 Nov 2025 18:01:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=8C=89=E7=85=A7=E5=B0=8F?= =?UTF-8?q?=E7=AB=AF=E6=A8=A1=E5=BC=8F=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/earphone/xtell_Sensor/send_data.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/apps/earphone/xtell_Sensor/send_data.c b/apps/earphone/xtell_Sensor/send_data.c index 9c5046b..560d918 100644 --- a/apps/earphone/xtell_Sensor/send_data.c +++ b/apps/earphone/xtell_Sensor/send_data.c @@ -196,8 +196,16 @@ void BLE_send_fuc(void){ imu_packet[2] = IMU_PAYLOAD_LEN; imu_packet[3] = IMU_TYPE; // 拷贝六轴数据 - memcpy(&imu_packet[4], data_to_send.SC7U22_data, sizeof(data_to_send.SC7U22_data)); - + // memcpy(&imu_packet[4], data_to_send.SC7U22_data, sizeof(data_to_send.SC7U22_data)); + for (int i = 0; i < 6; i++) { + // SC7U22_data[i] 是一个 signed short (2字节) + // 将其低字节放在前面 + imu_packet[4 + i * 2] = (uint8_t)(data_to_send.SC7U22_data[i] & 0xFF); + // 将其高字节放在后面 + imu_packet[4 + i * 2 + 1] = (uint8_t)((data_to_send.SC7U22_data[i] >> 8) & 0xFF); + } + // xlog("imu %d\n",data_to_send.SC7U22_data[0]); + // xlog("imu_packet: 0x%x 0x%x 0x%x\n",imu_packet[4],imu_packet[5],imu_packet[6]); send_data_to_ble_client(&imu_packet, IMU_PACKET_LEN); } @@ -216,7 +224,11 @@ void BLE_send_fuc(void){ mag_packet[2] = MAG_PAYLOAD_LEN; mag_packet[3] = MAG_TYPE; // 拷贝磁力计数据 - memcpy(&mag_packet[4], data_to_send.mmc5603nj_buffer, sizeof(data_to_send.mmc5603nj_buffer)); + // memcpy(&mag_packet[4], data_to_send.mmc5603nj_buffer, sizeof(data_to_send.mmc5603nj_buffer)); + for (int i = 0; i < 9; i++) { + mag_packet[4 + i] = data_to_send.mmc5603nj_buffer[i]; + } + // xlog("mag: 0x%x 0x%x 0x%x\n",mag_packet[4],mag_packet[5],mag_packet[6]); send_data_to_ble_client(&mag_packet, MAG_PACKET_LEN); }