|
|
#include "hardware.hpp"
#include "zsdk/zcanreceiver/zcanreceiver.hpp"
#define TAG "PROTO"
using namespace iflytop;
/***********************************************************************************************************************
* EXT * ***********************************************************************************************************************/ void Hardware::init() { m_motor_spi.init(&MOTOR_SPI); m_modbusBlockHost.initialize(&huart3);
m_sl_mini_ac_ctrl.initAsOutput(PD14, kxs_gpio_nopull, true, false); // m_sl_mini_ac_ctrl
m_atta_mini_air_compressor_ctrl.initAsOutput(PD15, kxs_gpio_nopull, true, false); // m_atta_mini_air_compressor_ctrl
m_motor[0].initialize(&m_motor_spi, MOTOR1_ENN, MOTOR1_CSN); m_motor[0].setIHOLD_IRUN(1, 15, 0); m_motor[0].setMotorShaft(true); m_motor[0].setAcceleration(300000); m_motor[0].setDeceleration(300000);
m_motor[1].initialize(&m_motor_spi, MOTOR2_ENN, MOTOR2_CSN); m_motor[1].setIHOLD_IRUN(1, 15, 0); m_motor[1].setMotorShaft(true); m_motor[1].setAcceleration(300000); m_motor[1].setDeceleration(300000);
int32_t chipv0 = m_motor[0].readChipVERSION(); // 5130:0x11
int32_t chipv1 = m_motor[1].readChipVERSION(); // 5130:0x11
// m_motor[0].rotate(500000);
// m_motor[1].rotate(500000);
ZLOGI(TAG, "chipv0: %x, chipv1: %x", chipv0, chipv1);
auto gstate0 = m_motor[0].getGState(); auto gstate1 = m_motor[1].getGState();
ZLOGI(TAG, "motor0: reset:%d drv_err:%d uv_cp:%d", gstate0.reset, gstate0.drv_err, gstate0.uv_cp); ZLOGI(TAG, "motor1: reset:%d drv_err:%d uv_cp:%d", gstate1.reset, gstate1.drv_err, gstate1.uv_cp);
gstate0 = m_motor[0].getGState(); gstate1 = m_motor[1].getGState();
ZLOGI(TAG, "motor0: reset:%d drv_err:%d uv_cp:%d", gstate0.reset, gstate0.drv_err, gstate0.uv_cp); ZLOGI(TAG, "motor1: reset:%d drv_err:%d uv_cp:%d", gstate1.reset, gstate1.drv_err, gstate1.uv_cp);
m_pressureSensorBus.init(&m_modbusBlockHost); }
|