First Version

Dependencies:   EthernetInterface mbed-rtos mbed

Revision:
2:bf4bbf7d6793
Parent:
1:ce016c668e34
Child:
3:94a128e0f316
--- a/main.cpp	Fri Jul 24 16:39:11 2015 +0000
+++ b/main.cpp	Fri Mar 04 21:18:48 2016 +0000
@@ -3,6 +3,7 @@
     Criado para: 
     - Auxiliar no processo de calibração dos valores de offset e ganho das tomadas
     - Faciliar os testes da leitura de RFID nas tomadas
+    - Alterado para usar captura sem DMA
     
 */
 #include <stdio.h>
@@ -13,10 +14,7 @@
 #include "EthernetInterface.h"
 #include "Settings.h"
 #include "Capture.h"
-#include "Http_post.h"
-#include "CommTCP.h"
 #include "SignalProcessor.h"
-#include "EventDetector.h"
 
 extern "C" void mbed_reset();
 
@@ -37,9 +35,9 @@
 void thread1(void const *args)
 {
     DigitalOut led1(LED1);
-    int op = 0;
-        
-    Capture::Initialize();
+    int op = 0;        
+      
+    Capture::InitializeAD();
       
     while(1)
     {   
@@ -60,28 +58,14 @@
 
 int main() {
     FILE *f;
-    //Set Highest Priority
-    //osThreadSetPriority(osThreadGetId(),osPriorityHigh);
     
     Settings::ReadFile();    
     //printf("Passou Settings, carregou arquivo\n");
     //Settings::ShowValues();
     
     InitializeEthernetLink();
-    //printf("Inicializou link Ethernet\n");
-    printf("\nIP Address is NEW %s\n", eth.getIPAddress());
-    
-    //Start HTTP POST service
-    //Thread http_post(HttpPost::HttpPost_Thread);
-    
-    //Start TCP daemon service
-    //Thread TcpService(CommTCP::CommTCP_Thread);
-    
-    
-    //Start Telnet Service
-    //Thread telnetserver(TelnetServer::TelnetServer_Thread);
-    //Start TFTP Service
-    
+    printf("\nIP Address is NEW %s\n", eth.getIPAddress());    
+       
     /*
     unsigned short vet[256] = {2105,2105,2113,2127,2127,2125,2112,2113,2130,2130,2123,2112,2112,2128,2128,2123,2112,2113,2136,2136,2374,2551,2671,2869,2887,3036,2964,2964,2964,3145,3145,3206,3209,3298,3298,3264,3261,3208,3239,3239,3197,3197,3113,3032,3065,3065,3000,2901,2943,2943,2900,2852,2844,2863,2863,2838,2764,2791,2724,2724,2668,2710,2636,2658,2658,2606,2527,2443,2434,2434,2258,2066,2061,2080,2080,2063,2055,2055,2070,2070,2064,2051,2054,2069,2069,2062,2054,2058,2066,2309,2062,2052,2054,2067,2067,2063,2051,2049,2068,2068,2060,2053,2050,2067,2066,2069,2051,2053,2070,2070,2064,2050,2053,2070,2070,2062,2052,2055,2068,2068,2065,2052,2057,2072,2072,2064,2054,2054,2072,2072,2064,2053,2052,2069,2069,2064,2052,2053,2064,2064,2062,2049,2051,2067,2067,2059,2051,2050,2068,2068,2058,2046,2050,2068,2068,2061,2052,2058,2068,2068,2059,2052,2053,2067,2067,1744,1526,1471,1289,1289,1137,1142,1055,1120,1120,997,967,894,941,941,928,887,1001,949,949,1028,1105,1079,1191,1191,1223,1211,1223,1267,1267,1325,1267,1356,1327,1327,1369,1439,1381,1498,1498,1503,1503,1527,1545,1545,1635,1650,1778,1792,1792,1971,2108,2109,2126,2126,2124,2117,2118,2131,2131,2126,2118,2118,2138,2138,2134,2124,2114,2135,2135,2129,2121,2120,2136,2136,2128,2122,2122,2143,2120,2130,2120,2121,2139,2139,2130,2119,2121,2136,2136,2129};
     float sen[12],cos[12],vm;
@@ -176,8 +160,8 @@
         
         strcpy(read, "00000000");
     }
-    perc = perc * 100 ;
-    printf("\n\RFID SERIAL NUMBER: {%8s} with %.2f%c of hit.\n", read, perc, c);
+    perc = perc * 100 ; 
+    printf("\nRFID SERIAL NUMBER: {%8s} with %.2f%c of hit.\n", read, perc, c);
 }
 
 void SetGain(){
@@ -209,6 +193,9 @@
     
     while(cont<30)
     {
+        //get sample values from 6 channels
+        Capture::AcquireValues();
+        
         SignalProcessor::CalculateRMSBulk(rms, mv2, under, over);
         soma_rms += rms[num_canal];
         cont++;
@@ -236,6 +223,9 @@
             
     while(cont<30)
     {
+        //get sample values from 6 channels
+        Capture::AcquireValues();
+        
         SignalProcessor::CalculateRMSBulk(rms, mv2, under, over);
         for (int i=0; i<6;i++)
         {
@@ -286,7 +276,7 @@
 
 
 void ShowSamplesFromChannel(){
-    unsigned short samples[NUMBER_OF_SAMPLES];
+    float samples[NUMBER_OF_SAMPLES];
     int cont = 0;
     int num_channel = SelectChannel();
     
@@ -295,11 +285,14 @@
             
     while(cont < 5)
     {
+        //get sample values from 6 channels
+        Capture::AcquireValues();
+        
         Capture::CopyBuffer(num_channel, samples);
         printf("\n******* %da. sequence of samples (%s)\n\n", cont+1, num_channel%2==0?"Phase":"Leakage");
         for (int k=0; k< NUMBER_OF_SAMPLES; k++)
         {
-            printf("%d ", samples[k]);
+            printf("%.0f ", samples[k]);
         }
         printf("\n");
         cont++;
@@ -350,7 +343,9 @@
     printf("\n------------------------------------------------------------------------");
     while (cont < 10)
     {
-        Capture::Wait();
+        //get sample values from 6 channels
+        Capture::AcquireValues();
+        
         SignalProcessor::CalculateRMSBulk(rms, mv2, under, over);
         printf("\n%2d\t%.2f\t%.2f\t\t%.2f\t%.2f\t\t%.2f\t%.2f", cont+1,mv2[0],mv2[1],mv2[2],mv2[3],mv2[4],mv2[5]);
         avg[0] += mv2[0];
@@ -378,7 +373,9 @@
     printf("\n------------------------------------------------------------------------");
     while (cont < 10)
     {
-        Capture::Wait();
+        //get sample values from 6 channels
+        Capture::AcquireValues();                
+        
         SignalProcessor::CalculateRMSBulk(rms, mv2, under, over);
         printf("\n%2d\t%.2f\t%.2f\t\t%.2f\t%.2f\t\t%.2f\t%.2f", cont+1,rms[0],rms[1],rms[2],rms[3],rms[4],rms[5]);
         avg[0] += rms[0];