Fan.c 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*********************************************************************************************************
  2. * Module : Fans.c
  3. * Abstract : Fans modules is used to cool down the device!
  4. * Version : 1.0.0
  5. * Author : Leopul(COPYRIGHT 2025 - 2027 Leopul. All rights reserved.)
  6. * Complete : 2025-02-16
  7. * Content : None
  8. * Note : None
  9. *********************************************************************************************************/
  10. #include "Fan.h"
  11. #include "gd32f30x_libopt.h"
  12. #include "main.h"
  13. void fans_init(void)
  14. {
  15. rcu_periph_clock_enable(RCU_GPIOC);
  16. gpio_init(GPIOC,GPIO_MODE_OUT_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_9);
  17. gpio_bit_reset(GPIOC, GPIO_PIN_9);
  18. sts_data_t *data = get_sts();
  19. data->fans = fans_on_off;
  20. }
  21. void fans_on_off(unsigned char status)
  22. {
  23. sts_data_t *data = get_sts();
  24. if(status == FANS_OFF)
  25. {
  26. gpio_bit_reset(GPIOC, GPIO_PIN_9);
  27. data->m_data.fans_status = FANS_OFF;
  28. }else if(status == FANS_ON)
  29. {
  30. gpio_bit_set(GPIOC, GPIO_PIN_9);
  31. data->m_data.fans_status = FANS_ON;
  32. }else{
  33. }
  34. }