1
0
forked from me/IronOS
Files
IronOS/workspace/ts100/inc/Modes.h
Ben V. Brown 1cbcba924f Adding auto-rotation to the screen
Adds auto rotation support using the proper orientation detection. (Not
using raw values).
Should Fix and close #29
2017-07-27 11:46:04 +10:00

54 lines
1.2 KiB
C

/*
* Modes.h
*
* Created on: 17 Sep 2016
* Author: Ralim
*
* Modes.h -> Main function for driving the application
* This processes the buttons then does the gui
*/
#ifndef MODES_H_
#define MODES_H_
#include "Interrupt.h"
#include "S100V0_1.h"
#include "Oled.h"
#include "PID.h"
#include "Settings.h"
#include "Analog.h"
#include "MMA8652FC.h"
#include <string.h>
typedef enum {
STARTUP, //we are sitting on the prompt to push a button
SOLDERING, //Normal operating mode
TEMP_ADJ, //Adjust the set temperature
SETTINGS, //Settings menu
SLEEP, //Iron is snoozing due to lack of use
COOLING, //Iron is cooling down -> Warning screen
UVLOWARN, //Unit tripped low voltage
THERMOMETER, //Read the tip temp
DCINDISP, //Disp the input voltage && Cal the DCin voltage divider
TEMPCAL, //Cal tip temp offset
} operatingModeEnum;
#define SETTINGSOPTIONSCOUNT 11 /*Number of settings in the settings menu*/
typedef enum {
UVCO = 0,
SLEEP_TEMP,
SLEEP_TIME,
SHUTDOWN_TIME,
MOTIONSENSITIVITY,
TEMPDISPLAY,
TEMPROUNDING,
DISPUPDATERATE,
SCREENROTATION,
BOOSTMODE,
BOOSTTEMP,
POWERDISPLAY,
} settingsPageEnum;
void ProcessUI();
void DrawUI();
#endif /* MODES_H_ */