add rpm message
This commit is contained in:
@@ -7,11 +7,14 @@ MAVPACKED(
|
||||
typedef struct __mavlink_rpm_t {
|
||||
float rpm1; /*< RPM Sensor1*/
|
||||
float rpm2; /*< RPM Sensor2*/
|
||||
float rpm3; /*< RPM Sensor3*/
|
||||
float rpm4; /*< RPM Sensor4*/
|
||||
float rpm5; /*< RPM Sensor5*/
|
||||
}) mavlink_rpm_t;
|
||||
|
||||
#define MAVLINK_MSG_ID_RPM_LEN 8
|
||||
#define MAVLINK_MSG_ID_RPM_LEN 20
|
||||
#define MAVLINK_MSG_ID_RPM_MIN_LEN 8
|
||||
#define MAVLINK_MSG_ID_226_LEN 8
|
||||
#define MAVLINK_MSG_ID_226_LEN 20
|
||||
#define MAVLINK_MSG_ID_226_MIN_LEN 8
|
||||
|
||||
#define MAVLINK_MSG_ID_RPM_CRC 207
|
||||
@@ -23,17 +26,23 @@ typedef struct __mavlink_rpm_t {
|
||||
#define MAVLINK_MESSAGE_INFO_RPM { \
|
||||
226, \
|
||||
"RPM", \
|
||||
2, \
|
||||
5, \
|
||||
{ { "rpm1", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_rpm_t, rpm1) }, \
|
||||
{ "rpm2", NULL, MAVLINK_TYPE_FLOAT, 0, 4, offsetof(mavlink_rpm_t, rpm2) }, \
|
||||
{ "rpm3", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_rpm_t, rpm3) }, \
|
||||
{ "rpm4", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_rpm_t, rpm4) }, \
|
||||
{ "rpm5", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_rpm_t, rpm5) }, \
|
||||
} \
|
||||
}
|
||||
#else
|
||||
#define MAVLINK_MESSAGE_INFO_RPM { \
|
||||
"RPM", \
|
||||
2, \
|
||||
5, \
|
||||
{ { "rpm1", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_rpm_t, rpm1) }, \
|
||||
{ "rpm2", NULL, MAVLINK_TYPE_FLOAT, 0, 4, offsetof(mavlink_rpm_t, rpm2) }, \
|
||||
{ "rpm3", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_rpm_t, rpm3) }, \
|
||||
{ "rpm4", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_rpm_t, rpm4) }, \
|
||||
{ "rpm5", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_rpm_t, rpm5) }, \
|
||||
} \
|
||||
}
|
||||
#endif
|
||||
@@ -46,21 +55,30 @@ typedef struct __mavlink_rpm_t {
|
||||
*
|
||||
* @param rpm1 RPM Sensor1
|
||||
* @param rpm2 RPM Sensor2
|
||||
* @param rpm3 RPM Sensor3
|
||||
* @param rpm4 RPM Sensor4
|
||||
* @param rpm5 RPM Sensor5
|
||||
* @return length of the message in bytes (excluding serial stream start sign)
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_rpm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
|
||||
float rpm1, float rpm2)
|
||||
float rpm1, float rpm2, float rpm3, float rpm4, float rpm5)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_RPM_LEN];
|
||||
_mav_put_float(buf, 0, rpm1);
|
||||
_mav_put_float(buf, 4, rpm2);
|
||||
_mav_put_float(buf, 8, rpm3);
|
||||
_mav_put_float(buf, 12, rpm4);
|
||||
_mav_put_float(buf, 16, rpm5);
|
||||
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RPM_LEN);
|
||||
#else
|
||||
mavlink_rpm_t packet;
|
||||
packet.rpm1 = rpm1;
|
||||
packet.rpm2 = rpm2;
|
||||
packet.rpm3 = rpm3;
|
||||
packet.rpm4 = rpm4;
|
||||
packet.rpm5 = rpm5;
|
||||
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RPM_LEN);
|
||||
#endif
|
||||
@@ -77,22 +95,31 @@ static inline uint16_t mavlink_msg_rpm_pack(uint8_t system_id, uint8_t component
|
||||
* @param msg The MAVLink message to compress the data into
|
||||
* @param rpm1 RPM Sensor1
|
||||
* @param rpm2 RPM Sensor2
|
||||
* @param rpm3 RPM Sensor3
|
||||
* @param rpm4 RPM Sensor4
|
||||
* @param rpm5 RPM Sensor5
|
||||
* @return length of the message in bytes (excluding serial stream start sign)
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_rpm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
|
||||
mavlink_message_t* msg,
|
||||
float rpm1,float rpm2)
|
||||
float rpm1,float rpm2,float rpm3,float rpm4,float rpm5)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_RPM_LEN];
|
||||
_mav_put_float(buf, 0, rpm1);
|
||||
_mav_put_float(buf, 4, rpm2);
|
||||
_mav_put_float(buf, 8, rpm3);
|
||||
_mav_put_float(buf, 12, rpm4);
|
||||
_mav_put_float(buf, 16, rpm5);
|
||||
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RPM_LEN);
|
||||
#else
|
||||
mavlink_rpm_t packet;
|
||||
packet.rpm1 = rpm1;
|
||||
packet.rpm2 = rpm2;
|
||||
packet.rpm3 = rpm3;
|
||||
packet.rpm4 = rpm4;
|
||||
packet.rpm5 = rpm5;
|
||||
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RPM_LEN);
|
||||
#endif
|
||||
@@ -111,7 +138,7 @@ static inline uint16_t mavlink_msg_rpm_pack_chan(uint8_t system_id, uint8_t comp
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_rpm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_rpm_t* rpm)
|
||||
{
|
||||
return mavlink_msg_rpm_pack(system_id, component_id, msg, rpm->rpm1, rpm->rpm2);
|
||||
return mavlink_msg_rpm_pack(system_id, component_id, msg, rpm->rpm1, rpm->rpm2, rpm->rpm3, rpm->rpm4, rpm->rpm5);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -125,7 +152,7 @@ static inline uint16_t mavlink_msg_rpm_encode(uint8_t system_id, uint8_t compone
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_rpm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_rpm_t* rpm)
|
||||
{
|
||||
return mavlink_msg_rpm_pack_chan(system_id, component_id, chan, msg, rpm->rpm1, rpm->rpm2);
|
||||
return mavlink_msg_rpm_pack_chan(system_id, component_id, chan, msg, rpm->rpm1, rpm->rpm2, rpm->rpm3, rpm->rpm4, rpm->rpm5);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -134,21 +161,30 @@ static inline uint16_t mavlink_msg_rpm_encode_chan(uint8_t system_id, uint8_t co
|
||||
*
|
||||
* @param rpm1 RPM Sensor1
|
||||
* @param rpm2 RPM Sensor2
|
||||
* @param rpm3 RPM Sensor3
|
||||
* @param rpm4 RPM Sensor4
|
||||
* @param rpm5 RPM Sensor5
|
||||
*/
|
||||
#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
|
||||
|
||||
static inline void mavlink_msg_rpm_send(mavlink_channel_t chan, float rpm1, float rpm2)
|
||||
static inline void mavlink_msg_rpm_send(mavlink_channel_t chan, float rpm1, float rpm2, float rpm3, float rpm4, float rpm5)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_RPM_LEN];
|
||||
_mav_put_float(buf, 0, rpm1);
|
||||
_mav_put_float(buf, 4, rpm2);
|
||||
_mav_put_float(buf, 8, rpm3);
|
||||
_mav_put_float(buf, 12, rpm4);
|
||||
_mav_put_float(buf, 16, rpm5);
|
||||
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RPM, buf, MAVLINK_MSG_ID_RPM_MIN_LEN, MAVLINK_MSG_ID_RPM_LEN, MAVLINK_MSG_ID_RPM_CRC);
|
||||
#else
|
||||
mavlink_rpm_t packet;
|
||||
packet.rpm1 = rpm1;
|
||||
packet.rpm2 = rpm2;
|
||||
packet.rpm3 = rpm3;
|
||||
packet.rpm4 = rpm4;
|
||||
packet.rpm5 = rpm5;
|
||||
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RPM, (const char *)&packet, MAVLINK_MSG_ID_RPM_MIN_LEN, MAVLINK_MSG_ID_RPM_LEN, MAVLINK_MSG_ID_RPM_CRC);
|
||||
#endif
|
||||
@@ -162,7 +198,7 @@ static inline void mavlink_msg_rpm_send(mavlink_channel_t chan, float rpm1, floa
|
||||
static inline void mavlink_msg_rpm_send_struct(mavlink_channel_t chan, const mavlink_rpm_t* rpm)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
mavlink_msg_rpm_send(chan, rpm->rpm1, rpm->rpm2);
|
||||
mavlink_msg_rpm_send(chan, rpm->rpm1, rpm->rpm2, rpm->rpm3, rpm->rpm4, rpm->rpm5);
|
||||
#else
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RPM, (const char *)rpm, MAVLINK_MSG_ID_RPM_MIN_LEN, MAVLINK_MSG_ID_RPM_LEN, MAVLINK_MSG_ID_RPM_CRC);
|
||||
#endif
|
||||
@@ -176,18 +212,24 @@ static inline void mavlink_msg_rpm_send_struct(mavlink_channel_t chan, const mav
|
||||
is usually the receive buffer for the channel, and allows a reply to an
|
||||
incoming message with minimum stack space usage.
|
||||
*/
|
||||
static inline void mavlink_msg_rpm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, float rpm1, float rpm2)
|
||||
static inline void mavlink_msg_rpm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, float rpm1, float rpm2, float rpm3, float rpm4, float rpm5)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char *buf = (char *)msgbuf;
|
||||
_mav_put_float(buf, 0, rpm1);
|
||||
_mav_put_float(buf, 4, rpm2);
|
||||
_mav_put_float(buf, 8, rpm3);
|
||||
_mav_put_float(buf, 12, rpm4);
|
||||
_mav_put_float(buf, 16, rpm5);
|
||||
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RPM, buf, MAVLINK_MSG_ID_RPM_MIN_LEN, MAVLINK_MSG_ID_RPM_LEN, MAVLINK_MSG_ID_RPM_CRC);
|
||||
#else
|
||||
mavlink_rpm_t *packet = (mavlink_rpm_t *)msgbuf;
|
||||
packet->rpm1 = rpm1;
|
||||
packet->rpm2 = rpm2;
|
||||
packet->rpm3 = rpm3;
|
||||
packet->rpm4 = rpm4;
|
||||
packet->rpm5 = rpm5;
|
||||
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RPM, (const char *)packet, MAVLINK_MSG_ID_RPM_MIN_LEN, MAVLINK_MSG_ID_RPM_LEN, MAVLINK_MSG_ID_RPM_CRC);
|
||||
#endif
|
||||
@@ -219,6 +261,36 @@ static inline float mavlink_msg_rpm_get_rpm2(const mavlink_message_t* msg)
|
||||
return _MAV_RETURN_float(msg, 4);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Get field rpm3 from rpm message
|
||||
*
|
||||
* @return RPM Sensor3
|
||||
*/
|
||||
static inline float mavlink_msg_rpm_get_rpm3(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 8);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Get field rpm4 from rpm message
|
||||
*
|
||||
* @return RPM Sensor4
|
||||
*/
|
||||
static inline float mavlink_msg_rpm_get_rpm4(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 12);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Get field rpm5 from rpm message
|
||||
*
|
||||
* @return RPM Sensor5
|
||||
*/
|
||||
static inline float mavlink_msg_rpm_get_rpm5(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 16);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Decode a rpm message into a struct
|
||||
*
|
||||
@@ -230,6 +302,9 @@ static inline void mavlink_msg_rpm_decode(const mavlink_message_t* msg, mavlink_
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
rpm->rpm1 = mavlink_msg_rpm_get_rpm1(msg);
|
||||
rpm->rpm2 = mavlink_msg_rpm_get_rpm2(msg);
|
||||
rpm->rpm3 = mavlink_msg_rpm_get_rpm3(msg);
|
||||
rpm->rpm4 = mavlink_msg_rpm_get_rpm4(msg);
|
||||
rpm->rpm5 = mavlink_msg_rpm_get_rpm5(msg);
|
||||
#else
|
||||
uint8_t len = msg->len < MAVLINK_MSG_ID_RPM_LEN? msg->len : MAVLINK_MSG_ID_RPM_LEN;
|
||||
memset(rpm, 0, MAVLINK_MSG_ID_RPM_LEN);
|
||||
|
||||
Reference in New Issue
Block a user