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