My final year project

Dependencies:   BSP_DISCO_F746NG F746_GUI LCD_DISCO_F746NG SDFileSystem TS_DISCO_F746NG ResistiveTouchController Map CYS8218Controller MedianFilter

Committer:
Generic
Date:
Sat Oct 01 20:51:13 2016 +0000
Revision:
2:5fded6444350
Parent:
1:43fb2d03c36f
Child:
5:383f1108187d
Fixed compiler errors

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kerneels Bezuidenhout 1:43fb2d03c36f 1 #include "mbed.h"
Kerneels Bezuidenhout 1:43fb2d03c36f 2 #include "Screens.hpp"
Kerneels Bezuidenhout 1:43fb2d03c36f 3
Kerneels Bezuidenhout 1:43fb2d03c36f 4
Kerneels Bezuidenhout 1:43fb2d03c36f 5 void GUIThread();
Kerneels Bezuidenhout 1:43fb2d03c36f 6 void Init();
Kerneels Bezuidenhout 1:43fb2d03c36f 7
Kerneels Bezuidenhout 1:43fb2d03c36f 8 int currentScreen = 0;
Kerneels Bezuidenhout 1:43fb2d03c36f 9 int nextScreen = 0;
Kerneels Bezuidenhout 1:43fb2d03c36f 10 Thread guiThread;
Kerneels Bezuidenhout 1:43fb2d03c36f 11 Screen *activeScreen = NULL;
Kerneels Bezuidenhout 1:43fb2d03c36f 12
Kerneels Bezuidenhout 1:43fb2d03c36f 13 int main()
Kerneels Bezuidenhout 1:43fb2d03c36f 14 {
Kerneels Bezuidenhout 1:43fb2d03c36f 15 Init();
Kerneels Bezuidenhout 1:43fb2d03c36f 16
Kerneels Bezuidenhout 1:43fb2d03c36f 17 while(1)
Kerneels Bezuidenhout 1:43fb2d03c36f 18 {
Kerneels Bezuidenhout 1:43fb2d03c36f 19 // TODO Add hardware logic
Kerneels Bezuidenhout 1:43fb2d03c36f 20 }
Kerneels Bezuidenhout 1:43fb2d03c36f 21 }
Kerneels Bezuidenhout 1:43fb2d03c36f 22
Kerneels Bezuidenhout 1:43fb2d03c36f 23 void GUIThread()
Kerneels Bezuidenhout 1:43fb2d03c36f 24 {
Kerneels Bezuidenhout 1:43fb2d03c36f 25 while(1)
Kerneels Bezuidenhout 1:43fb2d03c36f 26 {
Kerneels Bezuidenhout 1:43fb2d03c36f 27 if( nextScreen != currentScreen )
Kerneels Bezuidenhout 1:43fb2d03c36f 28 {
Kerneels Bezuidenhout 1:43fb2d03c36f 29 if( activeScreen != NULL)
Kerneels Bezuidenhout 1:43fb2d03c36f 30 delete activeScreen;
Kerneels Bezuidenhout 1:43fb2d03c36f 31
Kerneels Bezuidenhout 1:43fb2d03c36f 32 switch (nextScreen)
Kerneels Bezuidenhout 1:43fb2d03c36f 33 {
Generic 2:5fded6444350 34 case Screen::MAIN_MENU_SCREEN:
Kerneels Bezuidenhout 1:43fb2d03c36f 35 activeScreen = new MainMenuScreen(&nextScreen);
Kerneels Bezuidenhout 1:43fb2d03c36f 36 break;
Kerneels Bezuidenhout 1:43fb2d03c36f 37 }
Kerneels Bezuidenhout 1:43fb2d03c36f 38
Kerneels Bezuidenhout 1:43fb2d03c36f 39 activeScreen->Draw();
Kerneels Bezuidenhout 1:43fb2d03c36f 40 Thread::wait(200);
Kerneels Bezuidenhout 1:43fb2d03c36f 41 }
Kerneels Bezuidenhout 1:43fb2d03c36f 42
Kerneels Bezuidenhout 1:43fb2d03c36f 43 activeScreen->Process();
Kerneels Bezuidenhout 1:43fb2d03c36f 44
Kerneels Bezuidenhout 1:43fb2d03c36f 45 Thread::wait(20);
Kerneels Bezuidenhout 1:43fb2d03c36f 46 }
Kerneels Bezuidenhout 1:43fb2d03c36f 47 }
Kerneels Bezuidenhout 1:43fb2d03c36f 48
Kerneels Bezuidenhout 1:43fb2d03c36f 49 void Init()
Kerneels Bezuidenhout 1:43fb2d03c36f 50 {
Generic 2:5fded6444350 51 nextScreen = Screen::MAIN_MENU_SCREEN;
Kerneels Bezuidenhout 1:43fb2d03c36f 52 guiThread.start(GUIThread);
Kerneels Bezuidenhout 1:43fb2d03c36f 53 }