[pprzlink] fix conpilation errors with some devices

This commit is contained in:
Gautier Hattenberger
2016-01-12 00:21:54 +01:00
parent e1a3ae3b82
commit b726c0f8e3
7 changed files with 24 additions and 11 deletions
+1 -1
View File
@@ -96,7 +96,7 @@ static inline void bluegiga_read_buffer(struct bluegiga_periph *p, struct pprz_t
#ifdef MODEM_LED
LED_TOGGLE(MODEM_LED);
#endif
pprz_parse_payload(t);
DatalinkFillDlBuffer(t->trans_rx.payload, t->trans_rx.payload_len);
t->trans_rx.msg_received = FALSE;
}
bluegiga_increment_buf(&p->rx_extract_idx, c);
@@ -68,6 +68,15 @@ EXTERN void dl_parse_msg(void);
EXTERN bool_t datalink_enabled;
#endif
/** Convenience macro to fill dl_buffer */
#define DatalinkFillDlBuffer(_buf, _len) { \
uint8_t _i = 0; \
for (_i = 0; _i < _len; _i++) { \
dl_buffer[_i] = _buf[_i]; \
} \
dl_msg_available = TRUE; \
}
/** Check for new message and parse */
static inline void DlCheckAndParse(void)
{
+1 -1
View File
@@ -33,7 +33,7 @@
struct ivy_transport ivy_tp;
#endif
#if DATALINK == PPRZ
#if DATALINK == PPRZ || DATALINK == SUPERBITRF || DATALINK == W5100 || DATALINK == BLUEGIGA
struct pprz_transport pprz_tp;
#endif
#if DATALINK == XBEE
+8 -4
View File
@@ -58,7 +58,7 @@ extern struct ivy_transport ivy_tp;
#else /** SITL */
#if DATALINK == PPRZ
#if DATALINK == PPRZ || DATALINK == SUPERBITRF || DATALINK == W5100 || DATALINK == BLUEGIGA
#include "pprzlink/pprz_transport.h"
extern struct pprz_transport pprz_tp;
#endif
@@ -73,10 +73,14 @@ extern struct pprzlog_transport pprzlog_tp;
extern struct xbee_transport xbee_tp;
#endif
//#include "subsystems/datalink/w5100.h"
#if DATALINK == BLUEGIGA
//#include "subsystems/datalink/bluegiga.h"
#if DATALINK == W5100
#include "subsystems/datalink/w5100.h"
#endif
#if DATALINK == BLUEGIGA
#include "subsystems/datalink/bluegiga.h"
#endif
#if USE_SUPERBITRF
#include "subsystems/datalink/superbitrf.h"
#endif
+3 -3
View File
@@ -863,7 +863,7 @@ static inline void superbitrf_receive_packet_cb(bool_t error, uint8_t status, ui
// When we have a full message
if (superbitrf.rx_transport.trans_rx.msg_received) {
pprz_parse_payload(&superbitrf.rx_transport);
DatalinkFillDlBuffer(superbitrf.rx_transport.trans_rx.payload, superbitrf.rx_transport.trans_rx.payload_len);
superbitrf.rx_transport.trans_rx.msg_received = FALSE;
}
}
@@ -923,7 +923,7 @@ static inline void superbitrf_receive_packet_cb(bool_t error, uint8_t status, ui
// When we have a full message
if (superbitrf.rx_transport.trans_rx.msg_received) {
pprz_parse_payload(&superbitrf.rx_transport);
DatalinkFillDlBuffer(superbitrf.rx_transport.trans_rx.payload, superbitrf.rx_transport.trans_rx.payload_len);
superbitrf.rx_transport.trans_rx.msg_received = FALSE;
}
}
@@ -1009,7 +1009,7 @@ static inline void superbitrf_receive_packet_cb(bool_t error, uint8_t status, ui
// When we have a full message
if (superbitrf.rx_transport.trans_rx.msg_received) {
pprz_parse_payload(&superbitrf.rx_transport);
DatalinkFillDlBuffer(superbitrf.rx_transport.trans_rx.payload, superbitrf.rx_transport.trans_rx.payload_len);
superbitrf.rx_transport.trans_rx.msg_received = FALSE;
}
}
+1 -1
View File
@@ -93,7 +93,7 @@ static inline void w5100_check_and_parse(struct link_device *dev, struct pprz_tr
if (dev->char_available(dev->periph)) {
w5100_read_buffer(trans);
if (trans->trans_rx.msg_received) {
pprz_parse_payload(trans);
DatalinkFillDlBuffer(trans->trans_rx.payload, trans->trans_rx.payload_len);
trans->trans_rx.msg_received = FALSE;
}
}