#pragma once #include "uappbase/base.hpp" namespace iflytop { class AppHardware { private: /* data */ public: TMC51X0 MOTO1; TMC51X0 MOTO2; TMC51X0 MOTO3; TMC51X0 MOTO4; ZGPIO MOTO_POWER_EN; ZGPIO MOTO1_CSN; ZGPIO MOTO2_CSN; ZGPIO MOTO3_CSN; ZGPIO MOTO4_CSN; ZGPIO MOTO1_DRV_ENN; ZGPIO MOTO2_DRV_ENN; ZGPIO MOTO3_DRV_ENN; ZGPIO MOTO4_DRV_ENN; ZGPIO ID1; ZGPIO ID2; ZGPIO ID3; ZGPIO ID4; ZGPIO ID5; ZGPIO IO_OUT1; ZGPIO IO_OUT2; ZGPIO BLE_CONNECTED_STATE_IO_PE6; UART_HandleTypeDef* tjcUart; UART_HandleTypeDef* remoteContolerUart; static AppHardware* ins() { static AppHardware instance; return &instance; } void initialize(); TMC51X0* getPump(int32_t index) { if (index == 0) return &MOTO1; if (index == 1) return &MOTO2; if (index == 2) return &MOTO3; if (index == 3) return &MOTO4; ZASSERT(false); return nullptr; } }; } // namespace iflytop