Touchscreen voltage meter (WIP)

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI VoltageMeter_stm32f429disco

Dependents:   VoltageMeter_stm32f429disco

Committer:
dongero
Date:
Mon Feb 24 20:44:58 2020 +0000
Revision:
1:5fa403dde809
Refactored structure to use multiple files (display, adc, ts); Initializes and displays splash screen and start button.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dongero 1:5fa403dde809 1 #include "LCD_DISCO_F429ZI.h"
dongero 1:5fa403dde809 2
dongero 1:5fa403dde809 3 static LCD_DISCO_F429ZI lcd;
dongero 1:5fa403dde809 4
dongero 1:5fa403dde809 5 struct Rect {
dongero 1:5fa403dde809 6 uint32_t x;
dongero 1:5fa403dde809 7 uint32_t y;
dongero 1:5fa403dde809 8 uint32_t height;
dongero 1:5fa403dde809 9 uint32_t width;
dongero 1:5fa403dde809 10 };
dongero 1:5fa403dde809 11
dongero 1:5fa403dde809 12 void display_failed_ts_init() {
dongero 1:5fa403dde809 13 BSP_LCD_SetFont(&Font20);
dongero 1:5fa403dde809 14
dongero 1:5fa403dde809 15 lcd.Clear(LCD_COLOR_RED);
dongero 1:5fa403dde809 16 lcd.SetBackColor(LCD_COLOR_RED);
dongero 1:5fa403dde809 17 lcd.SetTextColor(LCD_COLOR_WHITE);
dongero 1:5fa403dde809 18 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN", CENTER_MODE);
dongero 1:5fa403dde809 19 lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"INIT FAIL", CENTER_MODE);
dongero 1:5fa403dde809 20 }
dongero 1:5fa403dde809 21
dongero 1:5fa403dde809 22 void display_splash_screen() {
dongero 1:5fa403dde809 23 BSP_LCD_SetFont(&Font20);
dongero 1:5fa403dde809 24
dongero 1:5fa403dde809 25 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"POWER", CENTER_MODE);
dongero 1:5fa403dde809 26 lcd.DisplayStringAt(0, LINE(6), (uint8_t *)"TIME", CENTER_MODE);
dongero 1:5fa403dde809 27 }
dongero 1:5fa403dde809 28
dongero 1:5fa403dde809 29 void display_debug_info(char *debug_text) {
dongero 1:5fa403dde809 30 BSP_LCD_SetFont(&Font20);
dongero 1:5fa403dde809 31 lcd.SetTextColor(LCD_COLOR_BLACK);
dongero 1:5fa403dde809 32 lcd.DisplayStringAt(0, LINE(0), (uint8_t *)debug_text, CENTER_MODE);
dongero 1:5fa403dde809 33 }
dongero 1:5fa403dde809 34
dongero 1:5fa403dde809 35 void display_main_screen() {
dongero 1:5fa403dde809 36 lcd.Clear(LCD_COLOR_WHITE);
dongero 1:5fa403dde809 37
dongero 1:5fa403dde809 38 lcd.SetTextColor(LCD_COLOR_BLUE);
dongero 1:5fa403dde809 39 lcd.FillRect(79, 82, 100, 100); //(x, y, height, width)
dongero 1:5fa403dde809 40
dongero 1:5fa403dde809 41 lcd.SetBackColor(LCD_COLOR_BLUE);
dongero 1:5fa403dde809 42 lcd.SetTextColor(LCD_COLOR_WHITE);
dongero 1:5fa403dde809 43 BSP_LCD_SetFont(&Font24);
dongero 1:5fa403dde809 44 lcd.DisplayStringAt(10, LINE(5), (uint8_t *)"START", CENTER_MODE);
dongero 1:5fa403dde809 45 }
dongero 1:5fa403dde809 46
dongero 1:5fa403dde809 47 void display_get_size(uint32_t &x, uint32_t &y) {
dongero 1:5fa403dde809 48 x = lcd.GetXSize();
dongero 1:5fa403dde809 49 y = lcd.GetYSize();
dongero 1:5fa403dde809 50 }