Apollo 10.0
自动驾驶开放平台
apollo::canbus::neolix_edu::Adsdrivecommand50类 参考

#include <ads_drive_command_50.h>

类 apollo::canbus::neolix_edu::Adsdrivecommand50 继承关系图:
apollo::canbus::neolix_edu::Adsdrivecommand50 的协作图:

Public 成员函数

 Adsdrivecommand50 ()
 
uint32_t GetPeriod () const override
 
void Parse (const std::uint8_t *bytes, int32_t length, Neolix_edu *chassis) const override
 
void UpdateData (uint8_t *data) override
 
void Reset () override
 
Adsdrivecommand50set_drive_enable (bool drive_enable)
 
Adsdrivecommand50set_auto_shift_command (Ads_drive_command_50::Auto_shift_commandType auto_shift_command)
 
Adsdrivecommand50set_auto_drive_torque (double auto_drive_torque)
 
Adsdrivecommand50set_auto_drivercmd_alivecounter (int auto_drivercmd_alivecounter)
 
Adsdrivecommand50set_auto_drivercmd_checksum (int auto_drivercmd_checksum)
 
- Public 成员函数 继承自 apollo::drivers::canbus::ProtocolData< ::apollo::canbus::Neolix_edu >
 ProtocolData ()=default
 construct protocol data.
 
virtual ~ProtocolData ()=default
 destruct protocol data.
 
virtual int32_t GetLength () const
 
virtual void Parse (const uint8_t *bytes, int32_t length, ::apollo::canbus::Neolix_edu *sensor_data) const
 
virtual void UpdateData_Heartbeat (uint8_t *data)
 

静态 Public 属性

static const int32_t ID = 0x50
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 apollo::drivers::canbus::ProtocolData< ::apollo::canbus::Neolix_edu >
static std::uint8_t CalculateCheckSum (const uint8_t *input, const uint32_t length)
 static function, used to calculate the checksum of input array.
 
static T BoundedValue (T lower, T upper, T val)
 

详细描述

在文件 ads_drive_command_50.h27 行定义.

构造及析构函数说明

◆ Adsdrivecommand50()

apollo::canbus::neolix_edu::Adsdrivecommand50::Adsdrivecommand50 ( )

成员函数说明

◆ GetPeriod()

uint32_t apollo::canbus::neolix_edu::Adsdrivecommand50::GetPeriod ( ) const
overridevirtual

重载 apollo::drivers::canbus::ProtocolData< ::apollo::canbus::Neolix_edu > .

在文件 ads_drive_command_50.cc32 行定义.

32 {
33 // TODO(All) : modify every protocol's period manually
34 static const uint32_t PERIOD = 20 * 1000;
35 return PERIOD;
36}

◆ Parse()

void apollo::canbus::neolix_edu::Adsdrivecommand50::Parse ( const std::uint8_t *  bytes,
int32_t  length,
Neolix_edu chassis 
) const
override

在文件 ads_drive_command_50.cc38 行定义.

39 {
40 chassis->mutable_ads_drive_command_50()->set_drive_enable(
41 drive_enable(bytes, length));
42 chassis->mutable_ads_drive_command_50()->set_auto_shift_command(
43 auto_shift_command(bytes, length));
44 chassis->mutable_ads_drive_command_50()->set_auto_drive_torque(
45 auto_drive_torque(bytes, length));
46}

◆ Reset()

void apollo::canbus::neolix_edu::Adsdrivecommand50::Reset ( )
overridevirtual

重载 apollo::drivers::canbus::ProtocolData< ::apollo::canbus::Neolix_edu > .

在文件 ads_drive_command_50.cc60 行定义.

60 {
61 // TODO(All) : you should check this manually
62 drive_enable_ = false;
64 auto_drive_torque_ = 0.0;
65 auto_drivercmd_alivecounter_ = 0;
66 auto_drivercmd_checksum_ = 0;
67}

◆ set_auto_drive_torque()

Adsdrivecommand50 * apollo::canbus::neolix_edu::Adsdrivecommand50::set_auto_drive_torque ( double  auto_drive_torque)

在文件 ads_drive_command_50.cc126 行定义.

127 {
128 auto_drive_torque_ = auto_drive_torque;
129 return this;
130}

◆ set_auto_drivercmd_alivecounter()

Adsdrivecommand50 * apollo::canbus::neolix_edu::Adsdrivecommand50::set_auto_drivercmd_alivecounter ( int  auto_drivercmd_alivecounter)

在文件 ads_drive_command_50.cc165 行定义.

166 {
167 auto_drivercmd_alivecounter_ = auto_drivercmd_alivecounter;
168 return this;
169}

◆ set_auto_drivercmd_checksum()

Adsdrivecommand50 * apollo::canbus::neolix_edu::Adsdrivecommand50::set_auto_drivercmd_checksum ( int  auto_drivercmd_checksum)

在文件 ads_drive_command_50.cc184 行定义.

185 {
186 auto_drivercmd_checksum_ = auto_drivercmd_checksum;
187 return this;
188}

◆ set_auto_shift_command()

Adsdrivecommand50 * apollo::canbus::neolix_edu::Adsdrivecommand50::set_auto_shift_command ( Ads_drive_command_50::Auto_shift_commandType  auto_shift_command)

在文件 ads_drive_command_50.cc94 行定义.

95 {
96 auto_shift_command_ = auto_shift_command;
97 return this;
98}

◆ set_drive_enable()

Adsdrivecommand50 * apollo::canbus::neolix_edu::Adsdrivecommand50::set_drive_enable ( bool  drive_enable)

在文件 ads_drive_command_50.cc69 行定义.

69 {
70 drive_enable_ = drive_enable;
71 return this;
72}

◆ UpdateData()

void apollo::canbus::neolix_edu::Adsdrivecommand50::UpdateData ( uint8_t *  data)
overridevirtual

重载 apollo::drivers::canbus::ProtocolData< ::apollo::canbus::Neolix_edu > .

在文件 ads_drive_command_50.cc48 行定义.

48 {
49 set_p_drive_enable(data, drive_enable_);
50 set_p_auto_shift_command(data, auto_shift_command_);
51 set_p_auto_drive_torque(data, auto_drive_torque_);
52 ++auto_drivercmd_alivecounter_;
53 auto_drivercmd_alivecounter_ = (auto_drivercmd_alivecounter_) % 16;
54 set_p_auto_drivercmd_alivecounter(data, auto_drivercmd_alivecounter_);
55 auto_drivercmd_checksum_ =
56 data[0] ^ data[1] ^ data[2] ^ data[3] ^ data[4] ^ data[5] ^ data[6];
57 set_p_auto_drivercmd_checksum(data, auto_drivercmd_checksum_);
58}

类成员变量说明

◆ ID

const int32_t apollo::canbus::neolix_edu::Adsdrivecommand50::ID = 0x50
static

在文件 ads_drive_command_50.h30 行定义.


该类的文档由以下文件生成: