handle.c 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include "main.h"
  2. AllFlagStruct AllFlag = {
  3. };
  4. #define TIMER_PERIOD_MS 10
  5. TSS_t m_ledBlink;
  6. void TSS_ledBlink(void);
  7. /**
  8. * @brief 系统初始化
  9. * @param None
  10. * @retval None
  11. */
  12. void SYSTEM_Init(void)
  13. {
  14. GPIOClass.Init();
  15. TIMClass.TIM2_Init(100-1, 7200-1); // 10ms
  16. #ifdef DEBUG_printf
  17. USARTClass.USART1_Init(115200);
  18. printf("begin\n");
  19. #endif
  20. uint8_t ret = 0;
  21. ret = TSS_init(&m_ledBlink, 500/TIMER_PERIOD_MS, TSS_ledBlink);
  22. if(!ret) {
  23. TSS_start(&m_ledBlink);
  24. printf("m_ledBlink TSS init success and started\n");
  25. } else {
  26. printf("m_ledBlink TSS init fail:%d\n", ret);
  27. }
  28. }
  29. /**
  30. * @brief 任务处理
  31. * @param None
  32. * @retval None
  33. */
  34. void TASK_Schedule(void)
  35. {
  36. TSS_while();
  37. }
  38. /**
  39. * @brief 运行指示灯闪烁任务
  40. * @param None
  41. * @retval None
  42. */
  43. void TSS_ledBlink(void)
  44. {
  45. GPIOClass.Toggle(LED_Run);
  46. }
  47. /**
  48. * @brief TIM2中断函数
  49. * @param None
  50. * @retval None
  51. */
  52. void TIM2_IRQHandler(void)
  53. {
  54. if(TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET)
  55. {
  56. TSS_timer();
  57. TIM_ClearITPendingBit(TIM2, TIM_FLAG_Update);
  58. }
  59. }