Cool Fancy Terminal
Fork of Terminal_HelloWorld by
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 #include "Terminal.h" 00003 #include "variables.h" 00004 00005 Terminal term(USBTX, USBRX); // tx, rx 00006 00007 00008 //Prototypes 00009 void Beregn(void); 00010 void FlaskeRegistrering(int); 00011 void utskriftskjerm(void); 00012 void utskriftskjermV2(void); 00013 void UpdateTerminal(void); 00014 00015 int main() { 00016 00017 /* 00018 1. Type 1: 1/3 liter 00019 2. Type 2: 1/2 liter 00020 3. Type 3: 1 liter 00021 4. Type 4: 1 1/2 liter 00022 5. Type 5: Ukurante flasker 00023 */ 00024 00025 00026 char cValg = -1; 00027 term.cls(); 00028 term.locate(MENUPOSX, MENUPOSY); 00029 UpdateTerminal(); 00030 //term.printf("Velkommen skriv inn flaske type etterfolg av enter tast\n"); 00031 while (1) 00032 { 00033 //while (iValg != 0) 00034 //{ 00035 00036 // scanf("%d", &iValg); 00037 cValg = getchar(); 00038 if (cValg <= 57 || cValg >= 48) 00039 { 00040 if (cValg == 49) FlaskeRegistrering(0); 00041 else if (cValg == 50) FlaskeRegistrering(1); 00042 else if (cValg == 51) FlaskeRegistrering(2); 00043 else if (cValg == 52) FlaskeRegistrering(3); 00044 else if (cValg != 48) FlaskeRegistrering(4); 00045 } 00046 else 00047 { 00048 //printf("ugyldig inntasting\n"); 00049 } 00050 //} 00051 wait(0.03); 00052 } 00053 } 00054 00055 void Beregn() 00056 { 00057 char *ptr_antall_type = &menu[66 * 3 + 28]; 00058 char *ptr_kr_type = ptr_antall_type + 10; 00059 char *ptr_total; 00060 int iTotalFlasker = 0; 00061 float fTotalFlaskePris = 0.00; 00062 char buffer[15]; 00063 int iKr_Offset = 66; 00064 00065 for (int i = 0; i < TYPES; i++, ptr_antall_type += iKr_Offset, ptr_kr_type += iKr_Offset) 00066 { 00067 iTotalFlasker += aiFlaskeType[i]; 00068 fTotalFlaskePris += aiFlaskeType[i] * aiFlaskeTypePrice[i]; 00069 00070 if (i <= 3) 00071 { 00072 //Flaske antall 00073 sprintf(buffer, "%2d", aiFlaskeType[i]); 00074 memcpy(ptr_antall_type, buffer, 2); 00075 //Flaske pris 00076 sprintf(buffer, "%6.2f", (aiFlaskeType[i] * aiFlaskeTypePrice[i])); 00077 memcpy(ptr_kr_type, buffer, 6); 00078 00079 } 00080 else 00081 { 00082 sprintf(buffer, "%2d", aiFlaskeType[i]); 00083 memcpy(ptr_antall_type, buffer, 2); 00084 } 00085 } 00086 00087 ptr_total = ptr_antall_type + (46); 00088 00089 //Flaske totoal antall 00090 sprintf(buffer, "%3d", iTotalFlasker); 00091 memcpy(ptr_total, buffer, 3); 00092 ptr_total += 19; 00093 sprintf(buffer, "%6.2f", fTotalFlaskePris); 00094 memcpy(ptr_total, buffer, 6); 00095 } 00096 00097 void FlaskeRegistrering(int FlaskeType) 00098 { 00099 aiFlaskeType[FlaskeType]++; 00100 UpdateTerminal(); 00101 } 00102 00103 void UpdateTerminal() 00104 { 00105 Beregn(); 00106 utskriftskjermV2(); 00107 } 00108 00109 void utskriftskjermV2() 00110 { 00111 char *ptr_menu = menu; 00112 term.cls(); 00113 term.locate(MENUPOSX, MENUPOSY); 00114 term.foreground(0xFF0000); 00115 00116 for (int i = 1; i <= MENULINES; i++) 00117 { 00118 for (int j = 1; j <= MENUWIDTH; j++, ptr_menu++) 00119 { 00120 term.printf("%c", *ptr_menu); 00121 00122 } 00123 term.locate(MENUPOSX, i + MENUPOSY); 00124 //term.printf("\n"); 00125 } 00126 //term.printf("\n"); 00127 }
Generated on Thu Jul 21 2022 15:41:28 by
1.7.2
