main/task_tft.h

Sat, 06 Jun 2020 13:28:46 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 06 Jun 2020 13:28:46 +0200
changeset 77
66c77497d86d
parent 4
6d1f512cd074
permissions
-rw-r--r--

Changed the recipe database so that it is expandable, version 2. More mash fields and allow 16 steps. Allow 20 Additions. Removed separate mash steps from the state machine, the steps are moved to the runtime data. There is no fixed step number for mashout anymore. There is no fixed step for mash-in anymore, just use the first step and heat to the infusion temperature. After malt add, switch to the normal step temperature. Implemented decoction steps.

#ifndef	_TASK_TFT_H
#define	_TASK_TFT_H

/**
 * @file task_tft.h
 * @brief BrewBoard TFT and Touch screen driver for a 320x240 ILI9341 based display.
 *        But because the application is controlled using the touch screen, all the
 *        processing of menus is also found here.
 *        It's the first started task, but it does nothing until the Main_Screen 
 *        variable is set.
 */

/**
 * @brief Update the JSON structure with the logdata.
 */
void update_json(void);

/**
 * @brief Initialize the TFT display
 */
int init_tft_display(void);

/**
 * @brief Write a big message at the center top of the screen.
 * @param text The text to display
 */
void TopMessage(char *text);

/**
 * @brief Draw Mash Lauter Tun info
 * @param x X startpoint
 * @param y Y startpoint
 * @param update If update or initial draw.
 */
void MLT_info(int x, int y, bool update);

/**
 * @brief Draw Hot Liquer Tank info
 * @param x X startpoint
 * @param y Y startpoint
 * @param update If update or initial draw.
 * @param small To display a smaller box.
 */
void HLT_info(int x, int y, bool update, bool small);

/**
 * @brief Set the timer.
 * @param seconds The number of seconds in the timer.
 */
void TimerSet(uint32_t seconds);

/**
 * @brief Show the timer.
 * @param Time the time to display.
 * @param X the X position to display the time
 * @param Y the Y position to display the time
 */
void TimerShow(uint32_t Time, int X, int Y);

/**
 * @brief Initialize all values for the webui.
 */
void TFTstartWS(int client);

/**
 * @brief FreeRTOS TFT/Touch task. 
 */
void task_tft(void *);

#endif

mercurial