Key.h 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*********************************************************************************************************
  2. * 模块名称:Key.h
  3. * 摘 要:Key模块,进行独立按键初始化,以及按键扫描函数实现
  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 _KEY_H_
  17. #define _KEY_H_
  18. /*********************************************************************************************************
  19. * 包含头文件
  20. *********************************************************************************************************/
  21. #include "gd32e230x_conf.h"
  22. /*********************************************************************************************************
  23. * 宏定义
  24. *********************************************************************************************************/
  25. //#define KEY_RCU RCU_GPIOB
  26. //#define KEY_IO GPIOB
  27. //#define KEY1 GPIO_PIN_4
  28. //#define KEY2 GPIO_PIN_5
  29. //#define KEY3 GPIO_PIN_6
  30. //#define KEY4 GPIO_PIN_7
  31. //#define KEY_ON 0
  32. //#define KEY_OFF 1
  33. #define KEY_NAME_MAX 5
  34. #define KEY_A_RCU RCU_GPIOA
  35. #define KEY_A_IO GPIOA
  36. #define KEY_B_RCU RCU_GPIOB
  37. #define KEY_B_IO GPIOB
  38. #define KEY_F_RCU RCU_GPIOF
  39. #define KEY_F_IO GPIOF
  40. #define KEY1 GPIO_PIN_7
  41. #define KEY2 GPIO_PIN_6
  42. #define KEY3 GPIO_PIN_12
  43. #define KEY4 GPIO_PIN_8
  44. #define KEY5 GPIO_PIN_15
  45. #define KEY_ON 0
  46. #define KEY_OFF 1
  47. /*********************************************************************************************************
  48. * 枚举结构体
  49. *********************************************************************************************************/
  50. /*********************************************************************************************************
  51. * API函数声明
  52. *********************************************************************************************************/
  53. void InitKey(void); //初始化Key模块
  54. unsigned char ScanKey(unsigned int gpio_periph,unsigned int pin); //
  55. unsigned char ReadKeyValue(void); //上电读取一次modbus的地址
  56. #endif