25using ::apollo::drivers::canbus::Byte;
34 static const uint32_t PERIOD = 20 * 1000;
39 set_p_steering_target(data, steering_target_);
40 set_p_steering_enable_control(data, steering_enable_control_);
45 steering_target_ = 0.0;
46 steering_enable_control_ =
51 double steering_target) {
52 steering_target_ = steering_target;
59void Steeringcontrola2::set_p_steering_target(uint8_t* data,
60 double steering_target) {
61 steering_target = ProtocolData::BoundedValue(-32.0, 32.0, steering_target);
62 int x =
static_cast<int>((steering_target - -1638.350000) / 0.050000);
65 t =
static_cast<uint8_t
>(x & 0xFF);
66 Byte to_set0(data + 1);
67 to_set0.set_value(t, 0, 8);
70 t =
static_cast<uint8_t
>(x & 0xFF);
71 Byte to_set1(data + 2);
72 to_set1.set_value(t, 0, 8);
77 steering_enable_control_ = steering_enable_control;
86void Steeringcontrola2::set_p_steering_enable_control(
89 int x = steering_enable_control;
91 Byte to_set(data + 0);
92 to_set.set_value(
static_cast<uint8_t
>(x), 0, 8);
Steeringcontrola2 * set_steering_target(double steering_target)
Steeringcontrola2 * set_steering_enable_control(Steering_control_a2::Steering_enable_controlType steering_enable_control)
void UpdateData(uint8_t *data) override
uint32_t GetPeriod() const override
Steering_enable_controlType
@ STEERING_ENABLE_CONTROL_STEERING_MANUALCONTROL