Chen Huan
/
UsartGPU
Stewart Platform GUI v1.0 Developed by C.H. Dep of EEA
GUI.cpp@1:4d9e8e7cbb4b, 2017-12-26 (annotated)
- Committer:
- heroistired
- Date:
- Tue Dec 26 05:58:46 2017 +0000
- Revision:
- 1:4d9e8e7cbb4b
- Parent:
- 0:2dfaf5bab3ee
GUI
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
heroistired | 0:2dfaf5bab3ee | 1 | #include "GUI.h" |
heroistired | 0:2dfaf5bab3ee | 2 | |
heroistired | 0:2dfaf5bab3ee | 3 | void RefreshGUI(Serial *Screen, float Servo1, float Servo2, float Servo3, float Servo4, float Servo5, float Servo6, float Bar1, float Bar2, float Bar3, float Bar4, float Bar5, float Bar6) |
heroistired | 0:2dfaf5bab3ee | 4 | { |
heroistired | 0:2dfaf5bab3ee | 5 | SXY(Screen,8,35); |
heroistired | 0:2dfaf5bab3ee | 6 | DS16(Screen,90,20,float2string(Servo1),3); |
heroistired | 0:2dfaf5bab3ee | 7 | DS16(Screen,90,40,float2string(Servo2),3); |
heroistired | 0:2dfaf5bab3ee | 8 | DS16(Screen,90,60,float2string(Servo3),3); |
heroistired | 0:2dfaf5bab3ee | 9 | DS16(Screen,90,80,float2string(Servo4),3); |
heroistired | 0:2dfaf5bab3ee | 10 | DS16(Screen,90,100,float2string(Servo5),3); |
heroistired | 0:2dfaf5bab3ee | 11 | DS16(Screen,90,120,float2string(Servo6),3); |
heroistired | 0:2dfaf5bab3ee | 12 | |
heroistired | 0:2dfaf5bab3ee | 13 | SXY(Screen,170,35); |
heroistired | 0:2dfaf5bab3ee | 14 | DS16(Screen,90,20,float2string(Bar1),3); |
heroistired | 0:2dfaf5bab3ee | 15 | DS16(Screen,90,40,float2string(Bar2),3); |
heroistired | 0:2dfaf5bab3ee | 16 | DS16(Screen,90,60,float2string(Bar3),3); |
heroistired | 0:2dfaf5bab3ee | 17 | DS16(Screen,90,80,float2string(Bar4),3); |
heroistired | 0:2dfaf5bab3ee | 18 | DS16(Screen,90,100,float2string(Bar5),3); |
heroistired | 0:2dfaf5bab3ee | 19 | DS16(Screen,90,120,float2string(Bar6),3); |
heroistired | 0:2dfaf5bab3ee | 20 | |
heroistired | 0:2dfaf5bab3ee | 21 | SXY(Screen,0,0); |
heroistired | 0:2dfaf5bab3ee | 22 | ExecuteInstruction(Screen); |
heroistired | 0:2dfaf5bab3ee | 23 | wait(0.1); |
heroistired | 0:2dfaf5bab3ee | 24 | } |
heroistired | 0:2dfaf5bab3ee | 25 | |
heroistired | 0:2dfaf5bab3ee | 26 | void InitGUI(Serial *Screen) |
heroistired | 0:2dfaf5bab3ee | 27 | { |
heroistired | 0:2dfaf5bab3ee | 28 | SXY(Screen,0,0); |
heroistired | 0:2dfaf5bab3ee | 29 | CLS(Screen,0); |
heroistired | 0:2dfaf5bab3ee | 30 | DS24(Screen,30,2,"Stewart Platform GUI v1.0",12); |
heroistired | 0:2dfaf5bab3ee | 31 | PL(Screen,0,28,319,28,15); |
heroistired | 0:2dfaf5bab3ee | 32 | PL(Screen,0,29,319,29,15); |
heroistired | 0:2dfaf5bab3ee | 33 | PL(Screen,159,35,159,190,15); |
heroistired | 0:2dfaf5bab3ee | 34 | PL(Screen,160,35,160,190,15); |
heroistired | 0:2dfaf5bab3ee | 35 | SXY(Screen,8,35); |
heroistired | 0:2dfaf5bab3ee | 36 | DS16(Screen,30,0,"Servo Angle",2); |
heroistired | 0:2dfaf5bab3ee | 37 | DS16(Screen,0,20,"Servo1",2); |
heroistired | 0:2dfaf5bab3ee | 38 | DS16(Screen,0,40,"Servo2",2); |
heroistired | 0:2dfaf5bab3ee | 39 | DS16(Screen,0,60,"Servo3",2); |
heroistired | 0:2dfaf5bab3ee | 40 | DS16(Screen,0,80,"Servo4",2); |
heroistired | 0:2dfaf5bab3ee | 41 | DS16(Screen,0,100,"Servo5",2); |
heroistired | 0:2dfaf5bab3ee | 42 | DS16(Screen,0,120,"Servo6",2); |
heroistired | 0:2dfaf5bab3ee | 43 | DS16(Screen,5,140,"[For structure I]",2); |
heroistired | 0:2dfaf5bab3ee | 44 | |
heroistired | 0:2dfaf5bab3ee | 45 | SXY(Screen,170,35); |
heroistired | 0:2dfaf5bab3ee | 46 | DS16(Screen,35,0,"Bar Length",2); |
heroistired | 0:2dfaf5bab3ee | 47 | DS16(Screen,0,20,"Bar1",2); |
heroistired | 0:2dfaf5bab3ee | 48 | DS16(Screen,0,40,"Bar2",2); |
heroistired | 0:2dfaf5bab3ee | 49 | DS16(Screen,0,60,"Bar3",2); |
heroistired | 0:2dfaf5bab3ee | 50 | DS16(Screen,0,80,"Bar4",2); |
heroistired | 0:2dfaf5bab3ee | 51 | DS16(Screen,0,100,"Bar5",2); |
heroistired | 0:2dfaf5bab3ee | 52 | DS16(Screen,0,120,"Bar6",2); |
heroistired | 0:2dfaf5bab3ee | 53 | DS16(Screen,2,140,"[For structure II]",2); |
heroistired | 0:2dfaf5bab3ee | 54 | SXY(Screen,0,0); |
heroistired | 0:2dfaf5bab3ee | 55 | PL(Screen,0,195,319,195,15); |
heroistired | 0:2dfaf5bab3ee | 56 | PL(Screen,0,196,319,196,15); |
heroistired | 0:2dfaf5bab3ee | 57 | DS24(Screen,100,198,"THU iCenter",12); |
heroistired | 0:2dfaf5bab3ee | 58 | DS16(Screen,50,222,"Developed by C.H. Dep of EEA",2); |
heroistired | 0:2dfaf5bab3ee | 59 | SXY(Screen,0,0); |
heroistired | 0:2dfaf5bab3ee | 60 | ExecuteInstruction(Screen); |
heroistired | 0:2dfaf5bab3ee | 61 | wait(0.2); |
heroistired | 0:2dfaf5bab3ee | 62 | } |
heroistired | 0:2dfaf5bab3ee | 63 | |
heroistired | 0:2dfaf5bab3ee | 64 | void DS16(Serial *Screen, int x, int y, string str, int color) |
heroistired | 0:2dfaf5bab3ee | 65 | { |
heroistired | 0:2dfaf5bab3ee | 66 | string temp = "DS16("+int2string(x)+","+int2string(y)+",'"+str+"',"+int2string(color)+");"; |
heroistired | 0:2dfaf5bab3ee | 67 | Screen->printf(temp.c_str()); |
heroistired | 0:2dfaf5bab3ee | 68 | } |
heroistired | 0:2dfaf5bab3ee | 69 | |
heroistired | 0:2dfaf5bab3ee | 70 | void DS24(Serial *Screen, int x, int y, string str, int color) |
heroistired | 0:2dfaf5bab3ee | 71 | { |
heroistired | 0:2dfaf5bab3ee | 72 | string temp = "DS24("+int2string(x)+","+int2string(y)+",'"+str+"',"+int2string(color)+");"; |
heroistired | 0:2dfaf5bab3ee | 73 | Screen->printf(temp.c_str()); |
heroistired | 0:2dfaf5bab3ee | 74 | } |
heroistired | 0:2dfaf5bab3ee | 75 | |
heroistired | 0:2dfaf5bab3ee | 76 | void SXY(Serial *Screen, int x, int y) |
heroistired | 0:2dfaf5bab3ee | 77 | { |
heroistired | 0:2dfaf5bab3ee | 78 | string temp = "SXY("+int2string(x)+","+int2string(y)+");"; |
heroistired | 0:2dfaf5bab3ee | 79 | Screen->printf(temp.c_str()); |
heroistired | 0:2dfaf5bab3ee | 80 | } |
heroistired | 0:2dfaf5bab3ee | 81 | |
heroistired | 0:2dfaf5bab3ee | 82 | void CLS(Serial *Screen, int color) |
heroistired | 0:2dfaf5bab3ee | 83 | { |
heroistired | 0:2dfaf5bab3ee | 84 | string temp = "CLS("+int2string(color)+");"; |
heroistired | 0:2dfaf5bab3ee | 85 | Screen->printf(temp.c_str()); |
heroistired | 0:2dfaf5bab3ee | 86 | } |
heroistired | 0:2dfaf5bab3ee | 87 | |
heroistired | 0:2dfaf5bab3ee | 88 | void PL(Serial *Screen, int x1, int y1, int x2, int y2, int color) |
heroistired | 0:2dfaf5bab3ee | 89 | { |
heroistired | 0:2dfaf5bab3ee | 90 | string temp = "PL("+int2string(x1)+","+int2string(y1)+","+int2string(x2)+","+int2string(y2)+","+int2string(color)+");"; |
heroistired | 0:2dfaf5bab3ee | 91 | Screen->printf(temp.c_str()); |
heroistired | 0:2dfaf5bab3ee | 92 | } |
heroistired | 0:2dfaf5bab3ee | 93 | |
heroistired | 0:2dfaf5bab3ee | 94 | void ExecuteInstruction(Serial *Screen) |
heroistired | 0:2dfaf5bab3ee | 95 | { |
heroistired | 0:2dfaf5bab3ee | 96 | Screen->printf("\r\n"); |
heroistired | 0:2dfaf5bab3ee | 97 | } |
heroistired | 0:2dfaf5bab3ee | 98 | |
heroistired | 0:2dfaf5bab3ee | 99 | string int2string(int x) |
heroistired | 0:2dfaf5bab3ee | 100 | { |
heroistired | 0:2dfaf5bab3ee | 101 | stringstream ss; |
heroistired | 0:2dfaf5bab3ee | 102 | ss << x; |
heroistired | 0:2dfaf5bab3ee | 103 | string str = ss.str(); |
heroistired | 0:2dfaf5bab3ee | 104 | return str; |
heroistired | 0:2dfaf5bab3ee | 105 | } |
heroistired | 0:2dfaf5bab3ee | 106 | |
heroistired | 0:2dfaf5bab3ee | 107 | string float2string(float x) |
heroistired | 0:2dfaf5bab3ee | 108 | { |
heroistired | 0:2dfaf5bab3ee | 109 | int xx = x * 100; |
heroistired | 0:2dfaf5bab3ee | 110 | float xxx = (float)xx / 100; |
heroistired | 0:2dfaf5bab3ee | 111 | stringstream ss; |
heroistired | 0:2dfaf5bab3ee | 112 | ss << xxx; |
heroistired | 0:2dfaf5bab3ee | 113 | string str = ss.str() + ' '; |
heroistired | 0:2dfaf5bab3ee | 114 | return str; |
heroistired | 0:2dfaf5bab3ee | 115 | } |
heroistired | 0:2dfaf5bab3ee | 116 | |
heroistired | 0:2dfaf5bab3ee | 117 |