mavlink_msg_rc_channels.h
Go to the documentation of this file.
00001 // MESSAGE RC_CHANNELS PACKING
00002 
00003 #define MAVLINK_MSG_ID_RC_CHANNELS 65
00004 
00005 typedef struct __mavlink_rc_channels_t
00006 {
00007  uint32_t time_boot_ms; /*< Timestamp (milliseconds since system boot)*/
00008  uint16_t chan1_raw; /*< RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00009  uint16_t chan2_raw; /*< RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00010  uint16_t chan3_raw; /*< RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00011  uint16_t chan4_raw; /*< RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00012  uint16_t chan5_raw; /*< RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00013  uint16_t chan6_raw; /*< RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00014  uint16_t chan7_raw; /*< RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00015  uint16_t chan8_raw; /*< RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00016  uint16_t chan9_raw; /*< RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00017  uint16_t chan10_raw; /*< RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00018  uint16_t chan11_raw; /*< RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00019  uint16_t chan12_raw; /*< RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00020  uint16_t chan13_raw; /*< RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00021  uint16_t chan14_raw; /*< RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00022  uint16_t chan15_raw; /*< RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00023  uint16_t chan16_raw; /*< RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00024  uint16_t chan17_raw; /*< RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00025  uint16_t chan18_raw; /*< RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
00026  uint8_t chancount; /*< Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.*/
00027  uint8_t rssi; /*< Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.*/
00028 } mavlink_rc_channels_t;
00029 
00030 #define MAVLINK_MSG_ID_RC_CHANNELS_LEN 42
00031 #define MAVLINK_MSG_ID_65_LEN 42
00032 
00033 #define MAVLINK_MSG_ID_RC_CHANNELS_CRC 118
00034 #define MAVLINK_MSG_ID_65_CRC 118
00035 
00036 
00037 
00038 #define MAVLINK_MESSAGE_INFO_RC_CHANNELS { \
00039         "RC_CHANNELS", \
00040         21, \
00041         {  { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_rc_channels_t, time_boot_ms) }, \
00042          { "chan1_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 4, offsetof(mavlink_rc_channels_t, chan1_raw) }, \
00043          { "chan2_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 6, offsetof(mavlink_rc_channels_t, chan2_raw) }, \
00044          { "chan3_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 8, offsetof(mavlink_rc_channels_t, chan3_raw) }, \
00045          { "chan4_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 10, offsetof(mavlink_rc_channels_t, chan4_raw) }, \
00046          { "chan5_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 12, offsetof(mavlink_rc_channels_t, chan5_raw) }, \
00047          { "chan6_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 14, offsetof(mavlink_rc_channels_t, chan6_raw) }, \
00048          { "chan7_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 16, offsetof(mavlink_rc_channels_t, chan7_raw) }, \
00049          { "chan8_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 18, offsetof(mavlink_rc_channels_t, chan8_raw) }, \
00050          { "chan9_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 20, offsetof(mavlink_rc_channels_t, chan9_raw) }, \
00051          { "chan10_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 22, offsetof(mavlink_rc_channels_t, chan10_raw) }, \
00052          { "chan11_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 24, offsetof(mavlink_rc_channels_t, chan11_raw) }, \
00053          { "chan12_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 26, offsetof(mavlink_rc_channels_t, chan12_raw) }, \
00054          { "chan13_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 28, offsetof(mavlink_rc_channels_t, chan13_raw) }, \
00055          { "chan14_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 30, offsetof(mavlink_rc_channels_t, chan14_raw) }, \
00056          { "chan15_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_rc_channels_t, chan15_raw) }, \
00057          { "chan16_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_rc_channels_t, chan16_raw) }, \
00058          { "chan17_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 36, offsetof(mavlink_rc_channels_t, chan17_raw) }, \
00059          { "chan18_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 38, offsetof(mavlink_rc_channels_t, chan18_raw) }, \
00060          { "chancount", NULL, MAVLINK_TYPE_UINT8_T, 0, 40, offsetof(mavlink_rc_channels_t, chancount) }, \
00061          { "rssi", NULL, MAVLINK_TYPE_UINT8_T, 0, 41, offsetof(mavlink_rc_channels_t, rssi) }, \
00062          } \
00063 }
00064 
00065 
00095 static inline uint16_t mavlink_msg_rc_channels_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
00096                                                        uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
00097 {
00098 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
00099         char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
00100         _mav_put_uint32_t(buf, 0, time_boot_ms);
00101         _mav_put_uint16_t(buf, 4, chan1_raw);
00102         _mav_put_uint16_t(buf, 6, chan2_raw);
00103         _mav_put_uint16_t(buf, 8, chan3_raw);
00104         _mav_put_uint16_t(buf, 10, chan4_raw);
00105         _mav_put_uint16_t(buf, 12, chan5_raw);
00106         _mav_put_uint16_t(buf, 14, chan6_raw);
00107         _mav_put_uint16_t(buf, 16, chan7_raw);
00108         _mav_put_uint16_t(buf, 18, chan8_raw);
00109         _mav_put_uint16_t(buf, 20, chan9_raw);
00110         _mav_put_uint16_t(buf, 22, chan10_raw);
00111         _mav_put_uint16_t(buf, 24, chan11_raw);
00112         _mav_put_uint16_t(buf, 26, chan12_raw);
00113         _mav_put_uint16_t(buf, 28, chan13_raw);
00114         _mav_put_uint16_t(buf, 30, chan14_raw);
00115         _mav_put_uint16_t(buf, 32, chan15_raw);
00116         _mav_put_uint16_t(buf, 34, chan16_raw);
00117         _mav_put_uint16_t(buf, 36, chan17_raw);
00118         _mav_put_uint16_t(buf, 38, chan18_raw);
00119         _mav_put_uint8_t(buf, 40, chancount);
00120         _mav_put_uint8_t(buf, 41, rssi);
00121 
00122         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00123 #else
00124         mavlink_rc_channels_t packet;
00125         packet.time_boot_ms = time_boot_ms;
00126         packet.chan1_raw = chan1_raw;
00127         packet.chan2_raw = chan2_raw;
00128         packet.chan3_raw = chan3_raw;
00129         packet.chan4_raw = chan4_raw;
00130         packet.chan5_raw = chan5_raw;
00131         packet.chan6_raw = chan6_raw;
00132         packet.chan7_raw = chan7_raw;
00133         packet.chan8_raw = chan8_raw;
00134         packet.chan9_raw = chan9_raw;
00135         packet.chan10_raw = chan10_raw;
00136         packet.chan11_raw = chan11_raw;
00137         packet.chan12_raw = chan12_raw;
00138         packet.chan13_raw = chan13_raw;
00139         packet.chan14_raw = chan14_raw;
00140         packet.chan15_raw = chan15_raw;
00141         packet.chan16_raw = chan16_raw;
00142         packet.chan17_raw = chan17_raw;
00143         packet.chan18_raw = chan18_raw;
00144         packet.chancount = chancount;
00145         packet.rssi = rssi;
00146 
00147         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00148 #endif
00149 
00150         msg->msgid = MAVLINK_MSG_ID_RC_CHANNELS;
00151 #if MAVLINK_CRC_EXTRA
00152     return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00153 #else
00154     return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00155 #endif
00156 }
00157 
00187 static inline uint16_t mavlink_msg_rc_channels_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
00188                                                            mavlink_message_t* msg,
00189                                                            uint32_t time_boot_ms,uint8_t chancount,uint16_t chan1_raw,uint16_t chan2_raw,uint16_t chan3_raw,uint16_t chan4_raw,uint16_t chan5_raw,uint16_t chan6_raw,uint16_t chan7_raw,uint16_t chan8_raw,uint16_t chan9_raw,uint16_t chan10_raw,uint16_t chan11_raw,uint16_t chan12_raw,uint16_t chan13_raw,uint16_t chan14_raw,uint16_t chan15_raw,uint16_t chan16_raw,uint16_t chan17_raw,uint16_t chan18_raw,uint8_t rssi)
00190 {
00191 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
00192         char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
00193         _mav_put_uint32_t(buf, 0, time_boot_ms);
00194         _mav_put_uint16_t(buf, 4, chan1_raw);
00195         _mav_put_uint16_t(buf, 6, chan2_raw);
00196         _mav_put_uint16_t(buf, 8, chan3_raw);
00197         _mav_put_uint16_t(buf, 10, chan4_raw);
00198         _mav_put_uint16_t(buf, 12, chan5_raw);
00199         _mav_put_uint16_t(buf, 14, chan6_raw);
00200         _mav_put_uint16_t(buf, 16, chan7_raw);
00201         _mav_put_uint16_t(buf, 18, chan8_raw);
00202         _mav_put_uint16_t(buf, 20, chan9_raw);
00203         _mav_put_uint16_t(buf, 22, chan10_raw);
00204         _mav_put_uint16_t(buf, 24, chan11_raw);
00205         _mav_put_uint16_t(buf, 26, chan12_raw);
00206         _mav_put_uint16_t(buf, 28, chan13_raw);
00207         _mav_put_uint16_t(buf, 30, chan14_raw);
00208         _mav_put_uint16_t(buf, 32, chan15_raw);
00209         _mav_put_uint16_t(buf, 34, chan16_raw);
00210         _mav_put_uint16_t(buf, 36, chan17_raw);
00211         _mav_put_uint16_t(buf, 38, chan18_raw);
00212         _mav_put_uint8_t(buf, 40, chancount);
00213         _mav_put_uint8_t(buf, 41, rssi);
00214 
00215         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00216 #else
00217         mavlink_rc_channels_t packet;
00218         packet.time_boot_ms = time_boot_ms;
00219         packet.chan1_raw = chan1_raw;
00220         packet.chan2_raw = chan2_raw;
00221         packet.chan3_raw = chan3_raw;
00222         packet.chan4_raw = chan4_raw;
00223         packet.chan5_raw = chan5_raw;
00224         packet.chan6_raw = chan6_raw;
00225         packet.chan7_raw = chan7_raw;
00226         packet.chan8_raw = chan8_raw;
00227         packet.chan9_raw = chan9_raw;
00228         packet.chan10_raw = chan10_raw;
00229         packet.chan11_raw = chan11_raw;
00230         packet.chan12_raw = chan12_raw;
00231         packet.chan13_raw = chan13_raw;
00232         packet.chan14_raw = chan14_raw;
00233         packet.chan15_raw = chan15_raw;
00234         packet.chan16_raw = chan16_raw;
00235         packet.chan17_raw = chan17_raw;
00236         packet.chan18_raw = chan18_raw;
00237         packet.chancount = chancount;
00238         packet.rssi = rssi;
00239 
00240         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00241 #endif
00242 
00243         msg->msgid = MAVLINK_MSG_ID_RC_CHANNELS;
00244 #if MAVLINK_CRC_EXTRA
00245     return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00246 #else
00247     return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00248 #endif
00249 }
00250 
00259 static inline uint16_t mavlink_msg_rc_channels_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_rc_channels_t* rc_channels)
00260 {
00261         return mavlink_msg_rc_channels_pack(system_id, component_id, msg, rc_channels->time_boot_ms, rc_channels->chancount, rc_channels->chan1_raw, rc_channels->chan2_raw, rc_channels->chan3_raw, rc_channels->chan4_raw, rc_channels->chan5_raw, rc_channels->chan6_raw, rc_channels->chan7_raw, rc_channels->chan8_raw, rc_channels->chan9_raw, rc_channels->chan10_raw, rc_channels->chan11_raw, rc_channels->chan12_raw, rc_channels->chan13_raw, rc_channels->chan14_raw, rc_channels->chan15_raw, rc_channels->chan16_raw, rc_channels->chan17_raw, rc_channels->chan18_raw, rc_channels->rssi);
00262 }
00263 
00273 static inline uint16_t mavlink_msg_rc_channels_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_rc_channels_t* rc_channels)
00274 {
00275         return mavlink_msg_rc_channels_pack_chan(system_id, component_id, chan, msg, rc_channels->time_boot_ms, rc_channels->chancount, rc_channels->chan1_raw, rc_channels->chan2_raw, rc_channels->chan3_raw, rc_channels->chan4_raw, rc_channels->chan5_raw, rc_channels->chan6_raw, rc_channels->chan7_raw, rc_channels->chan8_raw, rc_channels->chan9_raw, rc_channels->chan10_raw, rc_channels->chan11_raw, rc_channels->chan12_raw, rc_channels->chan13_raw, rc_channels->chan14_raw, rc_channels->chan15_raw, rc_channels->chan16_raw, rc_channels->chan17_raw, rc_channels->chan18_raw, rc_channels->rssi);
00276 }
00277 
00304 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
00305 
00306 static inline void mavlink_msg_rc_channels_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
00307 {
00308 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
00309         char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
00310         _mav_put_uint32_t(buf, 0, time_boot_ms);
00311         _mav_put_uint16_t(buf, 4, chan1_raw);
00312         _mav_put_uint16_t(buf, 6, chan2_raw);
00313         _mav_put_uint16_t(buf, 8, chan3_raw);
00314         _mav_put_uint16_t(buf, 10, chan4_raw);
00315         _mav_put_uint16_t(buf, 12, chan5_raw);
00316         _mav_put_uint16_t(buf, 14, chan6_raw);
00317         _mav_put_uint16_t(buf, 16, chan7_raw);
00318         _mav_put_uint16_t(buf, 18, chan8_raw);
00319         _mav_put_uint16_t(buf, 20, chan9_raw);
00320         _mav_put_uint16_t(buf, 22, chan10_raw);
00321         _mav_put_uint16_t(buf, 24, chan11_raw);
00322         _mav_put_uint16_t(buf, 26, chan12_raw);
00323         _mav_put_uint16_t(buf, 28, chan13_raw);
00324         _mav_put_uint16_t(buf, 30, chan14_raw);
00325         _mav_put_uint16_t(buf, 32, chan15_raw);
00326         _mav_put_uint16_t(buf, 34, chan16_raw);
00327         _mav_put_uint16_t(buf, 36, chan17_raw);
00328         _mav_put_uint16_t(buf, 38, chan18_raw);
00329         _mav_put_uint8_t(buf, 40, chancount);
00330         _mav_put_uint8_t(buf, 41, rssi);
00331 
00332 #if MAVLINK_CRC_EXTRA
00333     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00334 #else
00335     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00336 #endif
00337 #else
00338         mavlink_rc_channels_t packet;
00339         packet.time_boot_ms = time_boot_ms;
00340         packet.chan1_raw = chan1_raw;
00341         packet.chan2_raw = chan2_raw;
00342         packet.chan3_raw = chan3_raw;
00343         packet.chan4_raw = chan4_raw;
00344         packet.chan5_raw = chan5_raw;
00345         packet.chan6_raw = chan6_raw;
00346         packet.chan7_raw = chan7_raw;
00347         packet.chan8_raw = chan8_raw;
00348         packet.chan9_raw = chan9_raw;
00349         packet.chan10_raw = chan10_raw;
00350         packet.chan11_raw = chan11_raw;
00351         packet.chan12_raw = chan12_raw;
00352         packet.chan13_raw = chan13_raw;
00353         packet.chan14_raw = chan14_raw;
00354         packet.chan15_raw = chan15_raw;
00355         packet.chan16_raw = chan16_raw;
00356         packet.chan17_raw = chan17_raw;
00357         packet.chan18_raw = chan18_raw;
00358         packet.chancount = chancount;
00359         packet.rssi = rssi;
00360 
00361 #if MAVLINK_CRC_EXTRA
00362     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)&packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00363 #else
00364     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)&packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00365 #endif
00366 #endif
00367 }
00368 
00369 #if MAVLINK_MSG_ID_RC_CHANNELS_LEN <= MAVLINK_MAX_PAYLOAD_LEN
00370 /*
00371   This varient of _send() can be used to save stack space by re-using
00372   memory from the receive buffer.  The caller provides a
00373   mavlink_message_t which is the size of a full mavlink message. This
00374   is usually the receive buffer for the channel, and allows a reply to an
00375   incoming message with minimum stack space usage.
00376  */
00377 static inline void mavlink_msg_rc_channels_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
00378 {
00379 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
00380         char *buf = (char *)msgbuf;
00381         _mav_put_uint32_t(buf, 0, time_boot_ms);
00382         _mav_put_uint16_t(buf, 4, chan1_raw);
00383         _mav_put_uint16_t(buf, 6, chan2_raw);
00384         _mav_put_uint16_t(buf, 8, chan3_raw);
00385         _mav_put_uint16_t(buf, 10, chan4_raw);
00386         _mav_put_uint16_t(buf, 12, chan5_raw);
00387         _mav_put_uint16_t(buf, 14, chan6_raw);
00388         _mav_put_uint16_t(buf, 16, chan7_raw);
00389         _mav_put_uint16_t(buf, 18, chan8_raw);
00390         _mav_put_uint16_t(buf, 20, chan9_raw);
00391         _mav_put_uint16_t(buf, 22, chan10_raw);
00392         _mav_put_uint16_t(buf, 24, chan11_raw);
00393         _mav_put_uint16_t(buf, 26, chan12_raw);
00394         _mav_put_uint16_t(buf, 28, chan13_raw);
00395         _mav_put_uint16_t(buf, 30, chan14_raw);
00396         _mav_put_uint16_t(buf, 32, chan15_raw);
00397         _mav_put_uint16_t(buf, 34, chan16_raw);
00398         _mav_put_uint16_t(buf, 36, chan17_raw);
00399         _mav_put_uint16_t(buf, 38, chan18_raw);
00400         _mav_put_uint8_t(buf, 40, chancount);
00401         _mav_put_uint8_t(buf, 41, rssi);
00402 
00403 #if MAVLINK_CRC_EXTRA
00404     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00405 #else
00406     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00407 #endif
00408 #else
00409         mavlink_rc_channels_t *packet = (mavlink_rc_channels_t *)msgbuf;
00410         packet->time_boot_ms = time_boot_ms;
00411         packet->chan1_raw = chan1_raw;
00412         packet->chan2_raw = chan2_raw;
00413         packet->chan3_raw = chan3_raw;
00414         packet->chan4_raw = chan4_raw;
00415         packet->chan5_raw = chan5_raw;
00416         packet->chan6_raw = chan6_raw;
00417         packet->chan7_raw = chan7_raw;
00418         packet->chan8_raw = chan8_raw;
00419         packet->chan9_raw = chan9_raw;
00420         packet->chan10_raw = chan10_raw;
00421         packet->chan11_raw = chan11_raw;
00422         packet->chan12_raw = chan12_raw;
00423         packet->chan13_raw = chan13_raw;
00424         packet->chan14_raw = chan14_raw;
00425         packet->chan15_raw = chan15_raw;
00426         packet->chan16_raw = chan16_raw;
00427         packet->chan17_raw = chan17_raw;
00428         packet->chan18_raw = chan18_raw;
00429         packet->chancount = chancount;
00430         packet->rssi = rssi;
00431 
00432 #if MAVLINK_CRC_EXTRA
00433     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
00434 #else
00435     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00436 #endif
00437 #endif
00438 }
00439 #endif
00440 
00441 #endif
00442 
00443 // MESSAGE RC_CHANNELS UNPACKING
00444 
00445 
00451 static inline uint32_t mavlink_msg_rc_channels_get_time_boot_ms(const mavlink_message_t* msg)
00452 {
00453         return _MAV_RETURN_uint32_t(msg,  0);
00454 }
00455 
00461 static inline uint8_t mavlink_msg_rc_channels_get_chancount(const mavlink_message_t* msg)
00462 {
00463         return _MAV_RETURN_uint8_t(msg,  40);
00464 }
00465 
00471 static inline uint16_t mavlink_msg_rc_channels_get_chan1_raw(const mavlink_message_t* msg)
00472 {
00473         return _MAV_RETURN_uint16_t(msg,  4);
00474 }
00475 
00481 static inline uint16_t mavlink_msg_rc_channels_get_chan2_raw(const mavlink_message_t* msg)
00482 {
00483         return _MAV_RETURN_uint16_t(msg,  6);
00484 }
00485 
00491 static inline uint16_t mavlink_msg_rc_channels_get_chan3_raw(const mavlink_message_t* msg)
00492 {
00493         return _MAV_RETURN_uint16_t(msg,  8);
00494 }
00495 
00501 static inline uint16_t mavlink_msg_rc_channels_get_chan4_raw(const mavlink_message_t* msg)
00502 {
00503         return _MAV_RETURN_uint16_t(msg,  10);
00504 }
00505 
00511 static inline uint16_t mavlink_msg_rc_channels_get_chan5_raw(const mavlink_message_t* msg)
00512 {
00513         return _MAV_RETURN_uint16_t(msg,  12);
00514 }
00515 
00521 static inline uint16_t mavlink_msg_rc_channels_get_chan6_raw(const mavlink_message_t* msg)
00522 {
00523         return _MAV_RETURN_uint16_t(msg,  14);
00524 }
00525 
00531 static inline uint16_t mavlink_msg_rc_channels_get_chan7_raw(const mavlink_message_t* msg)
00532 {
00533         return _MAV_RETURN_uint16_t(msg,  16);
00534 }
00535 
00541 static inline uint16_t mavlink_msg_rc_channels_get_chan8_raw(const mavlink_message_t* msg)
00542 {
00543         return _MAV_RETURN_uint16_t(msg,  18);
00544 }
00545 
00551 static inline uint16_t mavlink_msg_rc_channels_get_chan9_raw(const mavlink_message_t* msg)
00552 {
00553         return _MAV_RETURN_uint16_t(msg,  20);
00554 }
00555 
00561 static inline uint16_t mavlink_msg_rc_channels_get_chan10_raw(const mavlink_message_t* msg)
00562 {
00563         return _MAV_RETURN_uint16_t(msg,  22);
00564 }
00565 
00571 static inline uint16_t mavlink_msg_rc_channels_get_chan11_raw(const mavlink_message_t* msg)
00572 {
00573         return _MAV_RETURN_uint16_t(msg,  24);
00574 }
00575 
00581 static inline uint16_t mavlink_msg_rc_channels_get_chan12_raw(const mavlink_message_t* msg)
00582 {
00583         return _MAV_RETURN_uint16_t(msg,  26);
00584 }
00585 
00591 static inline uint16_t mavlink_msg_rc_channels_get_chan13_raw(const mavlink_message_t* msg)
00592 {
00593         return _MAV_RETURN_uint16_t(msg,  28);
00594 }
00595 
00601 static inline uint16_t mavlink_msg_rc_channels_get_chan14_raw(const mavlink_message_t* msg)
00602 {
00603         return _MAV_RETURN_uint16_t(msg,  30);
00604 }
00605 
00611 static inline uint16_t mavlink_msg_rc_channels_get_chan15_raw(const mavlink_message_t* msg)
00612 {
00613         return _MAV_RETURN_uint16_t(msg,  32);
00614 }
00615 
00621 static inline uint16_t mavlink_msg_rc_channels_get_chan16_raw(const mavlink_message_t* msg)
00622 {
00623         return _MAV_RETURN_uint16_t(msg,  34);
00624 }
00625 
00631 static inline uint16_t mavlink_msg_rc_channels_get_chan17_raw(const mavlink_message_t* msg)
00632 {
00633         return _MAV_RETURN_uint16_t(msg,  36);
00634 }
00635 
00641 static inline uint16_t mavlink_msg_rc_channels_get_chan18_raw(const mavlink_message_t* msg)
00642 {
00643         return _MAV_RETURN_uint16_t(msg,  38);
00644 }
00645 
00651 static inline uint8_t mavlink_msg_rc_channels_get_rssi(const mavlink_message_t* msg)
00652 {
00653         return _MAV_RETURN_uint8_t(msg,  41);
00654 }
00655 
00662 static inline void mavlink_msg_rc_channels_decode(const mavlink_message_t* msg, mavlink_rc_channels_t* rc_channels)
00663 {
00664 #if MAVLINK_NEED_BYTE_SWAP
00665         rc_channels->time_boot_ms = mavlink_msg_rc_channels_get_time_boot_ms(msg);
00666         rc_channels->chan1_raw = mavlink_msg_rc_channels_get_chan1_raw(msg);
00667         rc_channels->chan2_raw = mavlink_msg_rc_channels_get_chan2_raw(msg);
00668         rc_channels->chan3_raw = mavlink_msg_rc_channels_get_chan3_raw(msg);
00669         rc_channels->chan4_raw = mavlink_msg_rc_channels_get_chan4_raw(msg);
00670         rc_channels->chan5_raw = mavlink_msg_rc_channels_get_chan5_raw(msg);
00671         rc_channels->chan6_raw = mavlink_msg_rc_channels_get_chan6_raw(msg);
00672         rc_channels->chan7_raw = mavlink_msg_rc_channels_get_chan7_raw(msg);
00673         rc_channels->chan8_raw = mavlink_msg_rc_channels_get_chan8_raw(msg);
00674         rc_channels->chan9_raw = mavlink_msg_rc_channels_get_chan9_raw(msg);
00675         rc_channels->chan10_raw = mavlink_msg_rc_channels_get_chan10_raw(msg);
00676         rc_channels->chan11_raw = mavlink_msg_rc_channels_get_chan11_raw(msg);
00677         rc_channels->chan12_raw = mavlink_msg_rc_channels_get_chan12_raw(msg);
00678         rc_channels->chan13_raw = mavlink_msg_rc_channels_get_chan13_raw(msg);
00679         rc_channels->chan14_raw = mavlink_msg_rc_channels_get_chan14_raw(msg);
00680         rc_channels->chan15_raw = mavlink_msg_rc_channels_get_chan15_raw(msg);
00681         rc_channels->chan16_raw = mavlink_msg_rc_channels_get_chan16_raw(msg);
00682         rc_channels->chan17_raw = mavlink_msg_rc_channels_get_chan17_raw(msg);
00683         rc_channels->chan18_raw = mavlink_msg_rc_channels_get_chan18_raw(msg);
00684         rc_channels->chancount = mavlink_msg_rc_channels_get_chancount(msg);
00685         rc_channels->rssi = mavlink_msg_rc_channels_get_rssi(msg);
00686 #else
00687         memcpy(rc_channels, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_RC_CHANNELS_LEN);
00688 #endif
00689 }


dji_sdk_dji2mav
Author(s):
autogenerated on Thu Jun 6 2019 17:55:35