Primer cambio codigo 20/01/2020

Dependencies:   mbed TextLCD

Revision:
1:873f8f9b7f69
Parent:
0:0a17318c9c22
--- a/main.cpp	Mon Jan 20 14:46:34 2020 +0000
+++ b/main.cpp	Thu Jan 30 14:12:47 2020 +0000
@@ -7,17 +7,18 @@
 Ticker tVisualizar;
 #include "TextLCD.h"
 
-//PARA LA PLACA LCD
+
 InterruptIn button(PC_13); 
-//Inicializas el interruptor
+
 TextLCD lcd(D8, D9, D2, D3, D4, D5, TextLCD::LCD16x2); // rs, e, d4-d7
-Serial pc(USBTX, USBRX); 
-// tx, rx esto es para que vaya más rápido, para que procese más rápido
-Serial bluetooth(PC_0, PC_1); //ESTA SE QUITA
-// tx, rx esto es para inicializar los pines para conectar el bluetooth
-AnalogIn adc_in(A0); //datos de tensión
-AnalogIn adc_in_in(A2); //datos de intensidad
-AnalogIn adc_in_dos(A1); //datos de continua (la salida del LM 358)
+Serial pc(USBTX, USBRX); // tx, rx 
+
+Serial bluetooth(PC_0, PC_1); 
+
+AnalogIn adc_in(A0); 
+AnalogIn adc_in_in(A2); 
+AnalogIn adc_in_dos(A1);
+
 void muestrear();
 void visualizar();
 int flag=0;
@@ -42,31 +43,28 @@
     float fact_potencia;
 };
 estr_medidas medidas;
-void proces(int16_t *datosV, int16_t *datosI, int longi, estr_medidas *medidas)
+void procesado(int16_t *datosV, int16_t *datosI, int longi, estr_medidas *medidas)
 {
     int64_t b=0.0;
     int64_t c=0;
     int64_t d=0;
  for(int j=0;j<longi;j++)
  {
-    b = b + datosV[j]*datosV[j]; //calcula el sumatorio de v^2
-    c = c + datosI[j]*datosI[j]; //calcula el sumatorio de i^2
-    d = d + datosV[j]*datosI[j]; //calcula el sumatorio de v*i
+    b = b + datosV[j]*datosV[j]; 
+    c = c + datosI[j]*datosI[j]; 
+    d = d + datosV[j]*datosI[j]; 
  }
- //el puntero *medidas apunta la dirección de los distitntos vectores de la estructura
- //guardamos los resultados en la dirección de memoria que apunta *medidas para cada uno de los resultados
- medidas->vrms=0.011812328729925*sqrt(((float)b)/longi);
- medidas->irms=0.000842270393376366*sqrt(((float)c)/longi);
- medidas->pot_activa=(9.949174801697868320688107085e-6*d)/longi;
+
+
+ medidas->vrms=0.01275509675*sqrt(((float)b)/longi);
+ medidas->irms=0.0004536585089*sqrt(((float)c)/longi);
+ medidas->pot_activa=(5.786458173e-6*d)/longi;
  medidas->pot_aparente=medidas->vrms*medidas->irms;
  medidas->pot_reactiva=sqrt((medidas->pot_aparente*medidas->pot_aparente)-(medidas->pot_activa*medidas->pot_activa));
  medidas->fact_potencia=((float)medidas->pot_activa)/medidas->pot_aparente;
  medidas->en_consumida+=0.001*medidas->pot_activa*longi;
 
-// Se lleva la cuenta,mediante un contador, del número de veces que se ha 
-//pulsado el pulsador para saber qué dato se deberá visualizar. Una vez que el 
-//contador llegue al número máximo de datos, éste vuelve a cero y comienza de 
-//nuevo la cuenta.
+
 }
 void flip() {
  contador_boton++;
@@ -78,13 +76,13 @@
 int main()
 {
     pc.baud(115200);
-    bluetooth.baud(9600); //ESTA SE QUITA
+    bluetooth.baud(9600); 
     tMuestrear.attach_us(&muestrear, 200);
     tVisualizar.attach(&visualizar, 1);
-    button.rise(&flip); // attach the address of the flip function to the rising edge
+    button.rise(&flip); 
     while(1) {
         if(flag==1) {
- // pc.printf("1");
+
             flag=0;
 
             if(buffer_activo) {
@@ -98,7 +96,7 @@
 
 
  }
- //wait_us(1);
+
  }
  }
 void muestrear()
@@ -106,7 +104,7 @@
     int16_t datov=(int16_t)(adc_in.read_u16()^0x8000);
     int16_t datoi=(int16_t)(adc_in_in.read_u16()^0x8000);
     int16_t continua=(int16_t)(adc_in_dos.read_u16()^0x8000);
-    if (bufferActivo==0) {
+    if (buffer_activo==0) {
         buffers.vA[contador]=datov-continua;
         buffers.iA[contador]=datoi-continua;
 
@@ -125,7 +123,7 @@
 }
 void visualizar(){
 
- //printf("**** Datos calculados en %d us ****\n",timer.read_us());
+
     pc.printf("**** El valor Vrms es %f ****\n",medidas.vrms);
     pc.printf("**** El valor Irms es %f ****\n",medidas.irms);
     pc.printf("**** La potencia activa es %f ****\n",medidas.pot_activa);
@@ -152,6 +150,7 @@
             lcd.cls();
             lcd.printf("Pot activa\n%3.2f W\n", medidas.pot_activa);
         break;
+        
         case 4:
 
             lcd.cls();
@@ -163,22 +162,23 @@
             lcd.cls();
             lcd.printf("Pot aparente\n%3.2f VA\n", medidas.pot_aparente);
         break;
+        
         case 6:
 
             lcd.cls();
-            lcd.printf("E. consumida\n%3.2f kW\n", medidas.en_consumida);
+            lcd.printf("En consumida\n%3.2f kW\n", medidas.en_consumida);
         break;
+        
         case 7:
 
             lcd.cls();
-            lcd.printf("Factor potencia\n%3.2f\n", medidas.fact_potencia);
+            lcd.printf("Fact potencia\n%3.2f\n", medidas.fact_potencia);
         break;
         default:
             lcd.cls();
-            lcd.printf("Pulsa el boton");
+            lcd.printf("Pulsar boton");
     }
     bluetooth.printf("%3.2f|%3.2f|%3.2f|%3.2f|%3.2f|%3.2f|%3.2f|\n",medidas.vrms,
- medidas.irms,medidas.potenciaActiva,medidas.potenciaReactiva,
- medidas.potenciaAparente,medidas.energiaConsumida,medidas.factorDePotencia);
+ medidas.irms,medidas.pot_activa,medidas.pot_reactiva,
+ medidas.pot_aparente,medidas.en_consumida,medidas.fact_potencia);
 }
-// TODO ESTO SE QUITA
\ No newline at end of file