VZTECH / Mbed 2 deprecated main_src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers elapsed_timer.cpp Source File

elapsed_timer.cpp

00001 %: include "elapsed_timer.h"
00002 
00003 bool boolInit_test = true;
00004 bool boolEnd_test = false;
00005     
00006 bool boolInit_test_mean = true;
00007 bool boolEnd_test_mean = false;
00008 
00009 Timer elapsed_timer;
00010 Timer elapsed_timer_mean;
00011 
00012 uint16_t u16Elapsed_time_count = u16_ELAPSED_TIME_COUNT_TIMES;
00013 
00014 uint64_t u64Elapsed_time_u_sum = 0;
00015 
00016 void elapsed_time_start ( void )
00017 {
00018     elapsed_timer.start ();
00019     elapsed_timer.reset ();
00020 }
00021 
00022 int elapsed_time_end ( void )
00023 {
00024     elapsed_timer.stop ();
00025     
00026     int u_elapsed_time = elapsed_timer.read_us ();
00027     
00028     vz_printf ( "Elapsed_time : [ %du, %dm, %ds ]", 
00029     
00030         u_elapsed_time, elapsed_timer.read_ms (), int ( elapsed_timer.read () ) );
00031     
00032     return ( u_elapsed_time );
00033 }
00034 
00035 void elapsed_time_mean_start ( void )
00036 {
00037     if ( boolInit_test_mean )
00038     {
00039         u16Elapsed_time_count = u16_ELAPSED_TIME_COUNT_TIMES;
00040         
00041         u64Elapsed_time_u_sum = 0;
00042         
00043         boolInit_test_mean = false;
00044     }
00045     
00046     elapsed_timer_mean.start ();
00047     
00048     elapsed_timer_mean.reset ();
00049 }
00050 
00051 void elapsed_time_mean_end ( void )
00052 {
00053     if ( u16Elapsed_time_count  )
00054     {
00055         u16Elapsed_time_count--;
00056     
00057         elapsed_timer_mean.stop ();
00058         
00059         u64Elapsed_time_u_sum += elapsed_timer_mean.read_us ();
00060         
00061         elapsed_timer_mean.start ();
00062         elapsed_timer_mean.reset ();
00063         
00064         if ( u16Elapsed_time_count == 0 ) boolEnd_test_mean = true;
00065     }
00066         else if ( boolEnd_test_mean )
00067     {
00068         vz_printf ( "Elapsed_time_mean : [ %.2lfu ]", double ( u64Elapsed_time_u_sum / u16_ELAPSED_TIME_COUNT_TIMES ) );
00069         
00070         boolEnd_test_mean = false;    
00071         boolInit_test_mean = true;
00072         
00073         elapsed_timer_mean.stop ();
00074     }
00075 }