init

Dependencies:   aconno_I2C Lis2dh12 WatchdogTimer

main.h

Committer:
pathfindr
Date:
2018-12-19
Revision:
20:5404841fdd2b
Parent:
16:3bf5f1a5f869
Child:
21:e0b866630c27

File content as of revision 20:5404841fdd2b:

/*
================================================================================
Project:    MTU Tracker
Module:     ---
Status:     Development
Type:       .h header file
Copyright (c) 2018 Pathfindr Ltd
All Rights Reserved.
================================================================================
Notes:

================================================================================
*/

#ifndef MAIN_INTERFACE_H_
#define MAIN_INTERFACE_H_

//------------------------------------------------------------------------------
//mbed Libraries
//------------------------------------------------------------------------------
#include "mbed.h"
#include "board.h"
#include "WatchdogTimer.h"
#include "ble/BLE.h"
//#include "nvstore.h"


//------------------------------------------------------------------------------
//peripheral Libraries
//------------------------------------------------------------------------------
#include "LIS3DH.h"
#include "SI7060.h"
#include "acd_nrf52_saadc.h"

//------------------------------------------------------------------------------
//C Standard Libraries
//------------------------------------------------------------------------------
/*
#include <ctype.h>
#include <errno.h>
#include <stddef.h>
#include <math.h>
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdbool.h>
#include <stdint.h>
*/
//include <string>  // dont use - causes 2ma sleep
//using std::string;

//------------------------------------------------------------------------------
//Application headers
//------------------------------------------------------------------------------
#include "states.h"
#include "common.h"
#include "sensors.h"
#include "modem.h"
#include "filesystem.h"

//------------------------------------------------------------------------------
//Global macros
//------------------------------------------------------------------------------
//#define lowByte(w) ((uint8_t) ((w) & 0xff))
//#define highByte(w) ((uint8_t) ((w) >> 8))

#define CONSOLE_DEBUG 1 /* Set this if you need debug messages on the console; * it will have an impact on code-size and power consumption. */
#if CONSOLE_DEBUG
#define DEBUG(...) { uart.printf(__VA_ARGS__); }
#else
#define DEBUG(...) /* nothing */
#endif /* #if CONSOLE_DEBUG */

//------------------------------------------------------------------------------
//Global data structures
//------------------------------------------------------------------------------
//PERFS
extern Serial uart;

//VARS
extern bool GLOBAL_accel_healthy;
extern bool GLOBAL_requireSoftReset;
extern bool GLOBAL_motionFlagTriggered;
extern bool GLOBAL_debugLED;
extern bool GLOBAL_needToConfigureLis3dh;
extern bool GLOBAL_registeredOnNetwork;
extern long long GLOBAL_imei;
extern float GLOBAL_voltage;
extern time_t GLOBAL_RTCunixtime;
extern time_t GLOBAL_wakeTime;

//FUNCS
extern void watchdogKick();

#endif