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.
|
|
#pragma once
#include "uappbase/base.hpp"
#include "ucomponents/eeprom/m24m02_i2c_eeprom.hpp"
namespace iflytop {
class ID { public: ZGPIO ID0; ZGPIO ID1; ZGPIO ID2; ZGPIO ID3; ZGPIO ID4; };
class AppHardware { private: /* data */ public: 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 MOTOR1_REF_L; ZGPIO MOTOR1_REF_R; ZGPIO MOTOR2_REF_L; ZGPIO MOTOR2_REF_R; ZGPIO MOTOR3_REF_L; ZGPIO MOTOR3_REF_R; ZGPIO MOTOR4_REF_L; ZGPIO MOTOR4_REF_R;
TMC51X0 MOTO1; TMC51X0 MOTO2; TMC51X0 MOTO3; TMC51X0 MOTO4;
ID id;
ZGPIO IO_OUT1; ZGPIO IO_OUT2;
ZGPIO BLE_CONNECTED_STATE;
UART_HandleTypeDef* tjcUart; ZGPIO TJC_UART_CH_SEL; ZGPIO TJC_UART_CH_EN;
UART_HandleTypeDef* remoteContolerUart;
M24M02_I2C_EEPROM eeprom;
bool hardwareInitedOK = false; ;
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; }
bool isHardInitOk();
void setTJCScreenInDownloadMode(); };
} // namespace iflytop
|