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:
4:2d0c2643c641
Parent:
3:21598044a47f
Child:
5:1bc98277c257

File content as of revision 4:2d0c2643c641:

#include "main.h"

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

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");
}