gpio.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  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 = 0, // KC 保护跳闸
  19. DO_OUT1, // KC 保护合闸
  20. DO_OUT2, // KC 遥控分闸
  21. DO_OUT3, // KC 遥控合闸
  22. DO_OUT4, // KC 残压模块复归
  23. DO_OUT5, // KC 备用1
  24. DO_OUT6, // KC 备用2
  25. DO_OUT7, // KC 备用3
  26. DO_OUT_PRESET, // KC 预置继电器 只能控制前4个
  27. DO_IN_PRESET, // KC 预置继电器 返校状态
  28. DO_NUM, // 支持的开出个数
  29. };
  30. // sunxi 20220413 added
  31. enum
  32. {
  33. // KOUT_EN0,
  34. // KOUT_EN1, //辅助板上的单片机控
  35. GPIO_NUM_OTHER,
  36. };
  37. /*------------------------------ 外部函数 -------------------------------------
  38. */
  39. int gpio_init(void);
  40. int gpio_exit(void);
  41. unsigned int gpio_get_kin(unsigned int addr);
  42. unsigned int gpio_get_wirelessin(void);
  43. unsigned int gpio_get_version(void);
  44. unsigned int gpio_get_addr(void);
  45. void _led_run_err(void);
  46. void esam_power_ctrl(int on);
  47. int gpio_test(void);
  48. unsigned int gpio_get_di(void);
  49. #ifdef DO_KOUT_CHECK
  50. unsigned short gpio_di_fj(unsigned char index);
  51. #else
  52. unsigned short gpio_di_fj(void);
  53. #endif
  54. void gpio_kout_do(int on, unsigned int kout);
  55. void gpio_pwm_do(int on, unsigned int kout);
  56. #endif
  57. /*------------------------------ 文件结束 -------------------------------------
  58. */