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
Fork of el17dg by
main.cpp@2:ec89189860e0, 2019-02-26 (annotated)
- Committer:
- Noximilien
- Date:
- Tue Feb 26 16:45:45 2019 +0000
- Revision:
- 2:ec89189860e0
- Parent:
- 1:5aa2312d3e94
Have done menu and pointer to orientate in the menu. -Before making the models.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Noximilien | 0:69abdc43ae39 | 1 | /* |
| Noximilien | 0:69abdc43ae39 | 2 | ELEC2645 Embedded Systems Project |
| Noximilien | 0:69abdc43ae39 | 3 | School of Electronic & Electrical Engineering |
| Noximilien | 0:69abdc43ae39 | 4 | University of Leeds |
| Noximilien | 0:69abdc43ae39 | 5 | Name: Dmitrijs Griskovs |
| Noximilien | 0:69abdc43ae39 | 6 | Username: el17dg |
| Noximilien | 0:69abdc43ae39 | 7 | Student ID Number: 201160286 |
| Noximilien | 0:69abdc43ae39 | 8 | Date: start - 25/02/2019 |
| Noximilien | 0:69abdc43ae39 | 9 | */ |
| Noximilien | 0:69abdc43ae39 | 10 | |
| Noximilien | 0:69abdc43ae39 | 11 | |
| Noximilien | 1:5aa2312d3e94 | 12 | #include "mbed.h" |
| Noximilien | 1:5aa2312d3e94 | 13 | #include "N5110.h" |
| Noximilien | 2:ec89189860e0 | 14 | #include "Gamepad.h" |
| Noximilien | 0:69abdc43ae39 | 15 | |
| Noximilien | 0:69abdc43ae39 | 16 | |
| Noximilien | 1:5aa2312d3e94 | 17 | N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); |
| Noximilien | 1:5aa2312d3e94 | 18 | AnalogIn pot(PTB2); |
| Noximilien | 1:5aa2312d3e94 | 19 | |
| Noximilien | 2:ec89189860e0 | 20 | AnalogIn x_dir(PTB11); |
| Noximilien | 2:ec89189860e0 | 21 | AnalogIn y_dir(PTB10); |
| Noximilien | 2:ec89189860e0 | 22 | |
| Noximilien | 1:5aa2312d3e94 | 23 | |
| Noximilien | 1:5aa2312d3e94 | 24 | void intro(); |
| Noximilien | 2:ec89189860e0 | 25 | void pointer(int x, int y); |
| Noximilien | 2:ec89189860e0 | 26 | void pointer_position(int menu_number); |
| Noximilien | 2:ec89189860e0 | 27 | |
| Noximilien | 2:ec89189860e0 | 28 | int menu_number = 0; |
| Noximilien | 2:ec89189860e0 | 29 | int total_menu_number = 3; |
| Noximilien | 2:ec89189860e0 | 30 | float time_delay = 100; |
| Noximilien | 0:69abdc43ae39 | 31 | |
| Noximilien | 1:5aa2312d3e94 | 32 | int main(){ |
| Noximilien | 1:5aa2312d3e94 | 33 | lcd.init(); |
| Noximilien | 1:5aa2312d3e94 | 34 | |
| Noximilien | 1:5aa2312d3e94 | 35 | intro(); |
| Noximilien | 1:5aa2312d3e94 | 36 | |
| Noximilien | 1:5aa2312d3e94 | 37 | |
| Noximilien | 1:5aa2312d3e94 | 38 | while(1){ |
| Noximilien | 1:5aa2312d3e94 | 39 | |
| Noximilien | 1:5aa2312d3e94 | 40 | lcd.clear(); |
| Noximilien | 2:ec89189860e0 | 41 | |
| Noximilien | 2:ec89189860e0 | 42 | pointer_position(menu_number); |
| Noximilien | 2:ec89189860e0 | 43 | |
| Noximilien | 2:ec89189860e0 | 44 | if(y_dir.read() > 0.6){ |
| Noximilien | 2:ec89189860e0 | 45 | menu_number -= 1; |
| Noximilien | 2:ec89189860e0 | 46 | wait_ms(time_delay); |
| Noximilien | 2:ec89189860e0 | 47 | } |
| Noximilien | 2:ec89189860e0 | 48 | if (y_dir.read() < 0.4){ |
| Noximilien | 2:ec89189860e0 | 49 | menu_number += 1; |
| Noximilien | 2:ec89189860e0 | 50 | wait_ms(time_delay); |
| Noximilien | 2:ec89189860e0 | 51 | } |
| Noximilien | 2:ec89189860e0 | 52 | if (menu_number < 0) { |
| Noximilien | 2:ec89189860e0 | 53 | menu_number += total_menu_number; |
| Noximilien | 2:ec89189860e0 | 54 | } |
| Noximilien | 2:ec89189860e0 | 55 | if (menu_number >= total_menu_number) { |
| Noximilien | 2:ec89189860e0 | 56 | menu_number -= total_menu_number; |
| Noximilien | 2:ec89189860e0 | 57 | } |
| Noximilien | 2:ec89189860e0 | 58 | |
| Noximilien | 1:5aa2312d3e94 | 59 | lcd.printString(" Start ",1,2); |
| Noximilien | 1:5aa2312d3e94 | 60 | lcd.printString(" Tutorial",1,3); |
| Noximilien | 1:5aa2312d3e94 | 61 | lcd.printString(" Settings",1,4); |
| Noximilien | 2:ec89189860e0 | 62 | |
| Noximilien | 1:5aa2312d3e94 | 63 | lcd.refresh(); |
| Noximilien | 1:5aa2312d3e94 | 64 | wait_ms(1000/10); |
| Noximilien | 1:5aa2312d3e94 | 65 | |
| Noximilien | 1:5aa2312d3e94 | 66 | |
| Noximilien | 1:5aa2312d3e94 | 67 | } |
| Noximilien | 1:5aa2312d3e94 | 68 | |
| Noximilien | 1:5aa2312d3e94 | 69 | |
| Noximilien | 1:5aa2312d3e94 | 70 | |
| Noximilien | 1:5aa2312d3e94 | 71 | } |
| Noximilien | 1:5aa2312d3e94 | 72 | |
| Noximilien | 1:5aa2312d3e94 | 73 | void intro(){ |
| Noximilien | 1:5aa2312d3e94 | 74 | lcd.clear(); |
| Noximilien | 1:5aa2312d3e94 | 75 | lcd.printString(" StarBarians",1,1); |
| Noximilien | 1:5aa2312d3e94 | 76 | lcd.refresh(); |
| Noximilien | 2:ec89189860e0 | 77 | wait(0.5); |
| Noximilien | 1:5aa2312d3e94 | 78 | lcd.printString(" And the quest ",1,2); |
| Noximilien | 1:5aa2312d3e94 | 79 | lcd.printString(" of the Princess Boobeta",1,3); |
| Noximilien | 1:5aa2312d3e94 | 80 | lcd.printString(" Boobeta",1,4); |
| Noximilien | 1:5aa2312d3e94 | 81 | lcd.refresh(); |
| Noximilien | 2:ec89189860e0 | 82 | wait(0.5); |
| Noximilien | 1:5aa2312d3e94 | 83 | } |
| Noximilien | 1:5aa2312d3e94 | 84 | |
| Noximilien | 1:5aa2312d3e94 | 85 | void pointer(int x, int y){ |
| Noximilien | 1:5aa2312d3e94 | 86 | |
| Noximilien | 1:5aa2312d3e94 | 87 | int cursor[84] = {0,0,0,0,1,0,0,0,0,0,1,1, |
| Noximilien | 1:5aa2312d3e94 | 88 | 0,0,1,1,1,1,0,0,0,1,0,0, |
| Noximilien | 1:5aa2312d3e94 | 89 | 0,1,0,0,1,1,1,0,1,0,0,0, |
| Noximilien | 1:5aa2312d3e94 | 90 | 1,1,1,1,1,0,1,1,1,0,1,1, |
| Noximilien | 1:5aa2312d3e94 | 91 | 0,1,0,0,1,1,1,0,1,0,0,0, |
| Noximilien | 1:5aa2312d3e94 | 92 | 0,0,1,1,1,1,0,0,0,1,0,0, |
| Noximilien | 1:5aa2312d3e94 | 93 | 0,0,0,0,1,0,0,0,0,0,1,1}; |
| Noximilien | 1:5aa2312d3e94 | 94 | |
| Noximilien | 1:5aa2312d3e94 | 95 | |
| Noximilien | 1:5aa2312d3e94 | 96 | lcd.drawSprite(x,y,7,12,cursor); |
| Noximilien | 1:5aa2312d3e94 | 97 | } |
| Noximilien | 1:5aa2312d3e94 | 98 | |
| Noximilien | 2:ec89189860e0 | 99 | void pointer_position(int menu_number){ //32 for 5th row- 25 for 4th row |
| Noximilien | 2:ec89189860e0 | 100 | if (menu_number == 0){ |
| Noximilien | 2:ec89189860e0 | 101 | pointer(70, 17); |
| Noximilien | 2:ec89189860e0 | 102 | } |
| Noximilien | 2:ec89189860e0 | 103 | if (menu_number == 1){ |
| Noximilien | 2:ec89189860e0 | 104 | pointer(70, 25); |
| Noximilien | 2:ec89189860e0 | 105 | } |
| Noximilien | 2:ec89189860e0 | 106 | if (menu_number == 2){ |
| Noximilien | 2:ec89189860e0 | 107 | pointer(70, 32); |
| Noximilien | 2:ec89189860e0 | 108 | } |
| Noximilien | 2:ec89189860e0 | 109 | } |
| Noximilien | 2:ec89189860e0 | 110 |
