More reasonable current draw numbers + multiply by voltage

This commit is contained in:
adamdunkels 2007-11-28 17:06:55 +00:00
parent 8d96443a3b
commit f21225eb1c

View File

@ -28,7 +28,7 @@
* *
* This file is part of the Contiki operating system. * This file is part of the Contiki operating system.
* *
* $Id: energest-arch.c,v 1.2 2007/10/25 09:30:39 adamdunkels Exp $ * $Id: energest-arch.c,v 1.3 2007/11/28 17:06:55 adamdunkels Exp $
*/ */
/** /**
@ -43,22 +43,22 @@
#include "sys/clock.h" #include "sys/clock.h"
#include "sys/rtimer.h" #include "sys/rtimer.h"
#define DEC2FIX(h,d) ((h << 6) + (unsigned long)(0.64 * d)) #define DEC2FIX(h,d) ((h * 64) + (unsigned long)(0.64 * d))
/*#define DEC2FIX(h, d) (h << 8)*/
/*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/
unsigned long unsigned long
energest_arch_current_estimate(void) energest_arch_current_estimate(void)
{ {
return return 3 * /* The voltage is 3 V */ /* The DEC2FIX() stuff is
energest_type_time(ENERGEST_TYPE_CPU) * DEC2FIX(1,1) + the current */
energest_type_time(ENERGEST_TYPE_LPM) * DEC2FIX(1,0) + (energest_type_time(ENERGEST_TYPE_CPU) * DEC2FIX(0,545) +
energest_type_time(ENERGEST_TYPE_LED_GREEN) * DEC2FIX(6,36) + energest_type_time(ENERGEST_TYPE_LPM) * DEC2FIX(18,0) +
energest_type_time(ENERGEST_TYPE_LED_YELLOW) * DEC2FIX(3,46) + energest_type_time(ENERGEST_TYPE_LED_GREEN) * DEC2FIX(46,0) + /* Not measured */
energest_type_time(ENERGEST_TYPE_LED_RED) * DEC2FIX(3,69) + energest_type_time(ENERGEST_TYPE_LED_YELLOW) * DEC2FIX(46,0) + /* Not measured */
energest_type_time(ENERGEST_TYPE_SENSORS) * DEC2FIX(3,76) + energest_type_time(ENERGEST_TYPE_LED_RED) * DEC2FIX(46,0) +
energest_type_time(ENERGEST_TYPE_TRANSMIT) * DEC2FIX(5,1) + energest_type_time(ENERGEST_TYPE_SENSORS) * DEC2FIX(60,0) + /* Not measured */
energest_type_time(ENERGEST_TYPE_LISTEN) * DEC2FIX(4,8); energest_type_time(ENERGEST_TYPE_TRANSMIT) * DEC2FIX(177,0) +
energest_type_time(ENERGEST_TYPE_LISTEN) * DEC2FIX(200,0)) / 10;
} }
/*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/
unsigned short unsigned short