ESP8266_swiss_army_board/src/app/definition.h

61 lines
1.4 KiB
C

#ifndef DEFINITION_H
#define DEFINITION_H
#include <Adafruit_SSD1306.h>
#include <Arduino.h>
typedef enum { GPIO_0 = 0,
GPIO_1_TX = 1,
GPIO_2 = 2,
GPIO_3_RX = 3,
GPIO_4_SDA = 4,
GPIO_5_SCL = 5,
GPIO_10 = 10,
GPIO_12_MISO = 12,
GPIO_13_MOSI = 13,
GPIO_14_CLK = 14,
GPIO_15 = 15,
GPIO_16 = 16,
ADC = A0,
DEFAULT_PIN = -1 } Pin;
#define RTC_BEGIN_ERR B00000001
#define DISP_BEGIN_ERR B00000010
#define SDCARD_INIT_ERR B00000100
#define MALLOC_ERR B00000001
#define NO_ERROR 0
#define NO_CURRENT_VIEW NULL
#define LAST_VIEW -1
#define BATT_FULL 870 //8.4v
#define BATT_EMPTY 775 //7.4v
#define BATT_DIFF 95
#define USB_THRESHOLD 600
typedef enum { OR_0 = 2, OR_90 = 3, OR_180 = 0, OR_270 = 1 } Orientation;
typedef enum { BIT = 0, BYTE, KBIT, KBYTE, MBIT, MBYTE, GBIT, GBYTE } SizeUnit;
typedef enum { BATTERY = 0, USB } PowerType;
//Data structure for the view handling
typedef struct viewLink{
boolean (*viewLogicFunction)(Adafruit_SSD1306&, void*);
void *pData;
const unsigned char UID;
struct viewLink *next;
} ViewLink, *ViewLinkedList;
//Data structure for the battery info
typedef struct powerInfo
{
PowerType powerType;
unsigned char level;
}PowerInfo;
#endif //DEFINITION_H