|
|
@ -709,4 +709,36 @@ void bleuart_schedule() { |
|
|
|
s_module->has_rx_size = 0; |
|
|
|
s_module->receive_data_processing_flag = false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @brief 主动上报 |
|
|
|
* |
|
|
|
* @param buffer 发送的数据 |
|
|
|
* @param buffer_size 发送数据的大小 |
|
|
|
*/ |
|
|
|
void bleuart_notify_send(uint8_t *buffer, uint8_t buffer_size) { |
|
|
|
uint8_t send_times = buffer_size / 15; //发送次数 |
|
|
|
uint8_t send_buffer_remainder = buffer_size % 15; |
|
|
|
uint8_t buffer_temp[16] = {0}; |
|
|
|
uint8_t send_buffer_size = 0; |
|
|
|
uint8_t i = 0; |
|
|
|
uint8_t j = 0; |
|
|
|
|
|
|
|
if (table_handle_m != 0) { |
|
|
|
for (i = 0; i < send_times; i++) { |
|
|
|
for (j = 0; j < 15; j++) { |
|
|
|
buffer_temp[j] = buffer[send_buffer_size++]; |
|
|
|
} |
|
|
|
esp_ble_gatts_send_indicate(table_gatts_if_m, table_conn_id_m, table_handle_m, 15, buffer_temp, false); |
|
|
|
} |
|
|
|
|
|
|
|
if (send_buffer_remainder > 0) { |
|
|
|
for (j = 0; j < send_buffer_remainder; j++) { |
|
|
|
buffer_temp[j] = buffer[send_buffer_size++]; |
|
|
|
} |
|
|
|
buffer_temp[send_buffer_remainder] = 0; |
|
|
|
esp_ble_gatts_send_indicate(table_gatts_if_m, table_conn_id_m, table_handle_m, send_buffer_remainder, buffer_temp, false); |
|
|
|
} |
|
|
|
} |
|
|
|
} |