Relay.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /*********************************************************************************************************
  2. * 模块名称:Relay.h
  3. * 摘 要:Relay模块
  4. * 当前版本:1.0.0
  5. * 作 者:Leyutek(COPYRIGHT 2018 - 2021 Leyutek. All rights reserved.)
  6. * 完成日期:2021年07月01日
  7. * 内 容:
  8. * 注 意:
  9. **********************************************************************************************************
  10. * 取代版本:
  11. * 作 者:
  12. * 完成日期:
  13. * 修改内容:
  14. * 修改文件:
  15. *********************************************************************************************************/
  16. #ifndef _RELAY_H_
  17. #define _RELAY_H_
  18. /*********************************************************************************************************
  19. * 包含头文件
  20. *********************************************************************************************************/
  21. #include "gd32e230x_conf.h"
  22. #include "stdbool.h"
  23. /*********************************************************************************************************
  24. * 宏定义
  25. *********************************************************************************************************/
  26. #define RELAY8 7
  27. #define RELAY7 6
  28. #define RELAY6 5
  29. #define RELAY5 4
  30. #define RELAY4 3
  31. #define RELAY3 2
  32. #define RELAY2 1
  33. #define RELAY1 0
  34. #define RELAY_ON 1
  35. #define RELAY_OFF 0
  36. #define RELAY_RCU RCU_GPIOB
  37. #define RELAY_IO GPIOB
  38. #define RELAY_8 GPIO_PIN_15
  39. #define RELAY_7 GPIO_PIN_14
  40. #define RELAY_6 GPIO_PIN_13
  41. #define RELAY_5 GPIO_PIN_12
  42. #define RELAY_4 GPIO_PIN_11
  43. #define RELAY_3 GPIO_PIN_10
  44. #define RELAY_2 GPIO_PIN_9
  45. #define RELAY_1 GPIO_PIN_8
  46. #define IO_TEST GPIO_PIN_2
  47. #define IO_RST GPIO_PIN_14
  48. #define IO_RCU_C GPIOC
  49. #define IO_RCU_B GPIOB
  50. #define RELAY_1_OFF gpio_bit_reset(RELAY_IO, RELAY_1) // 输出低电平
  51. #define RELAY_1_ON gpio_bit_set(RELAY_IO,RELAY_1) // 输出高电平
  52. #define RELAY_2_OFF gpio_bit_reset(RELAY_IO, RELAY_2) // 输出低电平
  53. #define RELAY_2_ON gpio_bit_set(RELAY_IO,RELAY_2) // 输出高电平
  54. #define RELAY_3_OFF gpio_bit_reset(RELAY_IO, RELAY_3) // 输出低电平
  55. #define RELAY_3_ON gpio_bit_set(RELAY_IO,RELAY_3) // 输出高电平
  56. #define RELAY_4_OFF gpio_bit_reset(RELAY_IO, RELAY_4) // 输出低电平
  57. #define RELAY_4_ON gpio_bit_set(RELAY_IO,RELAY_4) // 输出高电平
  58. #define RELAY_5_OFF gpio_bit_reset(RELAY_IO, RELAY_5) // 输出低电平
  59. #define RELAY_5_ON gpio_bit_set(RELAY_IO,RELAY_5) // 输出高电平
  60. #define RELAY_6_OFF gpio_bit_reset(RELAY_IO, RELAY_6) // 输出低电平
  61. #define RELAY_6_ON gpio_bit_set(RELAY_IO,RELAY_6) // 输出高电平
  62. #define RELAY_7_OFF gpio_bit_reset(RELAY_IO, RELAY_7) // 输出低电平
  63. #define RELAY_7_ON gpio_bit_set(RELAY_IO,RELAY_7) // 输出高电平
  64. #define RELAY_8_OFF gpio_bit_reset(RELAY_IO, RELAY_8) // 输出低电平
  65. #define RELAY_8_ON gpio_bit_set(RELAY_IO,RELAY_8) // 输出高电平
  66. /*********************************************************************************************************
  67. * 枚举结构体
  68. *********************************************************************************************************/
  69. /*********************************************************************************************************
  70. * API函数声明
  71. *********************************************************************************************************/
  72. void InitRelay(void); //初始化Relay模块
  73. void Relayx_Onoff_state(uint8_t RLx,uint8_t st);
  74. void IoInit(void);
  75. bool get_test();
  76. bool get_rst();
  77. #endif