Ale Mansut / Mbed 2 deprecated RF_000

Dependencies:   mbed

Committer:
amansutti
Date:
Thu Apr 30 09:09:15 2020 +0000
Revision:
1:2f4f6ea93f6b
Parent:
0:ae9de0bbe204
1000 ripetizioni

Who changed what in which revision?

UserRevisionLine numberNew contents of line
amansutti 0:ae9de0bbe204 1 #include "mbed.h"
amansutti 0:ae9de0bbe204 2 extern "C" {
amansutti 0:ae9de0bbe204 3 #include "fx.h"
amansutti 0:ae9de0bbe204 4 }
amansutti 0:ae9de0bbe204 5
amansutti 0:ae9de0bbe204 6 #include <time.h>
amansutti 0:ae9de0bbe204 7 void sleepcp(int milliseconds);
amansutti 0:ae9de0bbe204 8
amansutti 0:ae9de0bbe204 9 void sleepcp(int milliseconds) // Cross-platform sleep function
amansutti 0:ae9de0bbe204 10 {
amansutti 0:ae9de0bbe204 11 clock_t time_end;
amansutti 0:ae9de0bbe204 12 time_end = clock() + milliseconds * CLOCKS_PER_SEC/1000;
amansutti 0:ae9de0bbe204 13 while (clock() < time_end) {
amansutti 0:ae9de0bbe204 14 }
amansutti 0:ae9de0bbe204 15 }
amansutti 0:ae9de0bbe204 16
amansutti 0:ae9de0bbe204 17
amansutti 0:ae9de0bbe204 18 //------------------------------------
amansutti 0:ae9de0bbe204 19 // Hyperterminal configuration
amansutti 0:ae9de0bbe204 20 // 9600 bauds, 8-bit data, no parity
amansutti 0:ae9de0bbe204 21 //------------------------------------
amansutti 0:ae9de0bbe204 22
amansutti 0:ae9de0bbe204 23 Serial pc(SERIAL_TX, SERIAL_RX);
amansutti 0:ae9de0bbe204 24
amansutti 0:ae9de0bbe204 25 DigitalOut myled(LED1);
amansutti 0:ae9de0bbe204 26
amansutti 0:ae9de0bbe204 27 int main()
amansutti 0:ae9de0bbe204 28 {
amansutti 0:ae9de0bbe204 29
amansutti 1:2f4f6ea93f6b 30 int Repetitions = 10000;
amansutti 1:2f4f6ea93f6b 31 int FxToCall = 100;
amansutti 0:ae9de0bbe204 32
amansutti 0:ae9de0bbe204 33 float x[20];
amansutti 0:ae9de0bbe204 34 int count = 0;
amansutti 0:ae9de0bbe204 35
amansutti 0:ae9de0bbe204 36 while(1) {
amansutti 0:ae9de0bbe204 37 pc.printf("Starting %d repetitions\r\n",Repetitions);
amansutti 0:ae9de0bbe204 38
amansutti 0:ae9de0bbe204 39 clock_t start, end;
amansutti 0:ae9de0bbe204 40 double cpu_time_used;
amansutti 0:ae9de0bbe204 41 start = clock();
amansutti 0:ae9de0bbe204 42 count = 0;
amansutti 0:ae9de0bbe204 43
amansutti 0:ae9de0bbe204 44 for (int r=0; r<Repetitions; r++) {
amansutti 0:ae9de0bbe204 45 for(int i=0; i<FxToCall; i++) {
amansutti 0:ae9de0bbe204 46 count += fxList[i](x);
amansutti 0:ae9de0bbe204 47 }
amansutti 0:ae9de0bbe204 48 }
amansutti 0:ae9de0bbe204 49
amansutti 0:ae9de0bbe204 50 end = clock();
amansutti 1:2f4f6ea93f6b 51 long double diff = end-start;
amansutti 1:2f4f6ea93f6b 52 cpu_time_used = diff / ((long double)CLOCKS_PER_SEC / 1000.0);
amansutti 1:2f4f6ea93f6b 53 pc.printf("Elapsed time ms: %f\r\n",cpu_time_used);
amansutti 1:2f4f6ea93f6b 54 pc.printf("Elapsed time (ms) x repetition: %f\r\n",cpu_time_used/Repetitions);
amansutti 0:ae9de0bbe204 55
amansutti 0:ae9de0bbe204 56
amansutti 0:ae9de0bbe204 57 }
amansutti 0:ae9de0bbe204 58 }