* Estimated pinout into the ioc file * Fix Atollic paths to be somewhat more portable * Add make command * Add rough calls to ADC2 [untested] * Using dual ADC injected modes * Start both ADCs * Move some IRQ's to ram exec * Stabilize PID a bit more * Add in ideas for tip type selection * Update peripheral setup to support TS80 * Add tiptype formula / settings struct * Add function ids to the settings menu * Rough tip selection * Rough out new cal routine for simple tips * Hardware test is fairly close for first pass * Add Simple calibration case [UNTESTED] This adds the calibration option that uses boiling water to the calibration menu. This is untested, and may need gain adjustments before use. * [Feat] Add some QC testing code * Typo fix * Add double button press handler for different rising times * Add hook for jump to sleep mode * QC for 9V Works! * Rough out QC handler, trim out old menu help text thats useless * QC 9V working... Static all the things (Low on ROM)! * Static all I2C to save space * Move QC negotiation into background task so it doesnt block the UI * Input V display works, tune ADC * QC 3 steps working * Start tip R measurements * Impliment tip resistance * Fix up the accel position, link in auto QC stages * Fix tip title * Tip type settings, Static OLED * Revert I2C callbacks * Misc Cleanup * Better Gain value, need to investiate offset * Add model warning * Add TS80 Boot Logo (#367) * Add TS80 Boot Logo * Refined * Moved down by 1px * Add in power selection 18/24W * Clean up accelerometer, fix TS100 builds, Fix voltage div cal
46 lines
1.4 KiB
C++
46 lines
1.4 KiB
C++
#ifndef __MAIN_H
|
|
#define __MAIN_H
|
|
|
|
#include <MMA8652FC.hpp>
|
|
#include "OLED.hpp"
|
|
#include "Setup.h"
|
|
extern uint8_t PCBVersion;
|
|
extern uint16_t currentlyActiveTemperatureTarget;
|
|
enum ButtonState {
|
|
BUTTON_NONE = 0, /* No buttons pressed / < filter time*/
|
|
BUTTON_F_SHORT = 1, /* User has pressed the front button*/
|
|
BUTTON_B_SHORT = 2, /* User has pressed the back button*/
|
|
BUTTON_F_LONG = 4, /* User is holding the front button*/
|
|
BUTTON_B_LONG = 8, /* User is holding the back button*/
|
|
BUTTON_BOTH = 16, /* User has pressed both buttons*/
|
|
|
|
/*
|
|
* Note:
|
|
* Pressed means press + release, we trigger on a full \__/ pulse
|
|
* holding means it has gone low, and been low for longer than filter time
|
|
*/
|
|
};
|
|
|
|
ButtonState getButtonState();
|
|
void waitForButtonPressOrTimeout(uint32_t timeout);
|
|
void waitForButtonPress();
|
|
void GUIDelay();
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void HAL_ADCEx_InjectedConvCpltCallback(ADC_HandleTypeDef *hadc);
|
|
void HAL_I2C_ErrorCallback(I2C_HandleTypeDef *hi2c);
|
|
void HAL_I2C_AbortCpltCallback(I2C_HandleTypeDef *hi2c);
|
|
void HAL_I2C_MasterTxCpltCallback(I2C_HandleTypeDef *hi2c);
|
|
void HAL_I2C_MasterRxCpltCallback(I2C_HandleTypeDef *hi2c);
|
|
void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *hi2c);
|
|
void HAL_I2C_MemRxCpltCallback(I2C_HandleTypeDef *hi2c);
|
|
void vApplicationStackOverflowHook(xTaskHandle *pxTask,
|
|
signed portCHAR *pcTaskName);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* __MAIN_H */
|