Projet S5 Lecture de l'accelerometre avec interruption

Dependencies:   mbed PowerControl

Fork of Projet_S5 by Jonathan Tousignant

Files at this revision

API Documentation at this revision

Comitter:
joGenie
Date:
Mon Apr 28 13:45:19 2014 +0000
Parent:
14:67f44035ef61
Commit message:
Add comment

Changed in this revision

accelerometer.h Show annotated file Show diff for this revision Revisions of this file
analyzer.cpp Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mouvement.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/accelerometer.h	Sun Apr 13 19:13:28 2014 +0000
+++ b/accelerometer.h	Mon Apr 28 13:45:19 2014 +0000
@@ -91,9 +91,9 @@
 extern "C" {
 #endif
 
-extern void *Accelerometer_C_new(); /*! Call Constructor \see Accelerometer() */
-extern void  Accelerometer_C_delete(void *accelerometer); /*! Call Destructor \see ~Accelerometer() */
-extern signed char* Accelerometer_C_getAccelValue(void *accelerometer); /*! Call getAccelValue \see getAccelValue() */
+extern void *Accelerometer_C_new(); /*!< Call Constructor \see Accelerometer() */
+extern void  Accelerometer_C_delete(void *accelerometer); /*!< Call Destructor \see ~Accelerometer() */
+extern signed char* Accelerometer_C_getAccelValue(void *accelerometer); /*!< Call getAccelValue \see getAccelValue() */
 
 #ifdef __cplusplus
 }
--- a/analyzer.cpp	Sun Apr 13 19:13:28 2014 +0000
+++ b/analyzer.cpp	Mon Apr 28 13:45:19 2014 +0000
@@ -20,8 +20,9 @@
 void Analyzer::initialize()
 {
     DigitalOut reset(p8);
+    
     reset = 0;
-    wait(0.4);
+    wait(0.4);  // Reset xbee
     reset = 1;
     
     trame = new Trame(p13, p14);
@@ -63,8 +64,7 @@
     deplacement[0] = x.isMouvement();
     deplacement[1] = y.isMouvement();          
     deplacement[2] = z.isMouvement();  
-    
-    
+       
     // Mouvement en x
     if(deplacement[0])
     {
--- a/main.cpp	Sun Apr 13 19:13:28 2014 +0000
+++ b/main.cpp	Mon Apr 28 13:45:19 2014 +0000
@@ -1,3 +1,11 @@
+/*!
+ *  \file main.cpp
+ *  \brief Main file and initialize interrupt function
+ *  \author Equipe P02
+ *  \version 1
+ *  \date 02/04/2014
+ */
+ 
 #include "accelerometer.h"
 #include "analyzer.h"
 #include "interrupt.h"
@@ -6,19 +14,18 @@
 #include "PowerControl/PowerControl.h"
 #include "PowerControl/EthernetPowerControl.h"
 
-
-DigitalOut led1(LED1);
-DigitalOut led2(LED2);
-DigitalOut led4(LED4);
-DigitalIn button(p30);
+DigitalOut led1(LED1);  // Debug led
+DigitalOut led2(LED2);  // Debug led
+DigitalOut led4(LED4);  // Debug led
+DigitalIn button(p30);  // Push button
 
-LocalFileSystem local("local");
+LocalFileSystem local("local"); // Open config file
 
-void *accelerometer = Accelerometer_C_new();
-void *analyzer = Analyzer_C_new();
+void *accelerometer = Accelerometer_C_new();    // Accelerometer object in C
+void *analyzer = Analyzer_C_new();              // Analyzer object in C
 
-bool rebound = true;
-bool appuyer = false;
+bool rebound = true;    // For rebound
+bool appuyer = false;   // For push bouton
 
 extern "C" void interruptCapture(void)
 {
@@ -66,21 +73,19 @@
         rebound = true;
         NVIC_DisableIRQ(TIMER1_IRQn); // Disable TIMER1 interrupt
         
-        Analyzer_C_checkMouvement(analyzer);
+        Analyzer_C_checkMouvement(analyzer);    // Find mouvement
     }
     
-    
-    LPC_TIM2->IR |= 0xFF;
+    LPC_TIM2->IR |= 0xFF;   // Reset interrupt
 }
 
 extern "C" void interruptMatch(void)
 {
     if(button)
     {
-        led4 = !led4;
-        signed char* values;
-    
-        values = Accelerometer_C_getAccelValue(accelerometer);
+        led4 = !led4;   // Debug led
+        
+        signed char* values = Accelerometer_C_getAccelValue(accelerometer); // Get value of accelerometer
         
         // Analyze data
         Analyzer_C_setMinMax(values, analyzer);
@@ -88,7 +93,7 @@
         delete values;
     }
     
-    LPC_TIM1->IR |= 0xFF; // Reset timer  
+    LPC_TIM1->IR |= 0xFF; // Reset interrupt
 }
 
 void initialize()
@@ -139,7 +144,6 @@
     
     PHY_PowerDown(); //power down ethernet interface 175mw
     
-    
     ifstream myfile(filename.c_str());
     
     if (myfile.is_open())
@@ -151,7 +155,7 @@
                 // Find hand
                 if (line.find("Hand") != string::npos)
                 {
-                    if (line.compare(5,6,"L") == 0)
+                    if (line.compare(5,6,"L") == 0) // If left hand
                         Analyzer_C_setHand(true, analyzer);
                     else
                         Analyzer_C_setHand(false, analyzer);
@@ -165,7 +169,7 @@
         
         while(true)
         {
-           Sleep();
+           Sleep(); // Sleep main thread
         }
     }
     
--- a/mouvement.cpp	Sun Apr 13 19:13:28 2014 +0000
+++ b/mouvement.cpp	Mon Apr 28 13:45:19 2014 +0000
@@ -12,12 +12,12 @@
 {
     char code[4];
     
-    code[0] = hand ? 0x1 : 0x0;
-    code[1] = (_code_envoie >> 8) & 0xF;
-    code[2] = (_code_envoie >> 4) & 0xF;
-    code[3] = _code_envoie & 0xF;
+    code[0] = hand ? 0x1 : 0x0;             // Hand
+    code[1] = (_code_envoie >> 8) & 0xF;    // Code to send msb
+    code[2] = (_code_envoie >> 4) & 0xF;    // Code to send
+    code[3] = _code_envoie & 0xF;           // Code to send lsb
      
-    const char destination[8] = {0};
+    const char destination[8] = {0};    // Destination Null
     
-    trame->sendTransmitRequest(destination, code, sizeof(int));   
+    trame->sendTransmitRequest(destination, code, sizeof(int)); // Trasmit code
 }