24using ::apollo::drivers::canbus::Byte;
33 static const uint32_t PERIOD = 20 * 1000;
38 set_p_steer_angle_en_ctrl(data, steer_angle_en_ctrl_);
39 set_p_steer_angle_cmd(data, steer_angle_cmd_);
45 steer_angle_cmd_ = 0.0;
50 steer_angle_en_ctrl_ = steer_angle_en_ctrl;
59void Steercommand112::set_p_steer_angle_en_ctrl(
62 int x = steer_angle_en_ctrl;
64 Byte to_set(data + 0);
65 to_set.set_value(
static_cast<uint8_t
>(x), 0, 8);
69 steer_angle_cmd_ = steer_angle_cmd;
77void Steercommand112::set_p_steer_angle_cmd(uint8_t* data,
78 double steer_angle_cmd) {
79 steer_angle_cmd = ProtocolData::BoundedValue(-0.524, 0.524, steer_angle_cmd);
80 int x =
static_cast<int>(steer_angle_cmd / 0.001000);
83 t =
static_cast<uint8_t
>(x & 0xFF);
84 Byte to_set0(data + 1);
85 to_set0.set_value(t, 0, 8);
88 t =
static_cast<uint8_t
>(x & 0xFF);
89 Byte to_set1(data + 2);
90 to_set1.set_value(t, 0, 8);
Steercommand112 * set_steer_angle_cmd(double steer_angle_cmd)
Steercommand112 * set_steer_angle_en_ctrl(Steer_command_112::Steer_angle_en_ctrlType steer_angle_en_ctrl)
void UpdateData(uint8_t *data) override
uint32_t GetPeriod() const override
@ STEER_ANGLE_EN_CTRL_DISABLE