// ----------------------------------------------------------------------------- /// @file Display.h /// @brief File description // ----------------------------------------------------------------------------- // Micro-Key bv // Industrieweg 28, 9804 TG Noordhorn // Postbus 92, 9800 AB Zuidhorn // The Netherlands // Tel: +31 594 503020 // Fax: +31 594 505825 // Email: support@microkey.nl // Web: www.microkey.nl // ----------------------------------------------------------------------------- /// $Revision$ /// $Author$ /// $Date$ // (c) 2015 Micro-Key bv // ----------------------------------------------------------------------------- /// @defgroup {group_name} {group_description} /// Description /// @file Display.h /// @ingroup {group_name} #ifndef DISPLAY_H_ #define DISPLAY_H_ // ----------------------------------------------------------------------------- // Include files // ----------------------------------------------------------------------------- #include #include "FreeRTOS.h" #include "task.h" #include "stm32f10x.h" // ----------------------------------------------------------------------------- // Constant and macro definitions // ----------------------------------------------------------------------------- // ----------------------------------------------------------------------------- // Type definitions. // ----------------------------------------------------------------------------- struct Display { void* displayDriver; // USE WITH CAUTION - VOID POINTER TaskHandle_t taskHandle; int TaskPriority; bool runTask; }; // ----------------------------------------------------------------------------- // Function declarations // ----------------------------------------------------------------------------- /** ---------------------------------------------------------------------------- * Display_construct * Constructor for a display application * * @param self The display object to initialize * @param displayDriver The specific display driver that the * application will use * This is a constant and will not be matter * to changes after initialisation. Only * via destruct and a new construct * * @return ErrorStatus SUCCESS if initialisation was OK * ERROR otherwise * * @todo * ----------------------------------------------------------------------------- */ extern ErrorStatus Display_construct(struct Display* self, void* displayDriver); /** ---------------------------------------------------------------------------- * Display_destruct * Destructor for a display application * * @param self The display object to destruct * * @return void * * @todo * ----------------------------------------------------------------------------- */ extern void Display_destruct(struct Display* self); /** ---------------------------------------------------------------------------- * Display_clearScreen * Clear the complete display * * @param self The display information to use * * @return ErrorStatus SUCCESS if clearing display was OK * ERROR otherwise * * @todo * ----------------------------------------------------------------------------- */ extern ErrorStatus Display_clearScreen(struct Display* self); /** ---------------------------------------------------------------------------- * Display_write * Description of function * * @param self The display information to use * @param buffer The message to write * @param length Length of the message * @param row The row of the display to put the message * Starts with 1 * @param column The column to start at with the message * Starts with 1 * * @return ErrorStatus SUCCESS if putting message to display was * successful * ERROR otherwise, especially * - Message too long * - Row/Column outside display boundaries * * @todo * ----------------------------------------------------------------------------- */ extern ErrorStatus Display_write(struct Display* self, const char* buffer, unsigned int length, unsigned int row, unsigned int column); #endif /* DISPLAY_H_ */