Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed CMSIS_DSP_5
main.cpp
00001 #include "mbed.h" 00002 #include "datos.h" 00003 00004 #define longitudTrama 500 00005 00006 Timer timer; 00007 float resultado; 00008 int tiempo; 00009 00010 struct estructuraMedidas 00011 { 00012 float vrms; 00013 float irms; 00014 float potenciaActiva; 00015 float potenciaReactiva; 00016 float potenciaAparente; 00017 float energiaConsumida; 00018 float factorDePotencia; 00019 }; 00020 00021 float calcularRMS(int16_t *datos, int longitud); 00022 00023 void calcularDatos(int16_t *datosV, int16_t *datosI, int longitud, estructuraMedidas *medidas); 00024 00025 00026 int main() 00027 { 00028 00029 timer.reset(); 00030 timer.start(); 00031 resultado=calcularRMS(datos, longitudTrama); 00032 timer.stop(); 00033 printf("****El valor Vrms es %f calculado en %d us ****\n",resultado,timer.read_us()); 00034 00035 estructuraMedidas medidas; 00036 medidas.energiaConsumida=0; 00037 00038 timer.reset(); 00039 timer.start(); 00040 calcularDatos(datosV,datosI,longitudTrama,&medidas); 00041 timer.stop(); 00042 printf("**** Datos calculados en %d us ****\n",timer.read_us()); 00043 printf("**** El valor Vrms es %f ****\n",medidas.vrms); 00044 printf("**** El valor Irms es %f ****\n",medidas.irms); 00045 printf("**** La potencia activa es %f ****\n",medidas.potenciaActiva); 00046 printf("**** La potencia reactiva es %f ****\n",medidas.potenciaReactiva); 00047 printf("**** La potencia aparente es %f ****\n",medidas.potenciaAparente); 00048 printf("**** La energia consumida es %f ****\n",medidas.energiaConsumida); 00049 printf("**** El factor de potencia es es %f ****\n",medidas.factorDePotencia); 00050 00051 } 00052 00053 float calcularRMS(int16_t *datos, int longitud) 00054 { 00055 return 0.0; 00056 } 00057 00058 void calcularDatos(int16_t *datosV, int16_t *datosI, int longitud, estructuraMedidas *medidas) 00059 { 00060 00061 } 00062
Generated on Tue Jul 19 2022 21:46:37 by
