]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - apps/tests/msp430/Adc12/TestAdcSingleC.nc
- bugfix: ReadStream did not work with a "usPeriod" parameter > 0xFFFF (the fix uses...
[tinyos-2.x.git] / apps / tests / msp430 / Adc12 / TestAdcSingleC.nc
index e1fe427c3b7e7044845b137ba9072b1976a189f3..809e4cac444b7025497c94296190f25509cfcffa 100644 (file)
@@ -64,6 +64,7 @@ implementation
 #define BUFFER_SIZE 100
   const msp430adc12_channel_config_t config = {inch, sref, ref2_5v, adc12ssel, adc12div, sht, sampcon_ssel, sampcon_id};
   uint8_t state;
+  norace uint8_t numDone;
   uint16_t buffer[BUFFER_SIZE];
   void task getData();
 
@@ -117,13 +118,15 @@ implementation
                 call SingleChannel.getData();
               break;
       default: call Resource.release();
-              signal Notify.notify(TRUE);
+              if (numDone == state)
+                signal Notify.notify(TRUE);
               break;
     }
   }
 
   async event error_t SingleChannel.singleDataReady(uint16_t data)
   { 
+    numDone++;
     assertData(&data, 1);
     call Resource.release();
     post getData();
@@ -133,6 +136,7 @@ implementation
     
   async event uint16_t* SingleChannel.multipleDataReady(uint16_t *buf, uint16_t length)
   {
+    numDone++;
     assertData(buf, length);
     call Resource.release();
     post getData();