paparazzi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[paparazzi-commits] [5281] adding crc for spi between overo and stm32


From: antoine drouin
Subject: [paparazzi-commits] [5281] adding crc for spi between overo and stm32
Date: Mon, 09 Aug 2010 19:19:41 +0000

Revision: 5281
          http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=5281
Author:   poine
Date:     2010-08-09 19:19:41 +0000 (Mon, 09 Aug 2010)
Log Message:
-----------
adding crc for spi between overo and stm32

Added Paths:
-----------
    paparazzi3/trunk/sw/airborne/lisa/arch/stm32/lisa_overo_link_crc_arch.h

Added: paparazzi3/trunk/sw/airborne/lisa/arch/stm32/lisa_overo_link_crc_arch.h
===================================================================
--- paparazzi3/trunk/sw/airborne/lisa/arch/stm32/lisa_overo_link_crc_arch.h     
                        (rev 0)
+++ paparazzi3/trunk/sw/airborne/lisa/arch/stm32/lisa_overo_link_crc_arch.h     
2010-08-09 19:19:41 UTC (rev 5281)
@@ -0,0 +1,27 @@
+#ifndef LISA_OVERO_LINK_ARCH_H
+#define LISA_OVERO_LINK_ARCH_H
+
+#include <stm32/spi.h>
+
+
+#define OveroLinkEvent(_data_received_handler, _crc_failed_handler) {  \
+    if (overo_link.status == DATA_AVAILABLE) {                         \
+      DEBUG_S1_ON();                                                   \
+      overo_link.timeout = 0;                                          \
+      while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE)==RESET);    \
+      uint8_t blaaa = SPI_I2S_ReceiveData(SPI1);                       \
+      /*  if((SPI_I2S_GetFlagStatus(SPI1, SPI_FLAG_CRCERR)) == RESET) */\
+      _data_received_handler();                                                
\
+      overo_link_arch_prepare_next_transfert(0);                       \
+      overo_link.status = IDLE;                                                
\
+      DEBUG_S1_OFF();                                                  \
+    }                                                                  \
+    else if(overo_link.status == CRC_ERROR) {                          \
+      _crc_failed_handler();                                           \
+      overo_link_arch_prepare_next_transfert(0);                       \
+      overo_link.status = IDLE;                                                
\
+    }                                                                  \
+  }
+
+
+#endif /* LISA_OVERO_LINK_ARCH_H */




reply via email to

[Prev in Thread] Current Thread [Next in Thread]