init_task.c 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. /********************************* (C) РОТЕК ***********************************
  2. * @module init_task
  3. * @file init_task.c
  4. * @version 1.0.0
  5. * @date XX.XX.XXXX
  6. * $brief Инициализация всех задач.
  7. *******************************************************************************
  8. * @history Version Author Comment
  9. * XX.XX.XXXX 1.0.0 Telenkov D.A. First release.
  10. *******************************************************************************
  11. */
  12. #include "init_task.h"
  13. #include "common_config.h"
  14. #include "hw_init.h"
  15. #include "netconf.h"
  16. #include "main.h"
  17. #include "wdg.h"
  18. #include "usart.h"
  19. //#include "led.h"
  20. //#include "buttons.h"
  21. #include "settings_api.h"
  22. #include "rtc.h"
  23. #include "FreeRTOS.h"
  24. #include "task.h"
  25. #ifdef PRINTF_STDLIB
  26. #include <stdio.h>
  27. #endif
  28. #ifdef PRINTF_CUSTOM
  29. #include "tinystdio.h"
  30. #endif
  31. static void vTaskDebug(void *pvParameters);
  32. /**
  33. * @brief Разовая синхронизация времени при старте контроллера
  34. */
  35. TaskHandle_t xHandleSntpOnceSinhro = NULL;
  36. /**
  37. * @brief Задача инициализации. Запускает основные задачи девайса и умирает.
  38. * @retval
  39. */
  40. void InitTask( void *params)
  41. {
  42. BT_6702_Init();
  43. SETTINGS_ResetBootTry();
  44. vTaskDelete(NULL);
  45. taskYIELD();
  46. }
  47. static void vTaskDebug(void *pvParameters)
  48. {
  49. char msg[700];
  50. for(;;)
  51. {
  52. vTaskList(msg);
  53. printf(msg);
  54. printf("\n\r");
  55. vTaskDelay(1000);
  56. }
  57. }
  58. /********************************* (C) РОТЕК **********************************/