Lezione_1

Dependencies:   TS_DISCO_F746NG LCD_DISCO_F746NG BSP_DISCO_F746NG BUTTON_GROUP

Committer:
fabian313
Date:
Mon Jan 28 09:11:18 2019 +0000
Revision:
2:ded81c4c9643
Parent:
1:f5a3a0a28be5
bsp

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gscuttari 0:2464a8f6b740 1
gscuttari 0:2464a8f6b740 2 //-----------------------------------------------------------------------
gscuttari 0:2464a8f6b740 3 // LEZIONE 1
gscuttari 0:2464a8f6b740 4 //
gscuttari 0:2464a8f6b740 5 //
gscuttari 1:f5a3a0a28be5 6 // 28/01/2019, Copyright (c) 2019 SCUOLA PROFESSIONALE L. EINAUDI
gscuttari 0:2464a8f6b740 7 // Beta
gscuttari 0:2464a8f6b740 8 //-----------------------------------------------------------------------
gscuttari 0:2464a8f6b740 9
gscuttari 0:2464a8f6b740 10 #include "mbed.h"
gscuttari 0:2464a8f6b740 11 #include "button_group.hpp"
gscuttari 0:2464a8f6b740 12 #include "TS_DISCO_F746NG.h"
gscuttari 0:2464a8f6b740 13 #include "LCD_DISCO_F746NG.h"
gscuttari 0:2464a8f6b740 14
gscuttari 0:2464a8f6b740 15 Serial pc(USBTX, USBRX);
gscuttari 0:2464a8f6b740 16
fabian313 2:ded81c4c9643 17 LCD_DISCO_F746NG lcd_;
fabian313 2:ded81c4c9643 18 TS_DISCO_F746NG ts_;
fabian313 2:ded81c4c9643 19
fabian313 2:ded81c4c9643 20 const uint32_t BACK_COLOR = 0xFF006A6C;
fabian313 2:ded81c4c9643 21
fabian313 2:ded81c4c9643 22 void screen_setup_menu(void);
fabian313 2:ded81c4c9643 23
gscuttari 0:2464a8f6b740 24 void init_lcd(void)
gscuttari 0:2464a8f6b740 25 {
gscuttari 0:2464a8f6b740 26 lcd_.Clear(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 27 printf("********** start INIT_LCD *********\n");
gscuttari 0:2464a8f6b740 28 lcd_.SetBackColor(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 29 lcd_.SetTextColor(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 30 lcd_.DisplayStringAt(0, LINE(1), (uint8_t *)"LEZIONE 1", CENTER_MODE);
gscuttari 0:2464a8f6b740 31
gscuttari 0:2464a8f6b740 32 wait(1.5);
gscuttari 0:2464a8f6b740 33
gscuttari 0:2464a8f6b740 34 lcd_.Clear(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 35 lcd_.SetBackColor(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 36 lcd_.SetTextColor(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 37 lcd_.SetFont(&Font16);
gscuttari 0:2464a8f6b740 38 lcd_.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT OK", CENTER_MODE);
gscuttari 0:2464a8f6b740 39
gscuttari 0:2464a8f6b740 40 wait(0.5);
gscuttari 0:2464a8f6b740 41 lcd_.SetFont(&Font16);
fabian313 2:ded81c4c9643 42 screen_setup_menu();
gscuttari 0:2464a8f6b740 43 }
gscuttari 0:2464a8f6b740 44
gscuttari 0:2464a8f6b740 45
gscuttari 0:2464a8f6b740 46 void screen_setup_menu(void)
gscuttari 0:2464a8f6b740 47 {
gscuttari 0:2464a8f6b740 48 using namespace Mikami;
gscuttari 0:2464a8f6b740 49 lcd_.Clear(LCD_COLOR_DARKBLUE);
gscuttari 0:2464a8f6b740 50 const string FIRST_CHOICE[9] = {"DISPLAY PARAMETERS","WiFi", "MACHINE NUMBER","BASE PRESSURE","SCREEN SUSPENSION","SETUP LITERS","WATER PRESSURE","SETUP ALARMS","RETURN"};
gscuttari 0:2464a8f6b740 51 const string FIRST_CHOICE1[9] = {" ", " ", " "," "," "," "," "," "," "};
gscuttari 0:2464a8f6b740 52 ButtonGroup menu_schadow(lcd_, ts_, 18, 17, 220, 40,
gscuttari 0:2464a8f6b740 53 LCD_COLOR_BLACK, LCD_COLOR_DARKBLUE, 9, FIRST_CHOICE1, 10, 10, 2, Font16);
gscuttari 0:2464a8f6b740 54 ButtonGroup menu(lcd_, ts_, 16, 15, 220, 40,
gscuttari 0:2464a8f6b740 55 BACK_COLOR, LCD_COLOR_DARKBLUE, 9, FIRST_CHOICE, 10, 10, 2, Font16);
gscuttari 0:2464a8f6b740 56
gscuttari 0:2464a8f6b740 57
gscuttari 0:2464a8f6b740 58
gscuttari 0:2464a8f6b740 59 bool exitFromLoop = false;
gscuttari 0:2464a8f6b740 60 while (!exitFromLoop) {
gscuttari 0:2464a8f6b740 61 if (menu.Touched(8, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 62 Thread::wait(200);
gscuttari 0:2464a8f6b740 63 lcd_.Clear(BACK_COLOR);
gscuttari 0:2464a8f6b740 64 mode = mode_prec;
gscuttari 0:2464a8f6b740 65 //writeFlash();
gscuttari 0:2464a8f6b740 66
gscuttari 0:2464a8f6b740 67 exitFromLoop=true;
gscuttari 0:2464a8f6b740 68 } else if (menu.Touched(0, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 69 screen_setup_display_parameters();
gscuttari 0:2464a8f6b740 70 exitFromLoop=true;
gscuttari 0:2464a8f6b740 71 } else if (menu.Touched(1, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 72 screen_setup_wifi();
gscuttari 0:2464a8f6b740 73 exitFromLoop=true;
gscuttari 0:2464a8f6b740 74 } else if (menu.Touched(2, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 75 screen_setup_Machine_Number();
gscuttari 0:2464a8f6b740 76 exitFromLoop=true;
gscuttari 0:2464a8f6b740 77 } else if (menu.Touched(3, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 78 screen_setup_pressure();
gscuttari 0:2464a8f6b740 79 exitFromLoop=true;
gscuttari 0:2464a8f6b740 80 } else if (menu.Touched(4, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 81 screen_setup_screen_suspended();
gscuttari 0:2464a8f6b740 82 exitFromLoop=true;
gscuttari 0:2464a8f6b740 83 } else if (menu.Touched(5, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 84 screen_setup_liters();
gscuttari 0:2464a8f6b740 85 exitFromLoop=true;
gscuttari 0:2464a8f6b740 86 } else if (menu.Touched(6, LCD_COLOR_GREEN)) {
gscuttari 0:2464a8f6b740 87 screen_setup_water_pressure();
gscuttari 0:2464a8f6b740 88 exitFromLoop=true;
gscuttari 0:2464a8f6b740 89 }
gscuttari 0:2464a8f6b740 90
gscuttari 0:2464a8f6b740 91
gscuttari 0:2464a8f6b740 92
gscuttari 0:2464a8f6b740 93 Thread::wait(100);
gscuttari 0:2464a8f6b740 94
gscuttari 0:2464a8f6b740 95 }
gscuttari 0:2464a8f6b740 96 return;
gscuttari 0:2464a8f6b740 97 }
gscuttari 0:2464a8f6b740 98
gscuttari 0:2464a8f6b740 99
gscuttari 0:2464a8f6b740 100
gscuttari 0:2464a8f6b740 101
gscuttari 0:2464a8f6b740 102
gscuttari 0:2464a8f6b740 103 int main()
gscuttari 0:2464a8f6b740 104 {
gscuttari 0:2464a8f6b740 105 pc.baud(115200);
gscuttari 0:2464a8f6b740 106 printf("START...\n");
gscuttari 0:2464a8f6b740 107 Thread::wait(2000);
gscuttari 0:2464a8f6b740 108 init_lcd(); // inizializzazione lcd e touch screen
gscuttari 0:2464a8f6b740 109 lcd_.SetFont(&Font16);
gscuttari 0:2464a8f6b740 110 Thread::wait(2000);
gscuttari 0:2464a8f6b740 111 }
gscuttari 0:2464a8f6b740 112
gscuttari 0:2464a8f6b740 113
gscuttari 0:2464a8f6b740 114 void init_lcd(void)
gscuttari 0:2464a8f6b740 115 {
gscuttari 0:2464a8f6b740 116 lcd_.Clear(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 117 printf("********** start INIT_LCD *********\n");
gscuttari 0:2464a8f6b740 118 lcd_.SetBackColor(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 119 lcd_.SetTextColor(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 120 lcd_.DisplayStringAt(0, LINE(1), (uint8_t *)"LEZIONE 1", CENTER_MODE);
gscuttari 0:2464a8f6b740 121
gscuttari 0:2464a8f6b740 122 wait(1.5);
gscuttari 0:2464a8f6b740 123
gscuttari 0:2464a8f6b740 124 lcd_.Clear(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 125 lcd_.SetBackColor(LCD_COLOR_BLACK);
gscuttari 0:2464a8f6b740 126 lcd_.SetTextColor(LCD_COLOR_WHITE);
gscuttari 0:2464a8f6b740 127 lcd_.SetFont(&Font16);
gscuttari 0:2464a8f6b740 128 lcd_.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT OK", CENTER_MODE);
gscuttari 0:2464a8f6b740 129
gscuttari 0:2464a8f6b740 130 wait(0.5);
gscuttari 0:2464a8f6b740 131 lcd_.SetFont(&Font16);
gscuttari 0:2464a8f6b740 132 screen_setup_menu(void)
gscuttari 0:2464a8f6b740 133 }
gscuttari 0:2464a8f6b740 134
gscuttari 0:2464a8f6b740 135