Linear stabilizer voltage and current on lm358 and transictor. Digital control and indication on stm32f103rbt and tft01-22sp (ili9341). https://www.youtube.com/watch?v=DLC3KEtlr9I https://radiokot.ru/forum/viewtopic.php?f=11&t=112440

Dependencies:   mbed TFT_fonts SPI_TFT_ILI9341 beep _24LCXXX

Committer:
sinrab
Date:
Thu Jun 06 10:22:13 2019 +0000
Revision:
10:60fa02641552
Parent:
0:ed1ba99f7b14
v1.0.1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sinrab 0:ed1ba99f7b14 1 //------------------------------------------------------------------------------------------------------------
sinrab 0:ed1ba99f7b14 2 void drawScreen5(void) //экран 5 Настройки главная
sinrab 0:ed1ba99f7b14 3 {
sinrab 0:ed1ba99f7b14 4 if (complit==0) {
sinrab 0:ed1ba99f7b14 5 TFT.background(back5);
sinrab 0:ed1ba99f7b14 6 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 7 TFT.cls();
sinrab 0:ed1ba99f7b14 8 complit = 1; // прорисовали!
sinrab 0:ed1ba99f7b14 9 }
sinrab 0:ed1ba99f7b14 10
sinrab 0:ed1ba99f7b14 11 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 12 TFT.background(back5);
sinrab 0:ed1ba99f7b14 13 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 14 TFT.locate(0, 0);
sinrab 0:ed1ba99f7b14 15 TFT.set_font((unsigned char*) Courier8x13);
sinrab 0:ed1ba99f7b14 16 printf(" Settings \n");
sinrab 0:ed1ba99f7b14 17 printf("--------------------------- \n");
sinrab 0:ed1ba99f7b14 18 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 19 if (mline==1) {
sinrab 0:ed1ba99f7b14 20 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 21 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 22 } else {
sinrab 0:ed1ba99f7b14 23 TFT.background(back5);
sinrab 0:ed1ba99f7b14 24 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 25 }
sinrab 0:ed1ba99f7b14 26 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 27 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 28 if (mline==2) {
sinrab 0:ed1ba99f7b14 29 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 30 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 31 } else {
sinrab 0:ed1ba99f7b14 32 TFT.background(back5);
sinrab 0:ed1ba99f7b14 33 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 34 }
sinrab 0:ed1ba99f7b14 35 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 36 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 37 if (mline==3) {
sinrab 0:ed1ba99f7b14 38 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 39 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 40 } else {
sinrab 0:ed1ba99f7b14 41 TFT.background(back5);
sinrab 0:ed1ba99f7b14 42 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 43 }
sinrab 0:ed1ba99f7b14 44 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 45 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 46 if (mline==4) {
sinrab 0:ed1ba99f7b14 47 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 48 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 49 } else {
sinrab 0:ed1ba99f7b14 50 TFT.background(back5);
sinrab 0:ed1ba99f7b14 51 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 52 }
sinrab 0:ed1ba99f7b14 53 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 54 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 55 if (mline==5) {
sinrab 0:ed1ba99f7b14 56 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 57 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 58 } else {
sinrab 0:ed1ba99f7b14 59 TFT.background(back5);
sinrab 0:ed1ba99f7b14 60 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 61 }
sinrab 0:ed1ba99f7b14 62 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 63 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 64 if (mline==6) {
sinrab 0:ed1ba99f7b14 65 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 66 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 67 } else {
sinrab 0:ed1ba99f7b14 68 TFT.background(back5);
sinrab 0:ed1ba99f7b14 69 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 70 }
sinrab 0:ed1ba99f7b14 71 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 72 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 73 if (mline==7) {
sinrab 0:ed1ba99f7b14 74 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 75 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 76 } else {
sinrab 0:ed1ba99f7b14 77 TFT.background(back5);
sinrab 0:ed1ba99f7b14 78 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 79 }
sinrab 0:ed1ba99f7b14 80 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 81 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 82 if (mline==8) {
sinrab 0:ed1ba99f7b14 83 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 84 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 85 } else {
sinrab 0:ed1ba99f7b14 86 TFT.background(back5);
sinrab 0:ed1ba99f7b14 87 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 88 }
sinrab 0:ed1ba99f7b14 89 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 90 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 91 if (mline==9) {
sinrab 0:ed1ba99f7b14 92 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 93 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 94 } else {
sinrab 0:ed1ba99f7b14 95 TFT.background(back5);
sinrab 0:ed1ba99f7b14 96 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 97 }
sinrab 0:ed1ba99f7b14 98 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 99 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 100 if (mline==10) {
sinrab 0:ed1ba99f7b14 101 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 102 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 103 } else {
sinrab 0:ed1ba99f7b14 104 TFT.background(back5);
sinrab 0:ed1ba99f7b14 105 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 106 }
sinrab 0:ed1ba99f7b14 107 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 108 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 109 if (mline==11) {
sinrab 0:ed1ba99f7b14 110 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 111 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 112 } else {
sinrab 0:ed1ba99f7b14 113 TFT.background(back5);
sinrab 0:ed1ba99f7b14 114 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 115 }
sinrab 0:ed1ba99f7b14 116 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 117 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 118 if (mline==12) {
sinrab 0:ed1ba99f7b14 119 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 120 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 121 } else {
sinrab 0:ed1ba99f7b14 122 TFT.background(back5);
sinrab 0:ed1ba99f7b14 123 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 124 }
sinrab 0:ed1ba99f7b14 125 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 126 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 127 if (mline==13) {
sinrab 0:ed1ba99f7b14 128 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 129 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 130 } else {
sinrab 0:ed1ba99f7b14 131 TFT.background(back5);
sinrab 0:ed1ba99f7b14 132 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 133 }
sinrab 0:ed1ba99f7b14 134 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 135 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 136 if (mline==14) {
sinrab 0:ed1ba99f7b14 137 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 138 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 139 } else {
sinrab 0:ed1ba99f7b14 140 TFT.background(back5);
sinrab 0:ed1ba99f7b14 141 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 142 }
sinrab 0:ed1ba99f7b14 143 printf("1-------------------------- \n"); // 1
sinrab 0:ed1ba99f7b14 144 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 145 if (mline==15) {
sinrab 0:ed1ba99f7b14 146 TFT.background(back5_i);
sinrab 0:ed1ba99f7b14 147 TFT.foreground(text5_i);
sinrab 0:ed1ba99f7b14 148 } else {
sinrab 0:ed1ba99f7b14 149 TFT.background(back5);
sinrab 0:ed1ba99f7b14 150 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 151 }
sinrab 0:ed1ba99f7b14 152 printf(" Exit \n");
sinrab 0:ed1ba99f7b14 153 //----------------------------------------------------------------
sinrab 0:ed1ba99f7b14 154 TFT.background(back5);
sinrab 0:ed1ba99f7b14 155 TFT.foreground(text5);
sinrab 0:ed1ba99f7b14 156 printf("--------------------------- \n");
sinrab 0:ed1ba99f7b14 157
sinrab 0:ed1ba99f7b14 158
sinrab 0:ed1ba99f7b14 159 }
sinrab 0:ed1ba99f7b14 160 //------------------------------------------------------------------------------------------------------------
sinrab 0:ed1ba99f7b14 161
sinrab 0:ed1ba99f7b14 162
sinrab 0:ed1ba99f7b14 163
sinrab 0:ed1ba99f7b14 164 //------------------------------------------------------------------
sinrab 0:ed1ba99f7b14 165 if (Screen==5 & one==0) { //экран 5 Настройки главная
sinrab 0:ed1ba99f7b14 166 if (buttonEnter==0) { // Enter
sinrab 0:ed1ba99f7b14 167 if (mline==1) Screen=1;
sinrab 0:ed1ba99f7b14 168 if (mline==2) Screen=1;
sinrab 0:ed1ba99f7b14 169 if (mline==3) Screen=1;
sinrab 0:ed1ba99f7b14 170 if (mline==4) Screen=1;
sinrab 0:ed1ba99f7b14 171 if (mline==5) Screen=1;
sinrab 0:ed1ba99f7b14 172 if (mline==6) Screen=1;
sinrab 0:ed1ba99f7b14 173 if (mline==7) Screen=1;
sinrab 0:ed1ba99f7b14 174 if (mline==8) Screen=1;
sinrab 0:ed1ba99f7b14 175 if (mline==9) Screen=1;
sinrab 0:ed1ba99f7b14 176 if (mline==10) Screen=1;
sinrab 0:ed1ba99f7b14 177 if (mline==11) Screen=1;
sinrab 0:ed1ba99f7b14 178 if (mline==12) Screen=1;
sinrab 0:ed1ba99f7b14 179 if (mline==13) Screen=1;
sinrab 0:ed1ba99f7b14 180 if (mline==14) Screen=1;
sinrab 0:ed1ba99f7b14 181 if (mline==15) Screen=1;
sinrab 0:ed1ba99f7b14 182 complit=0;
sinrab 0:ed1ba99f7b14 183 }
sinrab 0:ed1ba99f7b14 184
sinrab 0:ed1ba99f7b14 185 if (buttonUp==0) { // Up
sinrab 0:ed1ba99f7b14 186 mline--; //-
sinrab 0:ed1ba99f7b14 187 if (mline==0) mline=15;
sinrab 0:ed1ba99f7b14 188 }
sinrab 0:ed1ba99f7b14 189
sinrab 0:ed1ba99f7b14 190 if (buttonDown==0) { // Down
sinrab 0:ed1ba99f7b14 191 mline++; //+
sinrab 0:ed1ba99f7b14 192 if (mline==16) mline=1;
sinrab 0:ed1ba99f7b14 193 }
sinrab 0:ed1ba99f7b14 194 one=1;
sinrab 0:ed1ba99f7b14 195
sinrab 0:ed1ba99f7b14 196 }
sinrab 0:ed1ba99f7b14 197 //------------------------------------------------------------------