Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: BSP_DISCO_F746NG F746_GUI LCD_DISCO_F746NG SDFileSystem TS_DISCO_F746NG ResistiveTouchController Map CYS8218Controller MedianFilter
Screens/CalibrateScreen.cpp@35:6baa558d3b86, 2016-10-03 (annotated)
- Committer:
 - Kerneels Bezuidenhout 
 - Date:
 - Mon Oct 03 17:12:39 2016 +0200
 - Revision:
 - 35:6baa558d3b86
 - Parent:
 - 34:0b308a399f72
 - Child:
 - 37:93c7563f2078
 
Testing calibration
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 1 | #include "CalibrateScreen.hpp" | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 2 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 3 | CalibrateScreen::CalibrateScreen(int *nextScreen, int *ballOnPlate, bool *calStarted, int *calPoint, float *calHeldTime) : | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 4 | Screen(), | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 5 | _lbTitle( SCREEN_W/2, 0, "Calibrate", Label::CENTER, Font24), | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 6 | _btBack( 0, SCREEN_H-30, 100, 30, "Back"), | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 7 | _lbMessage( SCREEN_W/2, SCREEN_H/2-10, "Please remove ball from plate", Label::CENTER, Font20) | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 8 | { | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 9 | _nextScreen = nextScreen; | 
| Kerneels Bezuidenhout  | 
34:0b308a399f72 | 10 | _ballOnPlate = ballOnPlate; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 11 | _calStarted = calStarted; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 12 | _calHeldTime = calHeldTime; | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 13 | } | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 14 | |
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 15 | void CalibrateScreen::Draw() | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 16 | { | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 17 | Clear(); | 
| Kerneels Bezuidenhout  | 
34:0b308a399f72 | 18 | |
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 19 | _lbTitle.Draw(); | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 20 | _btBack.Draw(); | 
| Kerneels Bezuidenhout  | 
34:0b308a399f72 | 21 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 22 | DisplayMessage(); | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 23 | } | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 24 | |
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 25 | void CalibrateScreen::Process() | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 26 | { | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 27 | if( _btBack.Touched() ) | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 28 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 29 | *_calStarted = false; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 30 | *_calPoint = 0; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 31 | *_nextScreen = MAIN_SETTINGS_SCREEN; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 32 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 33 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 34 | DisplayMessage(); | 
| Kerneels Bezuidenhout  | 
32:d490f8ca6d2a | 35 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 36 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 37 | void CalibrateScreen::DisplayMessage() | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 38 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 39 | if( *_calStarted) | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 40 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 41 | if( *_ballOnPlate ) | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 42 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 43 | float _tempHeldTime = 5; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 44 | _tempHeldTime -= *_heldTime; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 45 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 46 | if( _tempHeldTime <= 0 ) | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 47 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 48 | sprintf(message, "Release"); | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 49 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 50 | else | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 51 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 52 | sprintf(message, "%.0f", _tempHeldTime); | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 53 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 54 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 55 | else | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 56 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 57 | sprintf(message, "Touch and hold position %d", *_pointToMeasure); | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 58 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 59 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 60 | else | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 61 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 62 | if( *_ballOnPlate) | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 63 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 64 | sprintf(_message, "Please remove ball from plate"); | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 65 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 66 | else | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 67 | { | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 68 | *_calStarted = true; | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 69 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 70 | } | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 71 | |
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 72 | _lbMessage.Draw(_message); | 
| Kerneels Bezuidenhout  | 
35:6baa558d3b86 | 73 | } |