EZR

Dependencies:   CRC16 FreescaleIAP FreescaleWatchdog GGSProtocol LM75B PIMA Parameters PersistentCircularQueue SerialNumberV2COM mbed-dev-watchdog_2016_03_04

Fork of smartRamalKW by Equipe Firmware V2COM

main.cpp

Committer:
tpadovani
Date:
2015-06-19
Revision:
5:1bc98277c257
Parent:
4:2d0c2643c641
Child:
9:e501499af4ef

File content as of revision 5:1bc98277c257:

#include "main.h"

static Watchdog wd;
static Ticker tickerWd;
SerialNumber sn;
Parameters param ((unsigned char *)&APP_PARAMETERS, sizeof(APP_PARAMETERS));
CommandExecutor exec(APP_PARAMETERS.INTERVALO_WD_NETWORK_S, APP_PARAMETERS.INTERVALO_SILENCIO_S);

int main()
{
    iniciaWd();
    
    printf("##### %s #####\r\n", version);
    printSerialNumber();

    param.loadParameters();
    ggsStream.baud(19200);
    exec.carregaEndereco(sn.get());
    exec.iniciaExecutorComandos();
    
    while(1){
        exec.trataPacoteGGS();
    }
    
}

void iniciaWd(){
    wd.Configure();
    tickerWd.attach(&feedWd, WATCHDOG_INTERVAL);
}

void feedWd(){
    wd.Service();
}

void softReset(){
    printf("SoftReset\r\n");
    tickerWd.detach();
}

void printSerialNumber(){
    printf("SN: ");
    for(int i=0; i < SERIAL_LENGTH; i++){
        printf("%c", sn.get()[i]);
    }
    printf("\r\n");
}