gpio.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. ESAM_PWR, // 加密芯片电源
  38. // WATCHDOG,
  39. LINE_LOSS_SET, // 线损维护口切换
  40. GPIO_NUM_OTHER,
  41. };
  42. /*------------------------------ 外部函数 -------------------------------------
  43. */
  44. int gpio_init(void);
  45. int gpio_exit(void);
  46. unsigned int gpio_get_kin(unsigned int addr);
  47. unsigned int gpio_get_wirelessin(void);
  48. unsigned int gpio_get_version(void);
  49. unsigned int gpio_get_addr(void);
  50. // void gpio_watchdog_reset(void);
  51. void _led_run_err(void);
  52. void esam_power_ctrl(int on);
  53. int gpio_test(void);
  54. unsigned int gpio_get_di(void);
  55. #ifdef DO_KOUT_CHECK
  56. unsigned short gpio_di_fj(unsigned char index);
  57. #else
  58. unsigned short gpio_di_fj(void);
  59. #endif
  60. void gpio_kout_do(int on, unsigned int kout);
  61. void gpio_pwm_do(int on, unsigned int kout);
  62. #endif
  63. /*------------------------------ 文件结束 -------------------------------------
  64. */