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.

51 lines
988 B

11 months ago
11 months ago
11 months ago
  1. #pragma once
  2. #include "uappbase/base.hpp"
  3. namespace iflytop {
  4. class AppHardware {
  5. private:
  6. /* data */
  7. public:
  8. TMC51X0 MOTO1;
  9. TMC51X0 MOTO2;
  10. TMC51X0 MOTO3;
  11. TMC51X0 MOTO4;
  12. ZGPIO MOTO_POWER_EN;
  13. ZGPIO MOTO1_CSN;
  14. ZGPIO MOTO2_CSN;
  15. ZGPIO MOTO3_CSN;
  16. ZGPIO MOTO4_CSN;
  17. ZGPIO MOTO1_DRV_ENN;
  18. ZGPIO MOTO2_DRV_ENN;
  19. ZGPIO MOTO3_DRV_ENN;
  20. ZGPIO MOTO4_DRV_ENN;
  21. ZGPIO ID1;
  22. ZGPIO ID2;
  23. ZGPIO ID3;
  24. ZGPIO ID4;
  25. ZGPIO ID5;
  26. ZGPIO IO_OUT1;
  27. ZGPIO IO_OUT2;
  28. ZGPIO BLE_CONNECTED_STATE_IO_PE6;
  29. UART_HandleTypeDef* tjcUart;
  30. UART_HandleTypeDef* remoteContolerUart;
  31. static AppHardware* ins() {
  32. static AppHardware instance;
  33. return &instance;
  34. }
  35. void initialize();
  36. TMC51X0* getPump(int32_t index) {
  37. if (index == 0) return &MOTO1;
  38. if (index == 1) return &MOTO2;
  39. if (index == 2) return &MOTO3;
  40. if (index == 3) return &MOTO4;
  41. ZASSERT(false);
  42. return nullptr;
  43. }
  44. };
  45. } // namespace iflytop