측정 데이터 BE 통일

- reb:/red:/rdb:/rdd:/raa: 패킷의 데이터 형식 BE
This commit is contained in:
2026-04-15 09:32:19 +09:00
parent 0ede6c9cb8
commit 77844318ed
2 changed files with 50 additions and 50 deletions

View File

@@ -715,17 +715,17 @@ dr_adc_err_t dr_adc_burst_capture_transmit(uint8_t freq_option, uint16_t delay_u
uint16_t total_data_bytes = num_samples * 2;
uint16_t src_idx = 0;
/* Packet 1: reb: header + data merged */
/* Packet 1: reb: header + data merged (Big-Endian) */
ble_buffer[0] = 'r'; ble_buffer[1] = 'e'; ble_buffer[2] = 'b'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(num_samples & 0xFF);
ble_buffer[5] = (uint8_t)(num_samples >> 8);
ble_buffer[4] = (uint8_t)(num_samples >> 8);
ble_buffer[5] = (uint8_t)(num_samples & 0xFF);
uint16_t dst_idx = BLE_REB_HEADER_LEN;
uint16_t first_chunk = (total_data_bytes > BLE_REB_DATA_LEN) ? BLE_REB_DATA_LEN : total_data_bytes;
while (src_idx < num_samples && (dst_idx - BLE_REB_HEADER_LEN) < first_chunk) {
uint16_t sample = m_echo_buffer[src_idx++] & 0x0FFF;
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
ble_buffer[dst_idx++] = (uint8_t)(sample >> 8);
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(ble_buffer, dst_idx / 2);
@@ -736,14 +736,14 @@ dr_adc_err_t dr_adc_burst_capture_transmit(uint8_t freq_option, uint16_t delay_u
dr_sd_delay_ms(BLE_PACKET_DELAY_MS);
ble_buffer[0] = 'r'; ble_buffer[1] = 'e'; ble_buffer[2] = 'd'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(pkt & 0xFF);
ble_buffer[5] = (uint8_t)(pkt >> 8);
ble_buffer[4] = (uint8_t)(pkt >> 8);
ble_buffer[5] = (uint8_t)(pkt & 0xFF);
dst_idx = BLE_RED_HEADER_LEN;
while (src_idx < num_samples && (dst_idx - BLE_RED_HEADER_LEN) < BLE_RED_DATA_LEN) {
uint16_t sample = m_echo_buffer[src_idx++] & 0x0FFF;
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
ble_buffer[dst_idx++] = (uint8_t)(sample >> 8);
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(ble_buffer, dst_idx / 2);
@@ -862,17 +862,17 @@ dr_adc_err_t dr_adc_transmit_channel(const dr_maa_channel_t *ch_data,
uint16_t total_data_bytes = ch_data->num_samples * 2;
uint16_t src_idx = 0;
/* Packet 1: reb: header + data merged */
/* Packet 1: reb: header + data merged (Big-Endian) */
ble_buffer[0] = 'r'; ble_buffer[1] = 'e'; ble_buffer[2] = 'b'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(ch_data->num_samples & 0xFF);
ble_buffer[5] = (uint8_t)(ch_data->num_samples >> 8);
ble_buffer[4] = (uint8_t)(ch_data->num_samples >> 8);
ble_buffer[5] = (uint8_t)(ch_data->num_samples & 0xFF);
uint16_t dst_idx = BLE_REB_HEADER_LEN;
uint16_t first_chunk = (total_data_bytes > BLE_REB_DATA_LEN) ? BLE_REB_DATA_LEN : total_data_bytes;
while (src_idx < ch_data->num_samples && (dst_idx - BLE_REB_HEADER_LEN) < first_chunk) {
uint16_t sample = ch_data->samples[src_idx++] & 0x0FFF;
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
ble_buffer[dst_idx++] = (uint8_t)(sample >> 8);
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(ble_buffer, dst_idx / 2);
@@ -883,14 +883,14 @@ dr_adc_err_t dr_adc_transmit_channel(const dr_maa_channel_t *ch_data,
dr_sd_delay_ms(BLE_PACKET_DELAY_MS);
ble_buffer[0] = 'r'; ble_buffer[1] = 'e'; ble_buffer[2] = 'd'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(pkt & 0xFF);
ble_buffer[5] = (uint8_t)(pkt >> 8);
ble_buffer[4] = (uint8_t)(pkt >> 8);
ble_buffer[5] = (uint8_t)(pkt & 0xFF);
dst_idx = BLE_RED_HEADER_LEN;
while (src_idx < ch_data->num_samples && (dst_idx - BLE_RED_HEADER_LEN) < BLE_RED_DATA_LEN) {
uint16_t sample = ch_data->samples[src_idx++] & 0x0FFF;
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
ble_buffer[dst_idx++] = (uint8_t)(sample >> 8);
ble_buffer[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(ble_buffer, dst_idx / 2);
@@ -917,9 +917,9 @@ dr_adc_err_t dr_adc_delta_compress(const uint16_t *samples, uint16_t num_samples
uint16_t idx = 0;
/* First sample: 16-bit raw value */
out_buffer[idx++] = (uint8_t)(samples[0] & 0xFF);
/* First sample: 16-bit raw value (Big-Endian) */
out_buffer[idx++] = (uint8_t)(samples[0] >> 8);
out_buffer[idx++] = (uint8_t)(samples[0] & 0xFF);
/* Delta encode remaining samples */
for (uint16_t i = 1; i < num_samples; i++) {
@@ -931,8 +931,8 @@ dr_adc_err_t dr_adc_delta_compress(const uint16_t *samples, uint16_t num_samples
} else {
/* Out of range: escape + 16-bit raw value */
out_buffer[idx++] = DELTA_ESCAPE_BYTE;
out_buffer[idx++] = (uint8_t)(samples[i] & 0xFF);
out_buffer[idx++] = (uint8_t)(samples[i] >> 8);
out_buffer[idx++] = (uint8_t)(samples[i] & 0xFF);
}
}
@@ -958,12 +958,12 @@ dr_adc_err_t dr_adc_transmit_channel_delta(const dr_maa_channel_t *ch_data,
ch_data->num_samples, compressed_size,
100.0f * compressed_size / (ch_data->num_samples * 2));
/* Packet 1: rdb: header(8) + delta data merged */
/* Packet 1: rdb: header(8) + delta data merged (Big-Endian) */
ble_buffer[0] = 'r'; ble_buffer[1] = 'd'; ble_buffer[2] = 'b'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(ch_data->num_samples & 0xFF);
ble_buffer[5] = (uint8_t)(ch_data->num_samples >> 8);
ble_buffer[6] = (uint8_t)(compressed_size & 0xFF);
ble_buffer[7] = (uint8_t)(compressed_size >> 8);
ble_buffer[4] = (uint8_t)(ch_data->num_samples >> 8);
ble_buffer[5] = (uint8_t)(ch_data->num_samples & 0xFF);
ble_buffer[6] = (uint8_t)(compressed_size >> 8);
ble_buffer[7] = (uint8_t)(compressed_size & 0xFF);
#define BLE_RDB_HEADER_LEN 8 /* rdb: tag(4) + num_samples(2) + compressed_size(2) */
uint16_t rdb_data_cap = BLE_MTU_SIZE - BLE_RDB_HEADER_LEN; /* 236 bytes */
@@ -985,8 +985,8 @@ dr_adc_err_t dr_adc_transmit_channel_delta(const dr_maa_channel_t *ch_data,
dr_sd_delay_ms(BLE_PACKET_DELAY_MS);
ble_buffer[0] = 'r'; ble_buffer[1] = 'd'; ble_buffer[2] = 'd'; ble_buffer[3] = ':';
ble_buffer[4] = (uint8_t)(pkt & 0xFF);
ble_buffer[5] = (uint8_t)(pkt >> 8);
ble_buffer[4] = (uint8_t)(pkt >> 8);
ble_buffer[5] = (uint8_t)(pkt & 0xFF);
dst_idx = BLE_RED_HEADER_LEN;
while (src_idx < compressed_size && (dst_idx - BLE_RED_HEADER_LEN) < BLE_RED_DATA_LEN) {
@@ -1047,18 +1047,18 @@ static void maa_async_send_header(void)
uint16_t total_data_bytes = ch->num_samples * 2;
/* reb: header + data merged */
/* reb: header + data merged (Big-Endian) */
buf[0] = 'r'; buf[1] = 'e'; buf[2] = 'b'; buf[3] = ':';
buf[4] = (uint8_t)(ch->num_samples & 0xFF);
buf[5] = (uint8_t)(ch->num_samples >> 8);
buf[4] = (uint8_t)(ch->num_samples >> 8);
buf[5] = (uint8_t)(ch->num_samples & 0xFF);
uint16_t dst_idx = BLE_REB_HEADER_LEN;
uint16_t first_chunk = (total_data_bytes > BLE_REB_DATA_LEN) ? BLE_REB_DATA_LEN : total_data_bytes;
uint16_t src_idx = 0;
while (src_idx < ch->num_samples && (dst_idx - BLE_REB_HEADER_LEN) < first_chunk) {
uint16_t sample = ch->samples[src_idx++];
buf[dst_idx++] = (uint8_t)(sample & 0xFF);
buf[dst_idx++] = (uint8_t)(sample >> 8);
buf[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(buf, dst_idx / 2);
@@ -1094,10 +1094,10 @@ static bool maa_async_send_data_packet(void)
uint16_t remaining = total_data_bytes - g_maa_ctx.data_offset;
uint16_t chunk_size = (remaining > BLE_RED_DATA_LEN) ? BLE_RED_DATA_LEN : remaining;
/* red: packet header */
/* red: packet header (Big-Endian) */
buf[0] = 'r'; buf[1] = 'e'; buf[2] = 'd'; buf[3] = ':';
buf[4] = (uint8_t)(pkt_idx & 0xFF);
buf[5] = (uint8_t)(pkt_idx >> 8);
buf[4] = (uint8_t)(pkt_idx >> 8);
buf[5] = (uint8_t)(pkt_idx & 0xFF);
/* Copy sample data */
uint16_t src_sample_idx = g_maa_ctx.data_offset / 2;
@@ -1105,8 +1105,8 @@ static bool maa_async_send_data_packet(void)
for (uint16_t i = 0; i < chunk_size / 2 && src_sample_idx < ch->num_samples; i++, src_sample_idx++)
{
uint16_t sample = ch->samples[src_sample_idx];
buf[dst_idx++] = (uint8_t)(sample & 0xFF);
buf[dst_idx++] = (uint8_t)(sample >> 8);
buf[dst_idx++] = (uint8_t)(sample & 0xFF);
}
dr_binary_tx_safe(buf, dst_idx / 2);
@@ -1131,8 +1131,8 @@ static void maa_async_send_completion(uint16_t status)
dr_sd_delay_ms(50);
buf[0] = 'r'; buf[1] = 'a'; buf[2] = 'a'; buf[3] = ':';
buf[4] = (uint8_t)(status & 0xFF);
buf[5] = (uint8_t)(status >> 8);
buf[4] = (uint8_t)(status >> 8);
buf[5] = (uint8_t)(status & 0xFF);
dr_binary_tx_safe(buf, 3);

View File

@@ -177,7 +177,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -193,7 +193,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -625,7 +625,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -641,7 +641,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -657,7 +657,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -673,7 +673,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -689,7 +689,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -705,7 +705,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -801,7 +801,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -817,7 +817,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -833,7 +833,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -849,7 +849,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -865,7 +865,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -881,7 +881,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\parser.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\parser.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -897,7 +897,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\dr_adc121s051\dr_adc121s051.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\dr_adc121s051\dr_adc121s051.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
@@ -913,7 +913,7 @@
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>C:\jhChun\VesiScan-Basic\pc_firm\dr_adc121s051\dr_adc121s051.c</Filename>
<Filename>..\..\..\..\..\..\pc_firm\dr_adc121s051\dr_adc121s051.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>