This is the DW1000 driver and our self developed distance measurement application based on it. We do this as a semester thesis at ETH Zürich under the Automatic Control Laboratory in the Department of electrical engineering.

Dependencies:   mbed

Revision:
36:883de6f9a73b
Parent:
31:6f76f3d518ac
Child:
37:40f94c634c3e
--- a/DW1000/DW1000.cpp	Tue Feb 17 10:58:58 2015 +0000
+++ b/DW1000/DW1000.cpp	Fri Feb 20 09:07:52 2015 +0000
@@ -7,12 +7,12 @@
     spi.format(8,0);                    // Setup the spi for standard 8 bit data and SPI-Mode 0 (GPIO5, GPIO6 open circuit or ground on DW1000)
     spi.frequency(1000000);             // with a 1MHz clock rate (worked up to 49MHz in our Test)
     
-    resetAll();                         // we can do a soft reset if we want to (only needed for debugging)
+    //resetAll();                         // we do a soft reset of the DW1000 everytime the driver starts
     loadLDE();                          // important everytime DW1000 initialises/awakes otherwise the LDE algorithm must be turned of or there's receiving malfunction see User Manual LDELOAD on p22 & p158
     
     // Configuration TODO: make method for that
     writeRegister8(DW1000_SYS_CFG, 3, 0x20); // enable auto reenabling receiver after error
-    writeRegister8(DW1000_SYS_CFG, 2, 0x03); // enable 1024 byte frames
+    //writeRegister8(DW1000_SYS_CFG, 2, 0x03); // enable 1024 byte frames TODO: is this really what stated in the comment?
     
     irq.rise(this, &DW1000::ISR);       // attach Interrupt handler to rising edge
 }