Lezione_1

Dependencies:   TS_DISCO_F746NG LCD_DISCO_F746NG BSP_DISCO_F746NG BUTTON_GROUP

Committer:
gscuttari
Date:
Mon Jan 28 09:28:47 2019 +0000
Revision:
3:7b59a5e25dec
Parent:
1:f5a3a0a28be5
Child:
4:b412dc13a88e
1

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