You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.7 KiB

3 years ago
3 years ago
3 years ago
  1. #include "esp_gatts_api.h"
  2. #include "esp_log.h"
  3. #include "esp_system.h"
  4. #include "freertos/FreeRTOS.h"
  5. #include "freertos/event_groups.h"
  6. #include "freertos/task.h"
  7. #include "nvs_flash.h"
  8. #include "string.h"
  9. //
  10. #include "ble_spp_server_demo.h"
  11. #include "timer_u.h"
  12. #define MAIN_TAG "MAIN"
  13. static char bluetooth_tx_buffer[profile_b_buffer_size] = {0};
  14. static char bluetooth_rx_buffer[profile_b_buffer_size] = {0};
  15. bluetooth_processer_t s_bluetooth_processer = {
  16. .bluetooth_processer_rx_buf = bluetooth_rx_buffer,
  17. .bluetooth_processer_rx_buf_size = sizeof(bluetooth_rx_buffer),
  18. .bluetooth_processer_tx_buf = bluetooth_tx_buffer,
  19. .bluetooth_processer_tx_buf_size = sizeof(bluetooth_tx_buffer),
  20. .bluetooth_baundrate_one_packet_delay_ms = kbluetooth_baundrate_one_packet_delay_ms,
  21. .port_delay_ms = port_timer_delay_ms,
  22. .bluetooth_rx_buffer_start_receving = false,
  23. .bluetooth_rx_buffer_processing = false,
  24. .order = "order",
  25. .index = 0,
  26. .speedLevel = 0,
  27. .position = 0.0,
  28. .direction = 0,
  29. .code = 0,
  30. .info = "noerror",
  31. .deviceState = "init",
  32. .deviceException = 0,
  33. .deviceExceptionInfo = "noexception",
  34. .table_conn_id_m = 0,
  35. .table_gatts_if_m = 0,
  36. .table_handle_m = 0,
  37. .cmd_flag = false,
  38. .auto_report_flag = false,
  39. };
  40. void app_main(void) {
  41. constructor_bluetooth_processer(&s_bluetooth_processer);
  42. ble_spp_server_demo_app_main(&s_bluetooth_processer);
  43. timer_group_init(TIMER_GROUP_0, TIMER_0, false, timer_group0_interval_num, timer_interval_ms);
  44. while (true) {
  45. bluetooth_gatts_try_process_data();
  46. if (s_bluetooth_processer.auto_report_flag) {
  47. receipt_json_get_status();
  48. s_bluetooth_processer.auto_report_flag = false;
  49. }
  50. }
  51. return;
  52. }