gpio.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /******************************************************************************
  2. 版权所有:
  3. 文件名称: gpio.h
  4. 文件版本: 01.01
  5. 创建作者: sunxi
  6. 创建日期: 2008-07-09
  7. 功能说明: gpio驱动程序。
  8. 其它说明:
  9. 修改记录:
  10. */
  11. #ifndef _GPIO_H
  12. #define _GPIO_H
  13. /*------------------------------- 宏定义 --------------------------------------
  14. */
  15. // 通道配置中控制板硬件地址(0~9)、外部接口之间关系
  16. enum
  17. {
  18. DO_OUT0, // KC-A1开出使能继电器
  19. DO_OUT1, // KC-B1合闸继电器
  20. DO_OUT2, // KC-A2跳闸继电器
  21. DO_OUT3, // KC-B2备用
  22. DO_OUT4, // KC-A3活化启动
  23. DO_OUT5, // KC-B3活化退出
  24. DO_OUT6, // KC-A4残压闭锁
  25. DO_OUT7, // KC-B4残压复归
  26. DO_OUT8, // KC-A5活化退出
  27. DO_OUT9, // KC-B5残压闭锁
  28. DO_NUM,// 支持的开出个数
  29. };
  30. // sunxi 20220413 added
  31. enum
  32. {
  33. // KOUT_EN0,
  34. // KOUT_EN1, //辅助板上的单片机控
  35. RUN_LED,
  36. ERR_LED,
  37. // WATCHDOG,
  38. LINE_LOSS_SET, // 线损维护口切换
  39. GPIO_NUM_OTHER,
  40. };
  41. /*------------------------------ 外部函数 -------------------------------------
  42. */
  43. int gpio_init(void);
  44. int gpio_exit(void);
  45. unsigned int gpio_get_kin(unsigned int addr);
  46. unsigned int gpio_get_wirelessin(void);
  47. unsigned int gpio_get_version(void);
  48. unsigned int gpio_get_addr(void);
  49. // void gpio_watchdog_reset(void);
  50. void _led_run_err(void);
  51. void esam_power_ctrl(int on);
  52. int gpio_test(void);
  53. unsigned int gpio_get_di(void);
  54. #ifdef DO_KOUT_CHECK
  55. unsigned short gpio_di_fj(unsigned char index);
  56. #else
  57. unsigned short gpio_di_fj(void);
  58. #endif
  59. void gpio_kout_do(int on, unsigned int kout);
  60. void gpio_pwm_do(int on, unsigned int kout);
  61. #ifdef GW_AREA_MAIN_2021
  62. void line_loss_maintain(bool bmaintain);
  63. #endif
  64. #endif
  65. /*------------------------------ 文件结束 -------------------------------------
  66. */