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: mbed Voltimetro_V2
main.cpp@0:fc0918bb465b, 2020-03-31 (annotated)
- Committer:
- henriquer
- Date:
- Tue Mar 31 17:41:33 2020 +0000
- Revision:
- 0:fc0918bb465b
- Child:
- 1:056009a99b8c
IHM- JOYSTICK-LCD
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| henriquer | 0:fc0918bb465b | 1 | |
| henriquer | 0:fc0918bb465b | 2 | |
| henriquer | 0:fc0918bb465b | 3 | #include "TextLCD.h" |
| henriquer | 0:fc0918bb465b | 4 | #include "mbed.h" |
| henriquer | 0:fc0918bb465b | 5 | |
| henriquer | 0:fc0918bb465b | 6 | AnalogIn AXIS_X(A1); |
| henriquer | 0:fc0918bb465b | 7 | AnalogIn AXIS_Y(A2);; |
| henriquer | 0:fc0918bb465b | 8 | TextLCD lcd(D8, D9, D4, D5, D6, D7); |
| henriquer | 0:fc0918bb465b | 9 | Serial pc(USBTX, USBRX); |
| henriquer | 0:fc0918bb465b | 10 | |
| henriquer | 0:fc0918bb465b | 11 | |
| henriquer | 0:fc0918bb465b | 12 | int main() |
| henriquer | 0:fc0918bb465b | 13 | { |
| henriquer | 0:fc0918bb465b | 14 | |
| henriquer | 0:fc0918bb465b | 15 | float VAR_X = 0.0f, VAR_Y = 0.0f; |
| henriquer | 0:fc0918bb465b | 16 | |
| henriquer | 0:fc0918bb465b | 17 | |
| henriquer | 0:fc0918bb465b | 18 | lcd.setBacklight(TextLCD::LightOn); // Habilita a função Backlight |
| henriquer | 0:fc0918bb465b | 19 | |
| henriquer | 0:fc0918bb465b | 20 | |
| henriquer | 0:fc0918bb465b | 21 | |
| henriquer | 0:fc0918bb465b | 22 | while(1) |
| henriquer | 0:fc0918bb465b | 23 | |
| henriquer | 0:fc0918bb465b | 24 | { |
| henriquer | 0:fc0918bb465b | 25 | |
| henriquer | 0:fc0918bb465b | 26 | VAR_X = AXIS_X.read(); |
| henriquer | 0:fc0918bb465b | 27 | VAR_Y = AXIS_Y.read(); |
| henriquer | 0:fc0918bb465b | 28 | |
| henriquer | 0:fc0918bb465b | 29 | lcd.setAddress(2,0); // Informa a posição que a mensagem será exibida no display LCD |
| henriquer | 0:fc0918bb465b | 30 | |
| henriquer | 0:fc0918bb465b | 31 | lcd.printf("!!JOYSTICK!!"); |
| henriquer | 0:fc0918bb465b | 32 | pc.printf("\n%1.2f ",VAR_X); |
| henriquer | 0:fc0918bb465b | 33 | pc.printf("\n%1.2f ",VAR_Y); |
| henriquer | 0:fc0918bb465b | 34 | |
| henriquer | 0:fc0918bb465b | 35 | |
| henriquer | 0:fc0918bb465b | 36 | if(VAL_X > 0.40f) { |
| henriquer | 0:fc0918bb465b | 37 | |
| henriquer | 0:fc0918bb465b | 38 | lcd.setAddress(0,1); |
| henriquer | 0:fc0918bb465b | 39 | lcd.printf("Posicao:"); |
| henriquer | 0:fc0918bb465b | 40 | lcd.setAddress(9,1); |
| henriquer | 0:fc0918bb465b | 41 | lcd.printf("RIGHT"); |
| henriquer | 0:fc0918bb465b | 42 | pc.printf("\n%1.2f ",VAR_X); |
| henriquer | 0:fc0918bb465b | 43 | wait(2); |
| henriquer | 0:fc0918bb465b | 44 | lcd.cls(); |
| henriquer | 0:fc0918bb465b | 45 | } |
| henriquer | 0:fc0918bb465b | 46 | |
| henriquer | 0:fc0918bb465b | 47 | |
| henriquer | 0:fc0918bb465b | 48 | if(VAL_X < 0.3f) { |
| henriquer | 0:fc0918bb465b | 49 | |
| henriquer | 0:fc0918bb465b | 50 | |
| henriquer | 0:fc0918bb465b | 51 | lcd.setAddress(0,1); |
| henriquer | 0:fc0918bb465b | 52 | lcd.printf("Posicao:"); |
| henriquer | 0:fc0918bb465b | 53 | lcd.setAddress(9,1); |
| henriquer | 0:fc0918bb465b | 54 | lcd.printf("LEFT"); |
| henriquer | 0:fc0918bb465b | 55 | pc.printf("\n%1.2f ",VAR_X); |
| henriquer | 0:fc0918bb465b | 56 | wait(2); |
| henriquer | 0:fc0918bb465b | 57 | lcd.cls(); |
| henriquer | 0:fc0918bb465b | 58 | } |
| henriquer | 0:fc0918bb465b | 59 | |
| henriquer | 0:fc0918bb465b | 60 | if(VAL_Y > 0.41f) { |
| henriquer | 0:fc0918bb465b | 61 | |
| henriquer | 0:fc0918bb465b | 62 | lcd.setAddress(0,1); |
| henriquer | 0:fc0918bb465b | 63 | lcd.printf("Posicao:"); |
| henriquer | 0:fc0918bb465b | 64 | lcd.setAddress(9,1); |
| henriquer | 0:fc0918bb465b | 65 | lcd.printf("UP"); |
| henriquer | 0:fc0918bb465b | 66 | pc.printf("\n%1.2f ",VAR_Y); |
| henriquer | 0:fc0918bb465b | 67 | wait(2); |
| henriquer | 0:fc0918bb465b | 68 | lcd.cls(); |
| henriquer | 0:fc0918bb465b | 69 | } |
| henriquer | 0:fc0918bb465b | 70 | |
| henriquer | 0:fc0918bb465b | 71 | if(VAL_Y < 0.3f) { |
| henriquer | 0:fc0918bb465b | 72 | |
| henriquer | 0:fc0918bb465b | 73 | lcd.setAddress(0,1); |
| henriquer | 0:fc0918bb465b | 74 | lcd.printf("Posicao:"); |
| henriquer | 0:fc0918bb465b | 75 | lcd.setAddress(9,1); |
| henriquer | 0:fc0918bb465b | 76 | lcd.printf("DOWN"); |
| henriquer | 0:fc0918bb465b | 77 | pc.printf("\n%1.2f ",VAR_Y); |
| henriquer | 0:fc0918bb465b | 78 | wait(2); |
| henriquer | 0:fc0918bb465b | 79 | lcd.cls(); |
| henriquer | 0:fc0918bb465b | 80 | } |
| henriquer | 0:fc0918bb465b | 81 | |
| henriquer | 0:fc0918bb465b | 82 | |
| henriquer | 0:fc0918bb465b | 83 | wait(0.5); |
| henriquer | 0:fc0918bb465b | 84 | |
| henriquer | 0:fc0918bb465b | 85 | } |
| henriquer | 0:fc0918bb465b | 86 | } |
| henriquer | 0:fc0918bb465b | 87 | |
| henriquer | 0:fc0918bb465b | 88 | |
| henriquer | 0:fc0918bb465b | 89 | |
| henriquer | 0:fc0918bb465b | 90 |