You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

96 lines
2.5 KiB

2 years ago
  1. #pragma once
  2. #include <stddef.h>
  3. #include <stdio.h>
  4. #include "board.h"
  5. #include "sdk\components\subcanmodule\zcancmder_subboard_initer.hpp"
  6. /*******************************************************************************
  7. * PROJECT_INCLUDE *
  8. *******************************************************************************/
  9. #include "sdk/components/step_motor_ctrl_module/step_motor_ctrl_module.hpp"
  10. #include "sdk\components\mini_servo_motor\feite_servo_motor.hpp"
  11. #include "sdk\components\mini_servo_motor\mini_servo_motor_ctrl_module.hpp"
  12. #include "sdk\components\pipette_module\pipette_ctrl_module_v2.hpp"
  13. #include "sdk\components\sensors\m3078\m3078_code_scaner.hpp"
  14. #include "sdk\components\tmc\ic\ztmc4361A.hpp"
  15. #include "sdk\components\tmc\ic\ztmc5130.hpp"
  16. //
  17. #include "sdk\components\sensors\tmp117\tmp117.hpp"
  18. #include "sdk\components\ti\drv8710.hpp"
  19. #include "sdk\components\water_cooling_temperature_control_module\pwm_ctrl_module.hpp"
  20. #include "sdk\components\water_cooling_temperature_control_module\water_cooling_temperature_control_module.hpp"
  21. namespace iflytop {
  22. class FanCtrlModule : public ZIPWMFanCtrlModule {
  23. public:
  24. typedef enum {
  25. kfan0,
  26. kfan1,
  27. kfan0and1,
  28. } fan_index_t;
  29. private:
  30. /* data */
  31. PWMSpeedCtrlModule fan0;
  32. PWMSpeedCtrlModule fan1;
  33. fan_index_t m_fanindex = kfan0and1;
  34. public:
  35. void initialize(fan_index_t index);
  36. virtual void setFanSpeed(int32_t duty) override;
  37. virtual void stop() override;
  38. virtual bool isWorking() override;
  39. virtual bool isError() override;
  40. virtual void clearError() override;
  41. };
  42. class PumpCtrlModule : public ZIPWMPumpCtrlModule {
  43. private:
  44. /* data */
  45. PWMSpeedCtrlModule pump;
  46. public:
  47. void initialize();
  48. virtual void setPumpSpeed(int32_t duty) override;
  49. virtual void stop() override;
  50. virtual bool isWorking() override;
  51. virtual bool isError() override;
  52. virtual void clearError() override;
  53. };
  54. class PeltierCtrlModule : public ZIDcMotorCtrlModule {
  55. public:
  56. typedef enum {
  57. kpeltier0,
  58. kpeltier1,
  59. kpeltier0and1,
  60. } peltier_index_t;
  61. private:
  62. /* data */
  63. DRV8710 peltier0;
  64. DRV8710 peltier1;
  65. bool m_workflag = false;
  66. peltier_index_t m_index;
  67. public:
  68. void initialize(peltier_index_t index);
  69. virtual void setSpeed(int32_t duty) override;
  70. virtual void stop() override;
  71. virtual bool isWorking() override;
  72. virtual bool dumpErrorInfo() override;
  73. virtual bool isError() override;
  74. virtual void clearError() override;
  75. };
  76. } // namespace iflytop