IOInterfaceMapper.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. namespace DiosCtrlBox
  3. {
  4. //GPIO引脚-功能-映射
  5. class IOInterfaceMapper
  6. {
  7. public:
  8. static void Load(const std::string &configFile);
  9. public:
  10. static unsigned char ID_SYSTEM_RESET; //系统复位开关
  11. static unsigned char ID_TUBE_HEIGHT_SERVO_ON; //球管高度伺服 Servo on
  12. static unsigned char ID_TUBE_ANGLE_SERVO_ON; //球管角度伺服 Servo on
  13. static unsigned char ID_HAND_SWITCH_GEAR_FIRST; //一级手闸
  14. static unsigned char ID_HAND_SWITCH_GEAR_SECOND; //二级手闸
  15. static unsigned char ID_TUBE_HEIGHT_PULSE; //球管垂直运动脉冲
  16. static unsigned char ID_TUBE_HEIGHT_DIRECTION; //球管垂直运动方向
  17. static unsigned char ID_TUBE_HEIGHT_AD; //球管高度AD数据
  18. static unsigned char ID_TUBE_ANGLE_AD; //球管角度AD数据
  19. static unsigned char ID_TUBE_HEIGHT_HIGH_LIMIT; //球管高度上限位
  20. static unsigned char ID_TUBE_HEIGHT_LOW_LIMIT; //球管高度下限位
  21. static unsigned char ID_TUBE_HEIGHT_ENCODER_AXIS_A; //球管高度编码器A轴
  22. static unsigned char ID_TUBE_HEIGHT_ENCODER_AXIS_B; //球管高度编码器B轴
  23. static unsigned char ID_TUBE_HEIGHT_ENCODER_AXIS_Z; //球管高度编码器Z轴
  24. static unsigned char ID_TUBE_ANGLE_HIGH_LIMIT; //球管旋转上限位
  25. static unsigned char ID_TUBE_ANGLE_LOW_LIMIT; //球管旋转下限位
  26. static unsigned char ID_TUBE_ANGLE_ENCODER_AXIS_A; //球管旋转编码器A轴
  27. static unsigned char ID_TUBE_ANGLE_ENCODER_AXIS_B; //球管旋转编码器B轴
  28. static unsigned char ID_TUBE_ANGLE_ENCODER_AXIS_Z; //球管旋转编码器Z轴
  29. static unsigned char ID_TUBE_ANGLE_DIRECTION; //球管角度方向
  30. static unsigned char ID_TUBE_ANGLE_PULSE; //球管角度脉冲
  31. static unsigned char ID_XRAYON_NOTIFY; //发生器射线指示
  32. static unsigned char ID_POWER; //5V电源
  33. static unsigned char ID_DETECTOR_HEIGHT_AD; //探测器高度AD数据
  34. static unsigned char ID_TUBE_HEIGHT_ENCODER; //球管高度编码器
  35. static unsigned char ID_TUBE_ANGLE_ENCODER; //球管角度编码器
  36. static unsigned char ID_DETECTOR_HEIGHT_ENCODER; //探测器高度编码器
  37. static unsigned char ID_SOFTWARE_CHAIN_INTERFACE_A; //连锁器接口A
  38. static unsigned char ID_SOFTWARE_CHAIN_INTERFACE_B; //连锁器接口B
  39. static unsigned char ID_EXPOSURE_TRIGGER; //同步盒信号端口触发
  40. static unsigned char ID_MCU; //MCU
  41. static unsigned char ID_RS232; //RS232/485
  42. static unsigned char ID_CAN; //Can
  43. static unsigned short ID_CAN_STDID_TUBE_CIRCULAR_ENCODER;//TUBE_CIRCULAR_ENCODER stdid
  44. static unsigned short ID_CAN_STDID_TUBE_SWING_ENCODER;//TUBE_SWING_ENCODER stdid
  45. private:
  46. static void DoMapPinsToInterfaceID(ResDataObject &pindefines);
  47. };
  48. }