[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [5302] Use CRC in fms_spi_autopilot_msg.c, and don'
From: |
Allen Ibara |
Subject: |
[paparazzi-commits] [5302] Use CRC in fms_spi_autopilot_msg.c, and don' t parse up msg if it fails crc |
Date: |
Tue, 10 Aug 2010 22:26:20 +0000 |
Revision: 5302
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=5302
Author: aibara
Date: 2010-08-10 22:26:19 +0000 (Tue, 10 Aug 2010)
Log Message:
-----------
Use CRC in fms_spi_autopilot_msg.c, and don't parse up msg if it fails crc
Modified Paths:
--------------
paparazzi3/trunk/sw/airborne/fms/fms_spi_autopilot_msg.c
Modified: paparazzi3/trunk/sw/airborne/fms/fms_spi_autopilot_msg.c
===================================================================
--- paparazzi3/trunk/sw/airborne/fms/fms_spi_autopilot_msg.c 2010-08-10
22:25:16 UTC (rev 5301)
+++ paparazzi3/trunk/sw/airborne/fms/fms_spi_autopilot_msg.c 2010-08-10
22:26:19 UTC (rev 5302)
@@ -32,6 +32,7 @@
#include "fms_spi_link.h"
#include "fms_autopilot_msg.h"
#include "fms_spi_autopilot_msg.h"
+#include "fms_crc.h"
/* all these for telemetry */
#include "messages2.h"
@@ -148,13 +149,22 @@
void spi_ap_link_periodic()
{
- static struct AutopilotMessagePTUp msg_up;
- static struct AutopilotMessagePTDown msg_down;
+ static struct AutopilotMessageCRCFrame msg_up;
+ static struct AutopilotMessageCRCFrame msg_down;
+ static uint32_t crc_errors = 0;
+ static uint32_t foo = 0;
+ crc_t crc_in;
- passthrough_down_fill(&msg_down);
+ passthrough_down_fill(&msg_down.payload.msg_down);
+ msg_down.crc = crc__calc_block_crc8(&msg_down, sizeof(union
AutopilotMessage));
// SPI transcieve
- spi_link_send(&msg_down, sizeof(union AutopilotMessage), &msg_up);
+ spi_link_send(&msg_down, sizeof(struct AutopilotMessageCRCFrame), &msg_up);
+ crc_in = crc__calc_block_crc8(&msg_up, sizeof(union AutopilotMessage));
- passthrough_up_parse(&msg_up);
+ if(msg_up.crc != crc_in) {
+ crc_errors++;
+ } else {
+ passthrough_up_parse(&msg_up.payload.msg_up);
+ }
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [5302] Use CRC in fms_spi_autopilot_msg.c, and don' t parse up msg if it fails crc,
Allen Ibara <=