Snake game on nokia N5110 LCD
Dependencies: mbed
Snake game on nokia N5110 LCD and Keyes Syos Joystick. You control snake using joystick. Start/pause game ba using button on joystick or by pressing p on your keyboard (serial communication). More info on my blog: http://sdizdarevic.com/post/94147065625/frdm-k64f-project
Helper.h@0:5bdb67970267, 2014-08-08 (annotated)
- Committer:
- sdizdarevic
- Date:
- Fri Aug 08 06:44:50 2014 +0000
- Revision:
- 0:5bdb67970267
Check connections
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sdizdarevic | 0:5bdb67970267 | 1 | #ifndef E_HELPER_H |
sdizdarevic | 0:5bdb67970267 | 2 | #define E_HELPER_H |
sdizdarevic | 0:5bdb67970267 | 3 | bool IsNum (const char C) |
sdizdarevic | 0:5bdb67970267 | 4 | { |
sdizdarevic | 0:5bdb67970267 | 5 | return (C >= '0' && C <= '9'); |
sdizdarevic | 0:5bdb67970267 | 6 | } |
sdizdarevic | 0:5bdb67970267 | 7 | char ToUpper (const char C) |
sdizdarevic | 0:5bdb67970267 | 8 | { |
sdizdarevic | 0:5bdb67970267 | 9 | if (C >= 'a' && C <= 'z') |
sdizdarevic | 0:5bdb67970267 | 10 | return C - 32; |
sdizdarevic | 0:5bdb67970267 | 11 | return C; |
sdizdarevic | 0:5bdb67970267 | 12 | } |
sdizdarevic | 0:5bdb67970267 | 13 | bool IsOurChar (const char C) |
sdizdarevic | 0:5bdb67970267 | 14 | { |
sdizdarevic | 0:5bdb67970267 | 15 | char c = ToUpper (C); |
sdizdarevic | 0:5bdb67970267 | 16 | return c == 'B' || c == 'R' || c == 'P' || c == 'Z' || c == 'H'; |
sdizdarevic | 0:5bdb67970267 | 17 | } |
sdizdarevic | 0:5bdb67970267 | 18 | int ToInt (const char C[]) |
sdizdarevic | 0:5bdb67970267 | 19 | { |
sdizdarevic | 0:5bdb67970267 | 20 | int N = 0, i = 0; |
sdizdarevic | 0:5bdb67970267 | 21 | while (C[i] != '\0') |
sdizdarevic | 0:5bdb67970267 | 22 | { |
sdizdarevic | 0:5bdb67970267 | 23 | if (IsNum (C[i])) |
sdizdarevic | 0:5bdb67970267 | 24 | { |
sdizdarevic | 0:5bdb67970267 | 25 | N = N * 10 + C[i++] - '0'; |
sdizdarevic | 0:5bdb67970267 | 26 | } |
sdizdarevic | 0:5bdb67970267 | 27 | else return -7; |
sdizdarevic | 0:5bdb67970267 | 28 | } |
sdizdarevic | 0:5bdb67970267 | 29 | return N; |
sdizdarevic | 0:5bdb67970267 | 30 | } |
sdizdarevic | 0:5bdb67970267 | 31 | int NumLen (int N) |
sdizdarevic | 0:5bdb67970267 | 32 | { |
sdizdarevic | 0:5bdb67970267 | 33 | if (N == 0) return 1; |
sdizdarevic | 0:5bdb67970267 | 34 | int C = 0; |
sdizdarevic | 0:5bdb67970267 | 35 | while (N != 0) |
sdizdarevic | 0:5bdb67970267 | 36 | { |
sdizdarevic | 0:5bdb67970267 | 37 | C++; |
sdizdarevic | 0:5bdb67970267 | 38 | N /= 10; |
sdizdarevic | 0:5bdb67970267 | 39 | } |
sdizdarevic | 0:5bdb67970267 | 40 | return C; |
sdizdarevic | 0:5bdb67970267 | 41 | } |
sdizdarevic | 0:5bdb67970267 | 42 | char *ToString (char Buff[], int N) |
sdizdarevic | 0:5bdb67970267 | 43 | { |
sdizdarevic | 0:5bdb67970267 | 44 | if (N==0) |
sdizdarevic | 0:5bdb67970267 | 45 | { |
sdizdarevic | 0:5bdb67970267 | 46 | Buff[0] = '0'; |
sdizdarevic | 0:5bdb67970267 | 47 | Buff[1] = '\0'; |
sdizdarevic | 0:5bdb67970267 | 48 | return Buff; |
sdizdarevic | 0:5bdb67970267 | 49 | } |
sdizdarevic | 0:5bdb67970267 | 50 | int B = NumLen (N); |
sdizdarevic | 0:5bdb67970267 | 51 | Buff[B] = '\0'; |
sdizdarevic | 0:5bdb67970267 | 52 | while (N != 0) |
sdizdarevic | 0:5bdb67970267 | 53 | { |
sdizdarevic | 0:5bdb67970267 | 54 | Buff[--B] = N % 10 + '0'; |
sdizdarevic | 0:5bdb67970267 | 55 | N /= 10; |
sdizdarevic | 0:5bdb67970267 | 56 | } |
sdizdarevic | 0:5bdb67970267 | 57 | return Buff; |
sdizdarevic | 0:5bdb67970267 | 58 | } |
sdizdarevic | 0:5bdb67970267 | 59 | #endif //E_HELPER_H |