Added HangmanGame class, but does not work yet
Dependencies: SDFileSystem app epson mbed msp430 pl tests
pagedice.cpp@1:a5ec6f9dcf0d, 2017-12-04 (annotated)
- Committer:
- markpsymonds
- Date:
- Mon Dec 04 20:15:18 2017 +0000
- Revision:
- 1:a5ec6f9dcf0d
- Parent:
- 0:fa7450a43b99
Fixed most compile issues in hangman.cpp/.h.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
group-FlexBook | 0:fa7450a43b99 | 1 | // |
group-FlexBook | 0:fa7450a43b99 | 2 | // Filename: pagedice.cpp |
group-FlexBook | 0:fa7450a43b99 | 3 | // |
group-FlexBook | 0:fa7450a43b99 | 4 | // Flexbook page for page A2. |
group-FlexBook | 0:fa7450a43b99 | 5 | // |
group-FlexBook | 0:fa7450a43b99 | 6 | |
group-FlexBook | 0:fa7450a43b99 | 7 | #include "pagedice.h" |
group-FlexBook | 0:fa7450a43b99 | 8 | #include "pageoled.h" |
group-FlexBook | 0:fa7450a43b99 | 9 | #include "hal.h" |
group-FlexBook | 0:fa7450a43b99 | 10 | #include "mcp23s17.h" |
group-FlexBook | 0:fa7450a43b99 | 11 | |
group-FlexBook | 0:fa7450a43b99 | 12 | #include "log.h" |
group-FlexBook | 0:fa7450a43b99 | 13 | |
group-FlexBook | 0:fa7450a43b99 | 14 | #include <iostream> |
group-FlexBook | 0:fa7450a43b99 | 15 | |
group-FlexBook | 0:fa7450a43b99 | 16 | namespace Flexbook { |
group-FlexBook | 0:fa7450a43b99 | 17 | |
group-FlexBook | 0:fa7450a43b99 | 18 | PageDice::PageDice() |
group-FlexBook | 0:fa7450a43b99 | 19 | : pageoled() |
group-FlexBook | 0:fa7450a43b99 | 20 | { |
group-FlexBook | 0:fa7450a43b99 | 21 | Log("Creating PageDice"); |
group-FlexBook | 0:fa7450a43b99 | 22 | } |
group-FlexBook | 0:fa7450a43b99 | 23 | |
group-FlexBook | 0:fa7450a43b99 | 24 | PageDice::~PageDice() |
group-FlexBook | 0:fa7450a43b99 | 25 | { |
group-FlexBook | 0:fa7450a43b99 | 26 | Log("Deleting PageDice"); |
group-FlexBook | 0:fa7450a43b99 | 27 | } |
group-FlexBook | 0:fa7450a43b99 | 28 | |
group-FlexBook | 0:fa7450a43b99 | 29 | uint8_t PageDice::DicePoll() |
group-FlexBook | 0:fa7450a43b99 | 30 | { |
group-FlexBook | 0:fa7450a43b99 | 31 | DigitalIn dice_D(p23); |
group-FlexBook | 0:fa7450a43b99 | 32 | DigitalIn dice_C(p24); |
group-FlexBook | 0:fa7450a43b99 | 33 | DigitalIn dice_B(p25); |
group-FlexBook | 0:fa7450a43b99 | 34 | uint8_t dicevalue = 0; |
group-FlexBook | 0:fa7450a43b99 | 35 | if (dice_D) dicevalue =+ 1; |
group-FlexBook | 0:fa7450a43b99 | 36 | if (dice_C) dicevalue =+ 2; |
group-FlexBook | 0:fa7450a43b99 | 37 | if (dice_B) dicevalue =+ 4; |
group-FlexBook | 0:fa7450a43b99 | 38 | return(dicevalue); |
group-FlexBook | 0:fa7450a43b99 | 39 | } |
group-FlexBook | 0:fa7450a43b99 | 40 | |
group-FlexBook | 0:fa7450a43b99 | 41 | |
group-FlexBook | 0:fa7450a43b99 | 42 | void PageDice::HandlePageActions() |
group-FlexBook | 0:fa7450a43b99 | 43 | { |
group-FlexBook | 0:fa7450a43b99 | 44 | DigitalOut led1(LED1); DigitalOut led2(LED2); |
group-FlexBook | 0:fa7450a43b99 | 45 | int dicenr = 1; |
group-FlexBook | 0:fa7450a43b99 | 46 | if (HAL::GetMCP23S17().Read(HAL::GPIOA) == 0xF7) |
group-FlexBook | 0:fa7450a43b99 | 47 | { |
group-FlexBook | 0:fa7450a43b99 | 48 | led1 = 1; |
group-FlexBook | 0:fa7450a43b99 | 49 | while (HAL::GetMCP23S17().Read(HAL::GPIOA) == 0xF7) |
group-FlexBook | 0:fa7450a43b99 | 50 | { |
group-FlexBook | 0:fa7450a43b99 | 51 | //write the value of dicenr to the digit on OLED |
group-FlexBook | 0:fa7450a43b99 | 52 | pageoled.Write(pageoled.Translate(0,0,0,0,0,dicenr)); |
group-FlexBook | 0:fa7450a43b99 | 53 | //pageoled.DiceRoll(dicenr); |
group-FlexBook | 0:fa7450a43b99 | 54 | wait(0.1); |
group-FlexBook | 0:fa7450a43b99 | 55 | dicenr = dicenr + 1; |
group-FlexBook | 0:fa7450a43b99 | 56 | if (dicenr == 7) dicenr = 1; |
group-FlexBook | 0:fa7450a43b99 | 57 | } |
group-FlexBook | 0:fa7450a43b99 | 58 | led1=0; |
group-FlexBook | 0:fa7450a43b99 | 59 | //finger is now removed from the touch electrode |
group-FlexBook | 0:fa7450a43b99 | 60 | led2=1; |
group-FlexBook | 0:fa7450a43b99 | 61 | for (int i=30; i>0; i--) |
group-FlexBook | 0:fa7450a43b99 | 62 | { |
group-FlexBook | 0:fa7450a43b99 | 63 | //write the value of dicenr to the digit on OLED |
group-FlexBook | 0:fa7450a43b99 | 64 | pageoled.Write(pageoled.Translate(0,0,0,0,0,dicenr)); |
group-FlexBook | 0:fa7450a43b99 | 65 | //pageoled.DiceRoll(dicenr); |
group-FlexBook | 0:fa7450a43b99 | 66 | wait(4/(i+3)); //change count slow-down formula to suit |
group-FlexBook | 0:fa7450a43b99 | 67 | } |
group-FlexBook | 0:fa7450a43b99 | 68 | led2 = 0; |
group-FlexBook | 0:fa7450a43b99 | 69 | } |
group-FlexBook | 0:fa7450a43b99 | 70 | } |
group-FlexBook | 0:fa7450a43b99 | 71 | |
group-FlexBook | 0:fa7450a43b99 | 72 | /* |
group-FlexBook | 0:fa7450a43b99 | 73 | void PageDice::HandleDice() |
group-FlexBook | 0:fa7450a43b99 | 74 | { |
group-FlexBook | 0:fa7450a43b99 | 75 | DigitalOut led1(LED1); DigitalOut led2(LED2); |
group-FlexBook | 0:fa7450a43b99 | 76 | int dicenr = 1; |
group-FlexBook | 0:fa7450a43b99 | 77 | //sensordata.dice = 1; |
group-FlexBook | 0:fa7450a43b99 | 78 | if (HAL::GetMCP23S17().Read(HAL::GPIOA) == 0xF7) |
group-FlexBook | 0:fa7450a43b99 | 79 | { |
group-FlexBook | 0:fa7450a43b99 | 80 | led1 = 1; |
group-FlexBook | 0:fa7450a43b99 | 81 | while (HAL::GetMCP23S17().Read(HAL::GPIOA) == 0xF7) |
group-FlexBook | 0:fa7450a43b99 | 82 | { |
group-FlexBook | 0:fa7450a43b99 | 83 | //write the value of dicenr to the digit on OLED |
group-FlexBook | 0:fa7450a43b99 | 84 | //sensordata.dice = dicenr; |
group-FlexBook | 0:fa7450a43b99 | 85 | pageoled.Write(pageoled.Translate(0,0,0,0,0,dicenr)); |
group-FlexBook | 0:fa7450a43b99 | 86 | wait(0.05); |
group-FlexBook | 0:fa7450a43b99 | 87 | dicenr = dicenr + 1; |
group-FlexBook | 0:fa7450a43b99 | 88 | if (dicenr == 7) dicenr = 1; |
group-FlexBook | 0:fa7450a43b99 | 89 | } |
group-FlexBook | 0:fa7450a43b99 | 90 | led1=0; |
group-FlexBook | 0:fa7450a43b99 | 91 | //finger is now removed from the touch electrode |
group-FlexBook | 0:fa7450a43b99 | 92 | led2=1; |
group-FlexBook | 0:fa7450a43b99 | 93 | for (int i=10; i>0; i--) |
group-FlexBook | 0:fa7450a43b99 | 94 | { |
group-FlexBook | 0:fa7450a43b99 | 95 | //write the value of dicenr to the digit on OLED |
group-FlexBook | 0:fa7450a43b99 | 96 | dicenr = dicenr + 1; |
group-FlexBook | 0:fa7450a43b99 | 97 | if (dicenr == 7) dicenr = 1; |
group-FlexBook | 0:fa7450a43b99 | 98 | //sensordata.dice = dicenr; |
group-FlexBook | 0:fa7450a43b99 | 99 | pageoled.Write(pageoled.Translate(0,0,0,0,0,dicenr)); |
group-FlexBook | 0:fa7450a43b99 | 100 | wait(4/(i+1)); //change count slow-down formula to suit |
group-FlexBook | 0:fa7450a43b99 | 101 | //wait(0.3); |
group-FlexBook | 0:fa7450a43b99 | 102 | } |
group-FlexBook | 0:fa7450a43b99 | 103 | led2 = 0; |
group-FlexBook | 0:fa7450a43b99 | 104 | //sensordata.dice = dicenr; |
group-FlexBook | 0:fa7450a43b99 | 105 | } |
group-FlexBook | 0:fa7450a43b99 | 106 | } |
group-FlexBook | 0:fa7450a43b99 | 107 | */ |
group-FlexBook | 0:fa7450a43b99 | 108 | |
group-FlexBook | 0:fa7450a43b99 | 109 | } // End Flexbook namespace. |
group-FlexBook | 0:fa7450a43b99 | 110 | |
group-FlexBook | 0:fa7450a43b99 | 111 | |
group-FlexBook | 0:fa7450a43b99 | 112 |