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 Project_PokPakGame by
main.cpp@2:8b6312dbfd2f, 2015-12-05 (annotated)
- Committer:
- Pumipachpro
- Date:
- Sat Dec 05 09:26:20 2015 +0000
- Revision:
- 2:8b6312dbfd2f
- Parent:
- 0:e282add6146d
- Child:
- 3:054a677aca64
-
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Pumipachpro | 0:e282add6146d | 1 | #include "mbed.h" |
Pumipachpro | 2:8b6312dbfd2f | 2 | |
Pumipachpro | 0:e282add6146d | 3 | SPI DataPack(SPI_MOSI, SPI_MISO, SPI_SCK); |
Pumipachpro | 0:e282add6146d | 4 | DigitalOut Latch(D10); |
Pumipachpro | 2:8b6312dbfd2f | 5 | AnalogIn VR0(A0); |
Pumipachpro | 2:8b6312dbfd2f | 6 | AnalogIn VR1(A1); |
Pumipachpro | 0:e282add6146d | 7 | |
Pumipachpro | 2:8b6312dbfd2f | 8 | float VR_value0,VR_value1; |
Pumipachpro | 2:8b6312dbfd2f | 9 | int Base[6][3][3]= { |
Pumipachpro | 2:8b6312dbfd2f | 10 | //[6]=[0]_base1,[1]_base2,[2]_base3,[3]_base4,[4]_base5,[5]_base6 |
Pumipachpro | 2:8b6312dbfd2f | 11 | //[3]=[0]_red,[1]_yello,[2]_green |
Pumipachpro | 2:8b6312dbfd2f | 12 | {{0x1F,0xFF,0xFF},{0x1F,0x1F,0xFF},{0xFF,0x1F,0xFF}} , |
Pumipachpro | 2:8b6312dbfd2f | 13 | {{0x8F,0xFF,0xFF},{0x8F,0x8F,0xFF},{0xFF,0x8F,0xFF}} , |
Pumipachpro | 2:8b6312dbfd2f | 14 | {{0xC7,0xFF,0xFF},{0xC7,0xC7,0xFF},{0xFF,0xC7,0xFF}} , |
Pumipachpro | 2:8b6312dbfd2f | 15 | {{0xE3,0xFF,0xFF},{0xE3,0xE3,0xFF},{0xFF,0xE3,0xFF}} , |
Pumipachpro | 2:8b6312dbfd2f | 16 | {{0xF1,0xFF,0xFF},{0xF1,0xF1,0xFF},{0xFF,0xF1,0xFF}} , |
Pumipachpro | 2:8b6312dbfd2f | 17 | {{0xF8,0xFF,0xFF},{0xF8,0xF8,0xFF},{0xFF,0xF8,0xFF}} |
Pumipachpro | 2:8b6312dbfd2f | 18 | }; |
Pumipachpro | 2:8b6312dbfd2f | 19 | |
Pumipachpro | 2:8b6312dbfd2f | 20 | void BaseColorUnder(int a,int b) |
Pumipachpro | 2:8b6312dbfd2f | 21 | { |
Pumipachpro | 2:8b6312dbfd2f | 22 | Latch=0; |
Pumipachpro | 2:8b6312dbfd2f | 23 | DataPack.write(Base[a][b][0]); |
Pumipachpro | 2:8b6312dbfd2f | 24 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 25 | DataPack.write(Base[a][b][1]); |
Pumipachpro | 2:8b6312dbfd2f | 26 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 27 | DataPack.write(Base[a][b][2]); |
Pumipachpro | 2:8b6312dbfd2f | 28 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 29 | DataPack.write(0x01); |
Pumipachpro | 2:8b6312dbfd2f | 30 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 31 | Latch=1; |
Pumipachpro | 2:8b6312dbfd2f | 32 | } |
Pumipachpro | 2:8b6312dbfd2f | 33 | |
Pumipachpro | 2:8b6312dbfd2f | 34 | void BaseColorUpper(int a,int b) |
Pumipachpro | 2:8b6312dbfd2f | 35 | { |
Pumipachpro | 2:8b6312dbfd2f | 36 | Latch=0; |
Pumipachpro | 2:8b6312dbfd2f | 37 | DataPack.write(Base[a][b][0]); |
Pumipachpro | 2:8b6312dbfd2f | 38 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 39 | DataPack.write(Base[a][b][1]); |
Pumipachpro | 2:8b6312dbfd2f | 40 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 41 | DataPack.write(Base[a][b][2]); |
Pumipachpro | 2:8b6312dbfd2f | 42 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 43 | DataPack.write(0x80); |
Pumipachpro | 2:8b6312dbfd2f | 44 | wait_us(1); |
Pumipachpro | 2:8b6312dbfd2f | 45 | Latch=1; |
Pumipachpro | 2:8b6312dbfd2f | 46 | } |
Pumipachpro | 2:8b6312dbfd2f | 47 | |
Pumipachpro | 2:8b6312dbfd2f | 48 | //color >> red=0 , yello=1 , green=2 |
Pumipachpro | 2:8b6312dbfd2f | 49 | int BaseUnder(int color) |
Pumipachpro | 2:8b6312dbfd2f | 50 | { |
Pumipachpro | 2:8b6312dbfd2f | 51 | VR_value0 = VR0.read(); |
Pumipachpro | 2:8b6312dbfd2f | 52 | VR_value0 = VR_value0*6; |
Pumipachpro | 0:e282add6146d | 53 | |
Pumipachpro | 2:8b6312dbfd2f | 54 | if(VR_value0<=1) { |
Pumipachpro | 2:8b6312dbfd2f | 55 | //base1 |
Pumipachpro | 2:8b6312dbfd2f | 56 | BaseColorUnder(0,color); |
Pumipachpro | 2:8b6312dbfd2f | 57 | return 1; |
Pumipachpro | 2:8b6312dbfd2f | 58 | } else if(VR_value0>1&&VR_value0<=2) { |
Pumipachpro | 2:8b6312dbfd2f | 59 | //base2 |
Pumipachpro | 2:8b6312dbfd2f | 60 | BaseColorUnder(1,color); |
Pumipachpro | 2:8b6312dbfd2f | 61 | return 2; |
Pumipachpro | 2:8b6312dbfd2f | 62 | } else if(VR_value0>2&&VR_value0<=3) { |
Pumipachpro | 2:8b6312dbfd2f | 63 | //base3 |
Pumipachpro | 2:8b6312dbfd2f | 64 | BaseColorUnder(2,color); |
Pumipachpro | 2:8b6312dbfd2f | 65 | return 3; |
Pumipachpro | 2:8b6312dbfd2f | 66 | } else if(VR_value0>3&&VR_value0<=4) { |
Pumipachpro | 2:8b6312dbfd2f | 67 | //base4 |
Pumipachpro | 2:8b6312dbfd2f | 68 | BaseColorUnder(3,color); |
Pumipachpro | 2:8b6312dbfd2f | 69 | return 4; |
Pumipachpro | 2:8b6312dbfd2f | 70 | } else if(VR_value0>4&&VR_value0<=5) { |
Pumipachpro | 2:8b6312dbfd2f | 71 | //base5 |
Pumipachpro | 2:8b6312dbfd2f | 72 | BaseColorUnder(4,color); |
Pumipachpro | 2:8b6312dbfd2f | 73 | return 5; |
Pumipachpro | 2:8b6312dbfd2f | 74 | } else if(VR_value0>5&&VR_value0<=6) { |
Pumipachpro | 2:8b6312dbfd2f | 75 | //base4 |
Pumipachpro | 2:8b6312dbfd2f | 76 | BaseColorUnder(5,color); |
Pumipachpro | 2:8b6312dbfd2f | 77 | return 6; |
Pumipachpro | 2:8b6312dbfd2f | 78 | } |
Pumipachpro | 2:8b6312dbfd2f | 79 | } |
Pumipachpro | 2:8b6312dbfd2f | 80 | |
Pumipachpro | 2:8b6312dbfd2f | 81 | //color >> red=0 , yello=1 , green=2 |
Pumipachpro | 2:8b6312dbfd2f | 82 | int BaseUpper(int color) |
Pumipachpro | 2:8b6312dbfd2f | 83 | { |
Pumipachpro | 2:8b6312dbfd2f | 84 | VR_value1 = VR1.read(); |
Pumipachpro | 2:8b6312dbfd2f | 85 | VR_value1 = VR_value1*6; |
Pumipachpro | 2:8b6312dbfd2f | 86 | |
Pumipachpro | 2:8b6312dbfd2f | 87 | if(VR_value1<=1) { |
Pumipachpro | 2:8b6312dbfd2f | 88 | //base1 |
Pumipachpro | 2:8b6312dbfd2f | 89 | BaseColorUpper(0,color); |
Pumipachpro | 2:8b6312dbfd2f | 90 | return 1; |
Pumipachpro | 2:8b6312dbfd2f | 91 | } else if(VR_value1>1&&VR_value1<=2) { |
Pumipachpro | 2:8b6312dbfd2f | 92 | //base2 |
Pumipachpro | 2:8b6312dbfd2f | 93 | BaseColorUpper(1,color); |
Pumipachpro | 2:8b6312dbfd2f | 94 | return 2; |
Pumipachpro | 2:8b6312dbfd2f | 95 | } else if(VR_value1>2&&VR_value1<=3) { |
Pumipachpro | 2:8b6312dbfd2f | 96 | //base3 |
Pumipachpro | 2:8b6312dbfd2f | 97 | BaseColorUpper(2,color); |
Pumipachpro | 2:8b6312dbfd2f | 98 | return 3; |
Pumipachpro | 2:8b6312dbfd2f | 99 | } else if(VR_value1>3&&VR_value1<=4) { |
Pumipachpro | 2:8b6312dbfd2f | 100 | //base4 |
Pumipachpro | 2:8b6312dbfd2f | 101 | BaseColorUpper(3,color); |
Pumipachpro | 2:8b6312dbfd2f | 102 | return 4; |
Pumipachpro | 2:8b6312dbfd2f | 103 | } else if(VR_value1>4&&VR_value1<=5) { |
Pumipachpro | 2:8b6312dbfd2f | 104 | //base5 |
Pumipachpro | 2:8b6312dbfd2f | 105 | BaseColorUpper(4,color); |
Pumipachpro | 2:8b6312dbfd2f | 106 | return 5; |
Pumipachpro | 2:8b6312dbfd2f | 107 | } else if(VR_value1>5&&VR_value1<=6) { |
Pumipachpro | 2:8b6312dbfd2f | 108 | //base4 |
Pumipachpro | 2:8b6312dbfd2f | 109 | BaseColorUpper(5,color); |
Pumipachpro | 2:8b6312dbfd2f | 110 | return 6; |
Pumipachpro | 2:8b6312dbfd2f | 111 | } |
Pumipachpro | 2:8b6312dbfd2f | 112 | } |
Pumipachpro | 2:8b6312dbfd2f | 113 | |
Pumipachpro | 2:8b6312dbfd2f | 114 | int main() |
Pumipachpro | 2:8b6312dbfd2f | 115 | { |
Pumipachpro | 0:e282add6146d | 116 | |
Pumipachpro | 0:e282add6146d | 117 | DataPack.frequency(100000); |
Pumipachpro | 0:e282add6146d | 118 | DataPack.format(8,0); |
Pumipachpro | 0:e282add6146d | 119 | |
Pumipachpro | 2:8b6312dbfd2f | 120 | while(1) { |
Pumipachpro | 2:8b6312dbfd2f | 121 | BaseUnder(1); |
Pumipachpro | 2:8b6312dbfd2f | 122 | BaseUpper(0); |
Pumipachpro | 2:8b6312dbfd2f | 123 | } |
Pumipachpro | 0:e282add6146d | 124 | |
Pumipachpro | 0:e282add6146d | 125 | } |