![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
as
Dependencies: mbed CMSIS_DSP_5
main.cpp
- Committer:
- javiervicente
- Date:
- 2018-10-08
- Revision:
- 1:bdbd76df2103
- Parent:
- 0:0d5a524c7d25
- Child:
- 2:69827542e976
File content as of revision 1:bdbd76df2103:
#include "mbed.h" #include "datos.h" #include "arm_math.h" //#include "math.h" float datosf[500]; DigitalOut myled(LED1); Timer timer; int16_t dato; int32_t producto; float productof; int64_t sumatorio=0; float sumatoriof=0.0; float final; void initFloat(); void Calculo1(); void Calculo1Float(); void Calculo2(); void Calculo3(); int main() { initFloat(); Calculo1(); Calculo1Float(); Calculo2(); Calculo3(); //int16_t resultado; //arm_rms_q15(datos,500, &resultado); } void initFloat() { for (int n=0; n<500; n++) { datosf[n]=datos[n]; } } void Calculo1() { sumatorio=0; timer.reset(); timer.start(); for (int n=0; n<500; n++) { producto=datos[n]*datos[n]; sumatorio+=producto; } timer.stop(); final=sumatorio; printf("****Calculo 1****\n"); printf("%f ",final); printf("tiempo %d\n",timer.read_us()); } void Calculo1Float() { sumatoriof=0; timer.reset(); timer.start(); for (int n=0; n<500; n++) { productof=datosf[n]*datosf[n]; sumatoriof+=productof; } timer.stop(); final=sumatoriof; printf("****Calculo 1 Float****\n"); printf("%f ",final); printf("tiempo %d\n",timer.read_us()); } void Calculo2() { sumatorio=0; timer.reset(); timer.start(); for (int n=0; n<500; n++) { dato=datos[n]; producto=dato*dato; sumatorio+=producto; } timer.stop(); final=sumatorio; printf("****Calculo 2****\n"); printf("%f ",final); printf("tiempo %d\n",timer.read_us()); } void Calculo3() { timer.reset(); timer.start(); arm_dot_prod_q15(datos,datos,500,&sumatorio); timer.stop(); final=sumatorio; printf("****Calculo 3****\n"); printf("%f",final); printf("tiempo %d\n",timer.read_us()); }