Erick / Mbed 2 deprecated ICE_BLE_TEST

Dependencies:   NaturalTinyShell_ice libmDot-12Sept mbed-rtos mbed

Fork of ICE by Erick

Committer:
davidjhoward
Date:
Thu Sep 15 21:24:23 2016 +0000
Revision:
61:ae6dd6692c7d
Parent:
60:96e17fb215a6
Child:
68:dbe39d83eb98
add command to dump modbus register map

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jmarkel44 0:65cfa4873284 1 /******************************************************************************
davidjhoward 58:a4422d19b2ea 2 *
jmarkel44 0:65cfa4873284 3 * File: AnalyticsLogger.cpp
jmarkel44 0:65cfa4873284 4 * Desciption: source for the ICE Analytics Logger
jmarkel44 0:65cfa4873284 5 *
jmarkel44 0:65cfa4873284 6 *****************************************************************************/
jmarkel44 0:65cfa4873284 7 #include "global.h"
jmarkel44 0:65cfa4873284 8 #include <stdio.h>
jmarkel44 0:65cfa4873284 9 #include "AnalyticsLogger.h"
davidjhoward 58:a4422d19b2ea 10 #include "eep.h"
davidjhoward 60:96e17fb215a6 11 #include "rtc.h"
jmarkel44 0:65cfa4873284 12
jmarkel44 0:65cfa4873284 13 /*****************************************************************************
jmarkel44 0:65cfa4873284 14 * Function: AnalyticsLogger
davidjhoward 58:a4422d19b2ea 15 * Description: entry point for the Analytics Logger
jmarkel44 0:65cfa4873284 16 *
jmarkel44 0:65cfa4873284 17 * @param (IN) args (user-defined arguments)
jmarkel44 0:65cfa4873284 18 * @return none
jmarkel44 0:65cfa4873284 19 *****************************************************************************/
jmarkel44 0:65cfa4873284 20 void AnalyticsLogger(void const *args)
jmarkel44 0:65cfa4873284 21 {
davidjhoward 60:96e17fb215a6 22 struct tm *ts;
davidjhoward 60:96e17fb215a6 23 time_t curr_sec;
davidjhoward 60:96e17fb215a6 24 char time_string[80];
davidjhoward 60:96e17fb215a6 25 int last_min=8;
davidjhoward 60:96e17fb215a6 26
davidjhoward 60:96e17fb215a6 27 curr_sec = time(0);
davidjhoward 60:96e17fb215a6 28 ts = localtime(&curr_sec);
davidjhoward 60:96e17fb215a6 29 strftime(time_string, sizeof(time_string), "%Y-%m-%d %H:%M:%S", ts);
davidjhoward 60:96e17fb215a6 30 printf("\r\n%s has started at: %s\r\n", __func__, time_string);
jmarkel44 0:65cfa4873284 31
jmarkel44 0:65cfa4873284 32 while ( true ) {
davidjhoward 60:96e17fb215a6 33 osEvent evt = AnalyticsLoggerMailBox.get(5000);
davidjhoward 58:a4422d19b2ea 34 if (evt.status == osEventMail) {
davidjhoward 58:a4422d19b2ea 35 AnalyticsLoggerReq_t *mail = (AnalyticsLoggerReq_t*)evt.value.p;
davidjhoward 58:a4422d19b2ea 36 logInfo("Analytics Logger Mail Received: Timestamp: %s, Entry: %s", mail->timestamp, mail->log_entry);
davidjhoward 58:a4422d19b2ea 37 AnalyticsLoggerMailBox.free(mail);
davidjhoward 58:a4422d19b2ea 38 break;
davidjhoward 60:96e17fb215a6 39 }
davidjhoward 60:96e17fb215a6 40
davidjhoward 60:96e17fb215a6 41 curr_sec = time(0);
davidjhoward 60:96e17fb215a6 42 ts = localtime(&curr_sec);
davidjhoward 60:96e17fb215a6 43 // printf("curr_sec=%ld, min=%d (last=%d)\r\n", curr_sec, ts->tm_min, last_min );
davidjhoward 60:96e17fb215a6 44 if( ((ts->tm_min%15) == 0) && (ts->tm_min != last_min) ) {
davidjhoward 60:96e17fb215a6 45 last_min = ts->tm_min;
davidjhoward 60:96e17fb215a6 46 strftime(time_string, sizeof(time_string), "%Y-%m-%d %H:%M:%S", ts);
davidjhoward 60:96e17fb215a6 47 printf("%s logging at: %s\r\n", __func__, time_string);
davidjhoward 61:ae6dd6692c7d 48
davidjhoward 61:ae6dd6692c7d 49 std::map<std::string, ModbusRegister>::iterator iter;
davidjhoward 61:ae6dd6692c7d 50 for (iter = ModbusRegisterMap.begin(); iter != ModbusRegisterMap.end(); ++iter) {
davidjhoward 61:ae6dd6692c7d 51 printf("Logging tag=%s, value=%2.2f", iter->first.c_str(), iter->second.float_value );
davidjhoward 61:ae6dd6692c7d 52 }
davidjhoward 58:a4422d19b2ea 53 }
jmarkel44 0:65cfa4873284 54 }
jmarkel44 0:65cfa4873284 55 }