Cool Fancy Terminal

Dependencies:   Terminal mbed

Fork of Terminal_HelloWorld by Simon Ford

Committer:
madmonkeyman82
Date:
Thu Oct 15 18:51:22 2015 +0000
Revision:
4:14bd961881ff
Parent:
3:35b0711f1832
Denne er kul... m? testes... bruk Coolterm eller puTTY

Who changed what in which revision?

UserRevisionLine numberNew contents of line
simon 0:93888862261d 1 #include "mbed.h"
simon 0:93888862261d 2 #include "Terminal.h"
madmonkeyman82 4:14bd961881ff 3 #include "variables.h"
simon 0:93888862261d 4
simon 0:93888862261d 5 Terminal term(USBTX, USBRX); // tx, rx
simon 0:93888862261d 6
madmonkeyman82 4:14bd961881ff 7
madmonkeyman82 4:14bd961881ff 8 //Prototypes
madmonkeyman82 4:14bd961881ff 9 void Beregn(void);
madmonkeyman82 4:14bd961881ff 10 void FlaskeRegistrering(int);
madmonkeyman82 4:14bd961881ff 11 void utskriftskjerm(void);
madmonkeyman82 4:14bd961881ff 12 void utskriftskjermV2(void);
madmonkeyman82 4:14bd961881ff 13 void UpdateTerminal(void);
madmonkeyman82 4:14bd961881ff 14
simon 0:93888862261d 15 int main() {
madmonkeyman82 4:14bd961881ff 16
madmonkeyman82 4:14bd961881ff 17 /*
madmonkeyman82 4:14bd961881ff 18 1. Type 1: 1/3 liter
madmonkeyman82 4:14bd961881ff 19 2. Type 2: 1/2 liter
madmonkeyman82 4:14bd961881ff 20 3. Type 3: 1 liter
madmonkeyman82 4:14bd961881ff 21 4. Type 4: 1 1/2 liter
madmonkeyman82 4:14bd961881ff 22 5. Type 5: Ukurante flasker
madmonkeyman82 4:14bd961881ff 23 */
madmonkeyman82 4:14bd961881ff 24
madmonkeyman82 4:14bd961881ff 25
madmonkeyman82 4:14bd961881ff 26 char cValg = -1;
madmonkeyman82 2:89b263d1a399 27 term.cls();
madmonkeyman82 4:14bd961881ff 28 term.locate(MENUPOSX, MENUPOSY);
madmonkeyman82 4:14bd961881ff 29 UpdateTerminal();
madmonkeyman82 4:14bd961881ff 30 //term.printf("Velkommen skriv inn flaske type etterfolg av enter tast\n");
madmonkeyman82 4:14bd961881ff 31 while (1)
madmonkeyman82 4:14bd961881ff 32 {
madmonkeyman82 4:14bd961881ff 33 //while (iValg != 0)
madmonkeyman82 4:14bd961881ff 34 //{
madmonkeyman82 4:14bd961881ff 35
madmonkeyman82 4:14bd961881ff 36 // scanf("%d", &iValg);
madmonkeyman82 4:14bd961881ff 37 cValg = getchar();
madmonkeyman82 4:14bd961881ff 38 if (cValg <= 57 || cValg >= 48)
madmonkeyman82 4:14bd961881ff 39 {
madmonkeyman82 4:14bd961881ff 40 if (cValg == 49) FlaskeRegistrering(0);
madmonkeyman82 4:14bd961881ff 41 else if (cValg == 50) FlaskeRegistrering(1);
madmonkeyman82 4:14bd961881ff 42 else if (cValg == 51) FlaskeRegistrering(2);
madmonkeyman82 4:14bd961881ff 43 else if (cValg == 52) FlaskeRegistrering(3);
madmonkeyman82 4:14bd961881ff 44 else if (cValg != 48) FlaskeRegistrering(4);
madmonkeyman82 4:14bd961881ff 45 }
madmonkeyman82 4:14bd961881ff 46 else
madmonkeyman82 4:14bd961881ff 47 {
madmonkeyman82 4:14bd961881ff 48 //printf("ugyldig inntasting\n");
madmonkeyman82 4:14bd961881ff 49 }
madmonkeyman82 4:14bd961881ff 50 //}
madmonkeyman82 4:14bd961881ff 51 wait(0.03);
madmonkeyman82 2:89b263d1a399 52 }
simon 0:93888862261d 53 }
madmonkeyman82 4:14bd961881ff 54
madmonkeyman82 4:14bd961881ff 55 void Beregn()
madmonkeyman82 4:14bd961881ff 56 {
madmonkeyman82 4:14bd961881ff 57 char *ptr_antall_type = &menu[66 * 3 + 28];
madmonkeyman82 4:14bd961881ff 58 char *ptr_kr_type = ptr_antall_type + 10;
madmonkeyman82 4:14bd961881ff 59 char *ptr_total;
madmonkeyman82 4:14bd961881ff 60 int iTotalFlasker = 0;
madmonkeyman82 4:14bd961881ff 61 float fTotalFlaskePris = 0.00;
madmonkeyman82 4:14bd961881ff 62 char buffer[15];
madmonkeyman82 4:14bd961881ff 63 int iKr_Offset = 66;
madmonkeyman82 4:14bd961881ff 64
madmonkeyman82 4:14bd961881ff 65 for (int i = 0; i < TYPES; i++, ptr_antall_type += iKr_Offset, ptr_kr_type += iKr_Offset)
madmonkeyman82 4:14bd961881ff 66 {
madmonkeyman82 4:14bd961881ff 67 iTotalFlasker += aiFlaskeType[i];
madmonkeyman82 4:14bd961881ff 68 fTotalFlaskePris += aiFlaskeType[i] * aiFlaskeTypePrice[i];
madmonkeyman82 4:14bd961881ff 69
madmonkeyman82 4:14bd961881ff 70 if (i <= 3)
madmonkeyman82 4:14bd961881ff 71 {
madmonkeyman82 4:14bd961881ff 72 //Flaske antall
madmonkeyman82 4:14bd961881ff 73 sprintf(buffer, "%2d", aiFlaskeType[i]);
madmonkeyman82 4:14bd961881ff 74 memcpy(ptr_antall_type, buffer, 2);
madmonkeyman82 4:14bd961881ff 75 //Flaske pris
madmonkeyman82 4:14bd961881ff 76 sprintf(buffer, "%6.2f", (aiFlaskeType[i] * aiFlaskeTypePrice[i]));
madmonkeyman82 4:14bd961881ff 77 memcpy(ptr_kr_type, buffer, 6);
madmonkeyman82 4:14bd961881ff 78
madmonkeyman82 4:14bd961881ff 79 }
madmonkeyman82 4:14bd961881ff 80 else
madmonkeyman82 4:14bd961881ff 81 {
madmonkeyman82 4:14bd961881ff 82 sprintf(buffer, "%2d", aiFlaskeType[i]);
madmonkeyman82 4:14bd961881ff 83 memcpy(ptr_antall_type, buffer, 2);
madmonkeyman82 4:14bd961881ff 84 }
madmonkeyman82 4:14bd961881ff 85 }
madmonkeyman82 4:14bd961881ff 86
madmonkeyman82 4:14bd961881ff 87 ptr_total = ptr_antall_type + (46);
madmonkeyman82 4:14bd961881ff 88
madmonkeyman82 4:14bd961881ff 89 //Flaske totoal antall
madmonkeyman82 4:14bd961881ff 90 sprintf(buffer, "%3d", iTotalFlasker);
madmonkeyman82 4:14bd961881ff 91 memcpy(ptr_total, buffer, 3);
madmonkeyman82 4:14bd961881ff 92 ptr_total += 19;
madmonkeyman82 4:14bd961881ff 93 sprintf(buffer, "%6.2f", fTotalFlaskePris);
madmonkeyman82 4:14bd961881ff 94 memcpy(ptr_total, buffer, 6);
madmonkeyman82 4:14bd961881ff 95 }
madmonkeyman82 4:14bd961881ff 96
madmonkeyman82 4:14bd961881ff 97 void FlaskeRegistrering(int FlaskeType)
madmonkeyman82 4:14bd961881ff 98 {
madmonkeyman82 4:14bd961881ff 99 aiFlaskeType[FlaskeType]++;
madmonkeyman82 4:14bd961881ff 100 UpdateTerminal();
madmonkeyman82 4:14bd961881ff 101 }
madmonkeyman82 4:14bd961881ff 102
madmonkeyman82 4:14bd961881ff 103 void UpdateTerminal()
madmonkeyman82 4:14bd961881ff 104 {
madmonkeyman82 4:14bd961881ff 105 Beregn();
madmonkeyman82 4:14bd961881ff 106 utskriftskjermV2();
madmonkeyman82 4:14bd961881ff 107 }
madmonkeyman82 4:14bd961881ff 108
madmonkeyman82 4:14bd961881ff 109 void utskriftskjermV2()
madmonkeyman82 4:14bd961881ff 110 {
madmonkeyman82 4:14bd961881ff 111 char *ptr_menu = menu;
madmonkeyman82 4:14bd961881ff 112 term.cls();
madmonkeyman82 4:14bd961881ff 113 term.locate(MENUPOSX, MENUPOSY);
madmonkeyman82 4:14bd961881ff 114 term.foreground(0xFF0000);
madmonkeyman82 4:14bd961881ff 115
madmonkeyman82 4:14bd961881ff 116 for (int i = 1; i <= MENULINES; i++)
madmonkeyman82 4:14bd961881ff 117 {
madmonkeyman82 4:14bd961881ff 118 for (int j = 1; j <= MENUWIDTH; j++, ptr_menu++)
madmonkeyman82 4:14bd961881ff 119 {
madmonkeyman82 4:14bd961881ff 120 term.printf("%c", *ptr_menu);
madmonkeyman82 4:14bd961881ff 121
madmonkeyman82 4:14bd961881ff 122 }
madmonkeyman82 4:14bd961881ff 123 term.locate(MENUPOSX, i + MENUPOSY);
madmonkeyman82 4:14bd961881ff 124 //term.printf("\n");
madmonkeyman82 4:14bd961881ff 125 }
madmonkeyman82 4:14bd961881ff 126 //term.printf("\n");
madmonkeyman82 4:14bd961881ff 127 }