FRA221_2015 / Mbed 2 deprecated Project_PokPakGame

Dependencies:   mbed

Fork of Project_PokPakGame by FRA221_7B

Committer:
lolopo008
Date:
Sun Dec 06 17:06:18 2015 +0000
Revision:
5:7041c827932b
Parent:
4:3605c624b64f
Child:
6:ba32ff34ce87
good

Who changed what in which revision?

UserRevisionLine numberNew 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);
lolopo008 4:3605c624b64f 7 AnalogIn ran(A2);
lolopo008 4:3605c624b64f 8 DigitalIn UnderButton(D7);
lolopo008 4:3605c624b64f 9 DigitalIn UpperButton(D6);
Pumipachpro 0:e282add6146d 10
Pumipachpro 2:8b6312dbfd2f 11 float VR_value0,VR_value1;
lolopo008 5:7041c827932b 12 int Base[10][3][3]= {
lolopo008 5:7041c827932b 13 //[6]=[0]_base1,[1]_base2,[2]_base3,[3]_base4,[4]_base5,[5]_base6 ,[6]_baseSS1 ,[7]_baseSS2,[8]_baseSS3 ,[9]_baseSS4
Pumipachpro 2:8b6312dbfd2f 14 //[3]=[0]_red,[1]_yello,[2]_green
Pumipachpro 2:8b6312dbfd2f 15 {{0x1F,0xFF,0xFF},{0x1F,0x1F,0xFF},{0xFF,0x1F,0xFF}} ,
Pumipachpro 2:8b6312dbfd2f 16 {{0x8F,0xFF,0xFF},{0x8F,0x8F,0xFF},{0xFF,0x8F,0xFF}} ,
Pumipachpro 2:8b6312dbfd2f 17 {{0xC7,0xFF,0xFF},{0xC7,0xC7,0xFF},{0xFF,0xC7,0xFF}} ,
Pumipachpro 2:8b6312dbfd2f 18 {{0xE3,0xFF,0xFF},{0xE3,0xE3,0xFF},{0xFF,0xE3,0xFF}} ,
Pumipachpro 2:8b6312dbfd2f 19 {{0xF1,0xFF,0xFF},{0xF1,0xF1,0xFF},{0xFF,0xF1,0xFF}} ,
lolopo008 5:7041c827932b 20 {{0xF8,0xFF,0xFF},{0xF8,0xF8,0xFF},{0xFF,0xF8,0xFF}} ,
lolopo008 5:7041c827932b 21 {{0x07,0xFF,0xFF},{0x07,0x07,0xFF},{0xFF,0x07,0xFF}} ,
lolopo008 5:7041c827932b 22 {{0x83,0xFF,0xFF},{0x83,0x83,0xFF},{0xFF,0x83,0xFF}} ,
lolopo008 5:7041c827932b 23 {{0xC1,0xFF,0xFF},{0xC1,0xC1,0xFF},{0xFF,0xC1,0xFF}} ,
lolopo008 5:7041c827932b 24 {{0xE0,0xFF,0xFF},{0xE0,0xE0,0xFF},{0xFF,0xE0,0xFF}}
Pumipachpro 2:8b6312dbfd2f 25 };
lolopo008 3:054a677aca64 26 int Row[8]= {1,2,4,8,16,32,64,128};
lolopo008 3:054a677aca64 27 int Col[8]= {127,191,223,239,247,251,253,254};
lolopo008 5:7041c827932b 28 int x,y,up,down,t,way,c,citem,ritem,us,ds,chkss,gitem,sstime,n,i,m;
lolopo008 3:054a677aca64 29
lolopo008 3:054a677aca64 30 void Count()
lolopo008 3:054a677aca64 31 {
lolopo008 3:054a677aca64 32 //3
lolopo008 3:054a677aca64 33 for(c=0; c<3000; c++) {
lolopo008 3:054a677aca64 34 Latch=0;
lolopo008 3:054a677aca64 35 DataPack.write(0xFF);
lolopo008 3:054a677aca64 36 wait_us(1);
lolopo008 3:054a677aca64 37 DataPack.write(0x1F);
lolopo008 3:054a677aca64 38 wait_us(1);
lolopo008 3:054a677aca64 39 DataPack.write(0x1F);
lolopo008 3:054a677aca64 40 wait_us(1);
lolopo008 3:054a677aca64 41 DataPack.write(0x40);
lolopo008 3:054a677aca64 42 wait_us(1);
lolopo008 3:054a677aca64 43 Latch=1;
lolopo008 3:054a677aca64 44
lolopo008 3:054a677aca64 45 Latch=0;
lolopo008 3:054a677aca64 46 DataPack.write(0xFF);
lolopo008 3:054a677aca64 47 wait_us(1);
lolopo008 3:054a677aca64 48 DataPack.write(0x78);
lolopo008 3:054a677aca64 49 wait_us(1);
lolopo008 3:054a677aca64 50 DataPack.write(0x78);
lolopo008 3:054a677aca64 51 wait_us(1);
lolopo008 3:054a677aca64 52 DataPack.write(0x28);
lolopo008 3:054a677aca64 53 wait_us(1);
lolopo008 3:054a677aca64 54 Latch=1;
lolopo008 3:054a677aca64 55
lolopo008 3:054a677aca64 56 Latch=0;
lolopo008 3:054a677aca64 57 DataPack.write(0xFF);
lolopo008 3:054a677aca64 58 wait_us(1);
lolopo008 3:054a677aca64 59 DataPack.write(0x1E);
lolopo008 3:054a677aca64 60 wait_us(1);
lolopo008 3:054a677aca64 61 DataPack.write(0x1E);
lolopo008 3:054a677aca64 62 wait_us(1);
lolopo008 3:054a677aca64 63 DataPack.write(0x14);
lolopo008 3:054a677aca64 64 wait_us(1);
lolopo008 3:054a677aca64 65 Latch=1;
lolopo008 3:054a677aca64 66
lolopo008 3:054a677aca64 67 Latch=0;
lolopo008 3:054a677aca64 68 DataPack.write(0xFF);
lolopo008 3:054a677aca64 69 wait_us(1);
lolopo008 3:054a677aca64 70 DataPack.write(0xF8);
lolopo008 3:054a677aca64 71 wait_us(1);
lolopo008 3:054a677aca64 72 DataPack.write(0xF8);
lolopo008 3:054a677aca64 73 wait_us(1);
lolopo008 3:054a677aca64 74 DataPack.write(0x02);
lolopo008 3:054a677aca64 75 wait_us(1);
lolopo008 3:054a677aca64 76 Latch=1;
lolopo008 3:054a677aca64 77 }
lolopo008 3:054a677aca64 78
lolopo008 3:054a677aca64 79 //2
lolopo008 3:054a677aca64 80 for(c=0; c<2200; c++) {
lolopo008 3:054a677aca64 81 Latch=0;
lolopo008 3:054a677aca64 82 DataPack.write(0xFF);
lolopo008 3:054a677aca64 83 wait_us(1);
lolopo008 3:054a677aca64 84 DataPack.write(0x1F);
lolopo008 3:054a677aca64 85 wait_us(1);
lolopo008 3:054a677aca64 86 DataPack.write(0x1F);
lolopo008 3:054a677aca64 87 wait_us(1);
lolopo008 3:054a677aca64 88 DataPack.write(0x40);
lolopo008 3:054a677aca64 89 wait_us(1);
lolopo008 3:054a677aca64 90 Latch=1;
lolopo008 3:054a677aca64 91
lolopo008 3:054a677aca64 92 Latch=0;
lolopo008 3:054a677aca64 93 DataPack.write(0xFF);
lolopo008 3:054a677aca64 94 wait_us(1);
lolopo008 3:054a677aca64 95 DataPack.write(0xD8);
lolopo008 3:054a677aca64 96 wait_us(1);
lolopo008 3:054a677aca64 97 DataPack.write(0xD8);
lolopo008 3:054a677aca64 98 wait_us(1);
lolopo008 3:054a677aca64 99 DataPack.write(0x20);
lolopo008 3:054a677aca64 100 wait_us(1);
lolopo008 3:054a677aca64 101 Latch=1;
lolopo008 3:054a677aca64 102
lolopo008 3:054a677aca64 103 Latch=0;
lolopo008 3:054a677aca64 104 DataPack.write(0xFF);
lolopo008 3:054a677aca64 105 wait_us(1);
lolopo008 3:054a677aca64 106 DataPack.write(0x1E);
lolopo008 3:054a677aca64 107 wait_us(1);
lolopo008 3:054a677aca64 108 DataPack.write(0x1E);
lolopo008 3:054a677aca64 109 wait_us(1);
lolopo008 3:054a677aca64 110 DataPack.write(0x10);
lolopo008 3:054a677aca64 111 wait_us(1);
lolopo008 3:054a677aca64 112 Latch=1;
lolopo008 3:054a677aca64 113
lolopo008 3:054a677aca64 114 Latch=0;
lolopo008 3:054a677aca64 115 DataPack.write(0xFF);
lolopo008 3:054a677aca64 116 wait_us(1);
lolopo008 3:054a677aca64 117 DataPack.write(0x78);
lolopo008 3:054a677aca64 118 wait_us(1);
lolopo008 3:054a677aca64 119 DataPack.write(0x78);
lolopo008 3:054a677aca64 120 wait_us(1);
lolopo008 3:054a677aca64 121 DataPack.write(0x08);
lolopo008 3:054a677aca64 122 wait_us(1);
lolopo008 3:054a677aca64 123 Latch=1;
lolopo008 3:054a677aca64 124
lolopo008 3:054a677aca64 125 Latch=0;
lolopo008 3:054a677aca64 126 DataPack.write(0xFF);
lolopo008 3:054a677aca64 127 wait_us(1);
lolopo008 3:054a677aca64 128 DataPack.write(0x1B);
lolopo008 3:054a677aca64 129 wait_us(1);
lolopo008 3:054a677aca64 130 DataPack.write(0x1B);
lolopo008 3:054a677aca64 131 wait_us(1);
lolopo008 3:054a677aca64 132 DataPack.write(0x04);
lolopo008 3:054a677aca64 133 wait_us(1);
lolopo008 3:054a677aca64 134 Latch=1;
lolopo008 3:054a677aca64 135
lolopo008 3:054a677aca64 136 Latch=0;
lolopo008 3:054a677aca64 137 DataPack.write(0xFF);
lolopo008 3:054a677aca64 138 wait_us(1);
lolopo008 3:054a677aca64 139 DataPack.write(0xF8);
lolopo008 3:054a677aca64 140 wait_us(1);
lolopo008 3:054a677aca64 141 DataPack.write(0xF8);
lolopo008 3:054a677aca64 142 wait_us(1);
lolopo008 3:054a677aca64 143 DataPack.write(0x02);
lolopo008 3:054a677aca64 144 wait_us(1);
lolopo008 3:054a677aca64 145 Latch=1;
lolopo008 3:054a677aca64 146 }
lolopo008 3:054a677aca64 147
lolopo008 3:054a677aca64 148 //1
lolopo008 3:054a677aca64 149 for(c=0; c<4000; c++) {
lolopo008 3:054a677aca64 150 Latch=0;
lolopo008 3:054a677aca64 151 DataPack.write(0xFF);
lolopo008 3:054a677aca64 152 wait_us(1);
lolopo008 3:054a677aca64 153 DataPack.write(0xBF);
lolopo008 3:054a677aca64 154 wait_us(1);
lolopo008 3:054a677aca64 155 DataPack.write(0xBF);
lolopo008 3:054a677aca64 156 wait_us(1);
lolopo008 3:054a677aca64 157 DataPack.write(0x40);
lolopo008 3:054a677aca64 158 wait_us(1);
lolopo008 3:054a677aca64 159 Latch=1;
lolopo008 3:054a677aca64 160
lolopo008 3:054a677aca64 161 Latch=0;
lolopo008 3:054a677aca64 162 DataPack.write(0xFF);
lolopo008 3:054a677aca64 163 wait_us(1);
lolopo008 3:054a677aca64 164 DataPack.write(0xBD);
lolopo008 3:054a677aca64 165 wait_us(1);
lolopo008 3:054a677aca64 166 DataPack.write(0xBD);
lolopo008 3:054a677aca64 167 wait_us(1);
lolopo008 3:054a677aca64 168 DataPack.write(0x3C);
lolopo008 3:054a677aca64 169 wait_us(1);
lolopo008 3:054a677aca64 170 Latch=1;
lolopo008 3:054a677aca64 171
lolopo008 3:054a677aca64 172 Latch=0;
lolopo008 3:054a677aca64 173 DataPack.write(0xFF);
lolopo008 3:054a677aca64 174 wait_us(1);
lolopo008 3:054a677aca64 175 DataPack.write(0xFD);
lolopo008 3:054a677aca64 176 wait_us(1);
lolopo008 3:054a677aca64 177 DataPack.write(0xFD);
lolopo008 3:054a677aca64 178 wait_us(1);
lolopo008 3:054a677aca64 179 DataPack.write(0x02);
lolopo008 3:054a677aca64 180 wait_us(1);
lolopo008 3:054a677aca64 181 Latch=1;
lolopo008 3:054a677aca64 182 }
lolopo008 3:054a677aca64 183 }
Pumipachpro 2:8b6312dbfd2f 184
Pumipachpro 2:8b6312dbfd2f 185 void BaseColorUnder(int a,int b)
Pumipachpro 2:8b6312dbfd2f 186 {
Pumipachpro 2:8b6312dbfd2f 187 Latch=0;
Pumipachpro 2:8b6312dbfd2f 188 DataPack.write(Base[a][b][0]);
Pumipachpro 2:8b6312dbfd2f 189 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 190 DataPack.write(Base[a][b][1]);
Pumipachpro 2:8b6312dbfd2f 191 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 192 DataPack.write(Base[a][b][2]);
Pumipachpro 2:8b6312dbfd2f 193 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 194 DataPack.write(0x01);
Pumipachpro 2:8b6312dbfd2f 195 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 196 Latch=1;
Pumipachpro 2:8b6312dbfd2f 197 }
Pumipachpro 2:8b6312dbfd2f 198
Pumipachpro 2:8b6312dbfd2f 199 void BaseColorUpper(int a,int b)
Pumipachpro 2:8b6312dbfd2f 200 {
Pumipachpro 2:8b6312dbfd2f 201 Latch=0;
Pumipachpro 2:8b6312dbfd2f 202 DataPack.write(Base[a][b][0]);
Pumipachpro 2:8b6312dbfd2f 203 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 204 DataPack.write(Base[a][b][1]);
Pumipachpro 2:8b6312dbfd2f 205 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 206 DataPack.write(Base[a][b][2]);
Pumipachpro 2:8b6312dbfd2f 207 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 208 DataPack.write(0x80);
Pumipachpro 2:8b6312dbfd2f 209 wait_us(1);
Pumipachpro 2:8b6312dbfd2f 210 Latch=1;
Pumipachpro 2:8b6312dbfd2f 211 }
Pumipachpro 2:8b6312dbfd2f 212
Pumipachpro 2:8b6312dbfd2f 213 //color >> red=0 , yello=1 , green=2
Pumipachpro 2:8b6312dbfd2f 214 int BaseUnder(int color)
Pumipachpro 2:8b6312dbfd2f 215 {
Pumipachpro 2:8b6312dbfd2f 216 VR_value0 = VR0.read();
Pumipachpro 2:8b6312dbfd2f 217 VR_value0 = VR_value0*6;
Pumipachpro 0:e282add6146d 218
Pumipachpro 2:8b6312dbfd2f 219 if(VR_value0<=1) {
Pumipachpro 2:8b6312dbfd2f 220 //base1
Pumipachpro 2:8b6312dbfd2f 221 BaseColorUnder(0,color);
Pumipachpro 2:8b6312dbfd2f 222 return 1;
Pumipachpro 2:8b6312dbfd2f 223 } else if(VR_value0>1&&VR_value0<=2) {
Pumipachpro 2:8b6312dbfd2f 224 //base2
Pumipachpro 2:8b6312dbfd2f 225 BaseColorUnder(1,color);
Pumipachpro 2:8b6312dbfd2f 226 return 2;
Pumipachpro 2:8b6312dbfd2f 227 } else if(VR_value0>2&&VR_value0<=3) {
Pumipachpro 2:8b6312dbfd2f 228 //base3
Pumipachpro 2:8b6312dbfd2f 229 BaseColorUnder(2,color);
Pumipachpro 2:8b6312dbfd2f 230 return 3;
Pumipachpro 2:8b6312dbfd2f 231 } else if(VR_value0>3&&VR_value0<=4) {
Pumipachpro 2:8b6312dbfd2f 232 //base4
Pumipachpro 2:8b6312dbfd2f 233 BaseColorUnder(3,color);
Pumipachpro 2:8b6312dbfd2f 234 return 4;
Pumipachpro 2:8b6312dbfd2f 235 } else if(VR_value0>4&&VR_value0<=5) {
Pumipachpro 2:8b6312dbfd2f 236 //base5
Pumipachpro 2:8b6312dbfd2f 237 BaseColorUnder(4,color);
Pumipachpro 2:8b6312dbfd2f 238 return 5;
Pumipachpro 2:8b6312dbfd2f 239 } else if(VR_value0>5&&VR_value0<=6) {
Pumipachpro 2:8b6312dbfd2f 240 //base4
Pumipachpro 2:8b6312dbfd2f 241 BaseColorUnder(5,color);
Pumipachpro 2:8b6312dbfd2f 242 return 6;
Pumipachpro 2:8b6312dbfd2f 243 }
Pumipachpro 2:8b6312dbfd2f 244 }
Pumipachpro 2:8b6312dbfd2f 245
Pumipachpro 2:8b6312dbfd2f 246 //color >> red=0 , yello=1 , green=2
Pumipachpro 2:8b6312dbfd2f 247 int BaseUpper(int color)
Pumipachpro 2:8b6312dbfd2f 248 {
Pumipachpro 2:8b6312dbfd2f 249 VR_value1 = VR1.read();
Pumipachpro 2:8b6312dbfd2f 250 VR_value1 = VR_value1*6;
Pumipachpro 2:8b6312dbfd2f 251
Pumipachpro 2:8b6312dbfd2f 252 if(VR_value1<=1) {
Pumipachpro 2:8b6312dbfd2f 253 //base1
Pumipachpro 2:8b6312dbfd2f 254 BaseColorUpper(0,color);
Pumipachpro 2:8b6312dbfd2f 255 return 1;
Pumipachpro 2:8b6312dbfd2f 256 } else if(VR_value1>1&&VR_value1<=2) {
Pumipachpro 2:8b6312dbfd2f 257 //base2
Pumipachpro 2:8b6312dbfd2f 258 BaseColorUpper(1,color);
Pumipachpro 2:8b6312dbfd2f 259 return 2;
Pumipachpro 2:8b6312dbfd2f 260 } else if(VR_value1>2&&VR_value1<=3) {
Pumipachpro 2:8b6312dbfd2f 261 //base3
Pumipachpro 2:8b6312dbfd2f 262 BaseColorUpper(2,color);
Pumipachpro 2:8b6312dbfd2f 263 return 3;
Pumipachpro 2:8b6312dbfd2f 264 } else if(VR_value1>3&&VR_value1<=4) {
Pumipachpro 2:8b6312dbfd2f 265 //base4
Pumipachpro 2:8b6312dbfd2f 266 BaseColorUpper(3,color);
Pumipachpro 2:8b6312dbfd2f 267 return 4;
Pumipachpro 2:8b6312dbfd2f 268 } else if(VR_value1>4&&VR_value1<=5) {
Pumipachpro 2:8b6312dbfd2f 269 //base5
Pumipachpro 2:8b6312dbfd2f 270 BaseColorUpper(4,color);
Pumipachpro 2:8b6312dbfd2f 271 return 5;
Pumipachpro 2:8b6312dbfd2f 272 } else if(VR_value1>5&&VR_value1<=6) {
Pumipachpro 2:8b6312dbfd2f 273 //base4
Pumipachpro 2:8b6312dbfd2f 274 BaseColorUpper(5,color);
Pumipachpro 2:8b6312dbfd2f 275 return 6;
Pumipachpro 2:8b6312dbfd2f 276 }
Pumipachpro 2:8b6312dbfd2f 277 }
Pumipachpro 2:8b6312dbfd2f 278
lolopo008 4:3605c624b64f 279 int UnderStart(int color)
lolopo008 4:3605c624b64f 280 {
lolopo008 4:3605c624b64f 281 down=BaseUnder(color);
lolopo008 4:3605c624b64f 282 Latch=0;
lolopo008 4:3605c624b64f 283 DataPack.write(Col[down]);
lolopo008 4:3605c624b64f 284 wait_us(1);
lolopo008 4:3605c624b64f 285 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 286 wait_us(1);
lolopo008 4:3605c624b64f 287 DataPack.write(Col[down]);
lolopo008 4:3605c624b64f 288 wait_us(1);
lolopo008 4:3605c624b64f 289 DataPack.write(Row[1]);
lolopo008 4:3605c624b64f 290 wait_us(1);
lolopo008 4:3605c624b64f 291 Latch=1;
lolopo008 4:3605c624b64f 292 if(UnderButton==1) {
lolopo008 4:3605c624b64f 293 x=down;
lolopo008 4:3605c624b64f 294 return 1;
lolopo008 4:3605c624b64f 295 } else return 0;
lolopo008 4:3605c624b64f 296 }
lolopo008 4:3605c624b64f 297
lolopo008 4:3605c624b64f 298 int UpperStart(int color)
lolopo008 4:3605c624b64f 299 {
lolopo008 4:3605c624b64f 300 up=BaseUpper(color);
lolopo008 4:3605c624b64f 301 Latch=0;
lolopo008 4:3605c624b64f 302 DataPack.write(Col[up]);
lolopo008 4:3605c624b64f 303 wait_us(1);
lolopo008 4:3605c624b64f 304 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 305 wait_us(1);
lolopo008 4:3605c624b64f 306 DataPack.write(Col[up]);
lolopo008 4:3605c624b64f 307 wait_us(1);
lolopo008 4:3605c624b64f 308 DataPack.write(Row[6]);
lolopo008 4:3605c624b64f 309 wait_us(1);
lolopo008 4:3605c624b64f 310 Latch=1;
lolopo008 4:3605c624b64f 311 if(UpperButton==1) {
lolopo008 4:3605c624b64f 312 x=up;
lolopo008 4:3605c624b64f 313 return 1;
lolopo008 4:3605c624b64f 314 } else return 0;
lolopo008 4:3605c624b64f 315 }
lolopo008 4:3605c624b64f 316
lolopo008 4:3605c624b64f 317 void uplose(int x)
lolopo008 4:3605c624b64f 318 {
lolopo008 4:3605c624b64f 319 Latch=0;
lolopo008 4:3605c624b64f 320 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 321 wait_us(1);
lolopo008 4:3605c624b64f 322 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 323 wait_us(1);
lolopo008 4:3605c624b64f 324 DataPack.write(Col[x]);
lolopo008 4:3605c624b64f 325 wait_us(1);
lolopo008 4:3605c624b64f 326 DataPack.write(0x80);
lolopo008 4:3605c624b64f 327 wait_us(1);
lolopo008 4:3605c624b64f 328 Latch=1;
lolopo008 5:7041c827932b 329 wait_ms(300);
lolopo008 4:3605c624b64f 330
lolopo008 4:3605c624b64f 331 }
lolopo008 4:3605c624b64f 332
lolopo008 4:3605c624b64f 333 void downlose(int x)
lolopo008 4:3605c624b64f 334 {
lolopo008 4:3605c624b64f 335 Latch=0;
lolopo008 4:3605c624b64f 336 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 337 wait_us(1);
lolopo008 4:3605c624b64f 338 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 339 wait_us(1);
lolopo008 4:3605c624b64f 340 DataPack.write(Col[x]);
lolopo008 4:3605c624b64f 341 wait_us(1);
lolopo008 4:3605c624b64f 342 DataPack.write(0x01);
lolopo008 4:3605c624b64f 343 wait_us(1);
lolopo008 4:3605c624b64f 344 Latch=1;
lolopo008 5:7041c827932b 345 wait_ms(300);
lolopo008 5:7041c827932b 346 }
lolopo008 5:7041c827932b 347
lolopo008 5:7041c827932b 348 int ranitem_x()
lolopo008 5:7041c827932b 349 {
lolopo008 5:7041c827932b 350 int xrand;
lolopo008 5:7041c827932b 351
lolopo008 5:7041c827932b 352 xrand=ran.read()*1000;
lolopo008 5:7041c827932b 353 xrand=xrand%8;
lolopo008 5:7041c827932b 354
lolopo008 5:7041c827932b 355 return xrand;
lolopo008 5:7041c827932b 356
lolopo008 5:7041c827932b 357 }
lolopo008 5:7041c827932b 358
lolopo008 5:7041c827932b 359 int ranitem_y()
lolopo008 5:7041c827932b 360 {
lolopo008 5:7041c827932b 361 int yrand;
lolopo008 5:7041c827932b 362
lolopo008 5:7041c827932b 363 yrand=ran.read()*1000;
lolopo008 5:7041c827932b 364 yrand=yrand%2;
lolopo008 5:7041c827932b 365
lolopo008 5:7041c827932b 366 if(yrand==0) {
lolopo008 5:7041c827932b 367 yrand=3;
lolopo008 5:7041c827932b 368 } else {
lolopo008 5:7041c827932b 369 yrand=4;
lolopo008 5:7041c827932b 370 }
lolopo008 5:7041c827932b 371
lolopo008 5:7041c827932b 372 return yrand;
lolopo008 5:7041c827932b 373
lolopo008 5:7041c827932b 374 }
lolopo008 5:7041c827932b 375
lolopo008 5:7041c827932b 376 void ranitem(int xrand,int yrand)
lolopo008 5:7041c827932b 377 {
lolopo008 5:7041c827932b 378 Latch=0;
lolopo008 5:7041c827932b 379 DataPack.write(Col[xrand]);
lolopo008 5:7041c827932b 380 wait_us(1);
lolopo008 5:7041c827932b 381 DataPack.write(Col[xrand]);
lolopo008 5:7041c827932b 382 wait_us(1);
lolopo008 5:7041c827932b 383 DataPack.write(Col[xrand]);
lolopo008 5:7041c827932b 384 wait_us(1);
lolopo008 5:7041c827932b 385 DataPack.write(Row[yrand]);
lolopo008 5:7041c827932b 386 wait_us(1);
lolopo008 5:7041c827932b 387 Latch=1;
lolopo008 5:7041c827932b 388 }
lolopo008 5:7041c827932b 389
lolopo008 5:7041c827932b 390 //color >> red=0 , yello=1 , green=2
lolopo008 5:7041c827932b 391 int BaseUnderSS(int color)
lolopo008 5:7041c827932b 392 {
lolopo008 5:7041c827932b 393 VR_value0 = VR0.read();
lolopo008 5:7041c827932b 394 VR_value0 = VR_value0*4;
lolopo008 5:7041c827932b 395
lolopo008 5:7041c827932b 396 if(VR_value0<=1) {
lolopo008 5:7041c827932b 397 //base1
lolopo008 5:7041c827932b 398 BaseColorUnder(6,color);
lolopo008 5:7041c827932b 399 return 1;
lolopo008 5:7041c827932b 400 } else if(VR_value0>1&&VR_value0<=2) {
lolopo008 5:7041c827932b 401 //base2
lolopo008 5:7041c827932b 402 BaseColorUnder(7,color);
lolopo008 5:7041c827932b 403 return 2;
lolopo008 5:7041c827932b 404 } else if(VR_value0>2&&VR_value0<=3) {
lolopo008 5:7041c827932b 405 //base3
lolopo008 5:7041c827932b 406 BaseColorUnder(8,color);
lolopo008 5:7041c827932b 407 return 3;
lolopo008 5:7041c827932b 408 } else if(VR_value0>3&&VR_value0<=4) {
lolopo008 5:7041c827932b 409 //base4
lolopo008 5:7041c827932b 410 BaseColorUnder(9,color);
lolopo008 5:7041c827932b 411 return 4;
lolopo008 5:7041c827932b 412 }
lolopo008 5:7041c827932b 413 }
lolopo008 5:7041c827932b 414
lolopo008 5:7041c827932b 415 //color >> red=0 , yello=1 , green=2
lolopo008 5:7041c827932b 416 int BaseUpperSS(int color)
lolopo008 5:7041c827932b 417 {
lolopo008 5:7041c827932b 418 VR_value1 = VR1.read();
lolopo008 5:7041c827932b 419 VR_value1 = VR_value1*4;
lolopo008 5:7041c827932b 420
lolopo008 5:7041c827932b 421 if(VR_value1<=1) {
lolopo008 5:7041c827932b 422 //base1
lolopo008 5:7041c827932b 423 BaseColorUpper(6,color);
lolopo008 5:7041c827932b 424 return 1;
lolopo008 5:7041c827932b 425 } else if(VR_value1>1&&VR_value1<=2) {
lolopo008 5:7041c827932b 426 //base2
lolopo008 5:7041c827932b 427 BaseColorUpper(7,color);
lolopo008 5:7041c827932b 428 return 2;
lolopo008 5:7041c827932b 429 } else if(VR_value1>2&&VR_value1<=3) {
lolopo008 5:7041c827932b 430 //base3
lolopo008 5:7041c827932b 431 BaseColorUpper(8,color);
lolopo008 5:7041c827932b 432 return 3;
lolopo008 5:7041c827932b 433 } else if(VR_value1>3&&VR_value1<=4) {
lolopo008 5:7041c827932b 434 //base4
lolopo008 5:7041c827932b 435 BaseColorUpper(9,color);
lolopo008 5:7041c827932b 436 return 4;
lolopo008 5:7041c827932b 437 }
lolopo008 4:3605c624b64f 438 }
lolopo008 4:3605c624b64f 439
Pumipachpro 2:8b6312dbfd2f 440 int main()
Pumipachpro 2:8b6312dbfd2f 441 {
lolopo008 3:054a677aca64 442
Pumipachpro 0:e282add6146d 443 DataPack.frequency(100000);
Pumipachpro 0:e282add6146d 444 DataPack.format(8,0);
lolopo008 5:7041c827932b 445
lolopo008 4:3605c624b64f 446 int chk,lifeup=2,lifeun=2;
lolopo008 5:7041c827932b 447 int xrand,yrand;
lolopo008 3:054a677aca64 448
lolopo008 4:3605c624b64f 449 chk=ran.read()*1000;
lolopo008 4:3605c624b64f 450 chk=chk%2;
lolopo008 3:054a677aca64 451
lolopo008 5:7041c827932b 452 Count();
lolopo008 5:7041c827932b 453
lolopo008 4:3605c624b64f 454 while(1) {
lolopo008 5:7041c827932b 455 us=0;
lolopo008 5:7041c827932b 456 ds=0;
lolopo008 5:7041c827932b 457 chkss=0;
lolopo008 5:7041c827932b 458 gitem=0;
lolopo008 5:7041c827932b 459 way=0;
lolopo008 4:3605c624b64f 460 while(1) {
lolopo008 4:3605c624b64f 461 if(chk==0) {
lolopo008 4:3605c624b64f 462 if(UnderStart(lifeun)==1) {
lolopo008 4:3605c624b64f 463 break;
lolopo008 4:3605c624b64f 464 }
lolopo008 4:3605c624b64f 465 BaseUpper(lifeup);
lolopo008 4:3605c624b64f 466 }
lolopo008 4:3605c624b64f 467 if(chk==1) {
lolopo008 4:3605c624b64f 468 if(UpperStart(lifeup)==1) {
lolopo008 4:3605c624b64f 469 break;
lolopo008 4:3605c624b64f 470 }
lolopo008 4:3605c624b64f 471 BaseUnder(lifeun);
lolopo008 3:054a677aca64 472 }
lolopo008 3:054a677aca64 473 }
lolopo008 5:7041c827932b 474
lolopo008 5:7041c827932b 475 citem=0;
lolopo008 5:7041c827932b 476 ritem=ran.read()*1000;
lolopo008 5:7041c827932b 477 ritem=(ritem%5)+1;
lolopo008 5:7041c827932b 478 xrand=ranitem_x();
lolopo008 5:7041c827932b 479 yrand=ranitem_y();
lolopo008 5:7041c827932b 480
lolopo008 4:3605c624b64f 481 while(1) {
lolopo008 4:3605c624b64f 482 if(chk==0) {
lolopo008 4:3605c624b64f 483 for(y=2; y<7; y++) {
lolopo008 4:3605c624b64f 484 if(x>6||x<1) {
lolopo008 4:3605c624b64f 485 way=way*-1;
lolopo008 4:3605c624b64f 486 }
lolopo008 3:054a677aca64 487
lolopo008 4:3605c624b64f 488 x=x+way;
lolopo008 5:7041c827932b 489 for(t=0; t<600; t++) {
lolopo008 5:7041c827932b 490 if(citem>ritem&&gitem!=1) {
lolopo008 5:7041c827932b 491 ranitem(xrand,yrand);
lolopo008 5:7041c827932b 492 chkss=1;
lolopo008 5:7041c827932b 493 }
lolopo008 5:7041c827932b 494
lolopo008 5:7041c827932b 495 Latch=0;
lolopo008 5:7041c827932b 496 DataPack.write(Col[x]);
lolopo008 5:7041c827932b 497 wait_us(1);
lolopo008 5:7041c827932b 498 DataPack.write(0xFF);
lolopo008 5:7041c827932b 499 wait_us(1);
lolopo008 5:7041c827932b 500 DataPack.write(Col[x]);
lolopo008 5:7041c827932b 501 wait_us(1);
lolopo008 5:7041c827932b 502 DataPack.write(Row[y]);
lolopo008 5:7041c827932b 503 wait_us(1);
lolopo008 5:7041c827932b 504 Latch=1;
lolopo008 5:7041c827932b 505
lolopo008 5:7041c827932b 506 if(x==xrand&&y==yrand&&chkss==1&&gitem!=1) {
lolopo008 5:7041c827932b 507 ds=1;
lolopo008 5:7041c827932b 508 gitem=1;
lolopo008 5:7041c827932b 509 sstime=0;
lolopo008 5:7041c827932b 510 }
lolopo008 5:7041c827932b 511
lolopo008 5:7041c827932b 512 if(ds==1) {
lolopo008 5:7041c827932b 513 BaseUnderSS(lifeun);
lolopo008 5:7041c827932b 514 up=BaseUpper(lifeup);
lolopo008 5:7041c827932b 515 } else if(us==1) {
lolopo008 5:7041c827932b 516 BaseUnder(lifeun);
lolopo008 5:7041c827932b 517 up=BaseUpperSS(lifeup);
lolopo008 5:7041c827932b 518 } else {
lolopo008 5:7041c827932b 519 BaseUnder(lifeun);
lolopo008 5:7041c827932b 520 up=BaseUpper(lifeup);
lolopo008 5:7041c827932b 521 }
lolopo008 5:7041c827932b 522 }
lolopo008 5:7041c827932b 523 }
lolopo008 5:7041c827932b 524 chk=1;
lolopo008 5:7041c827932b 525 }
lolopo008 5:7041c827932b 526 if(us==1) {
lolopo008 5:7041c827932b 527 if(x==0) {
lolopo008 5:7041c827932b 528 if(up>1) {
lolopo008 5:7041c827932b 529 lifeup=lifeup-1;
lolopo008 5:7041c827932b 530 uplose(x);
lolopo008 5:7041c827932b 531 break;
lolopo008 5:7041c827932b 532 }
lolopo008 5:7041c827932b 533 way=-1;
lolopo008 5:7041c827932b 534 }
lolopo008 5:7041c827932b 535 if(x==1) {
lolopo008 5:7041c827932b 536 if(up>2) {
lolopo008 5:7041c827932b 537 lifeup=lifeup-1;
lolopo008 5:7041c827932b 538 uplose(x);
lolopo008 5:7041c827932b 539 break;
lolopo008 5:7041c827932b 540 } else if(up==1) {
lolopo008 5:7041c827932b 541 way=-1;
lolopo008 5:7041c827932b 542 } else way=-1;
lolopo008 5:7041c827932b 543 }
lolopo008 5:7041c827932b 544 if(x==2) {
lolopo008 5:7041c827932b 545 if(up>3) {
lolopo008 5:7041c827932b 546 lifeup=lifeup-1;
lolopo008 5:7041c827932b 547 uplose(x);
lolopo008 5:7041c827932b 548 break;
lolopo008 5:7041c827932b 549 } else if(up==1) {
lolopo008 5:7041c827932b 550 way=0;
lolopo008 5:7041c827932b 551 } else if(up==2) {
lolopo008 5:7041c827932b 552 way=-1;
lolopo008 5:7041c827932b 553 } else way=-1;
lolopo008 5:7041c827932b 554 }
lolopo008 5:7041c827932b 555 if(x==3) {
lolopo008 5:7041c827932b 556 if(up==1) {
lolopo008 5:7041c827932b 557 way=1;
lolopo008 5:7041c827932b 558 } else if(up==2) {
lolopo008 5:7041c827932b 559 way=0;
lolopo008 5:7041c827932b 560 } else if(up==3) {
lolopo008 5:7041c827932b 561 way=-1;
lolopo008 5:7041c827932b 562 } else way=-1;
lolopo008 5:7041c827932b 563 }
lolopo008 5:7041c827932b 564 if(x==4) {
lolopo008 5:7041c827932b 565 if(up==1) {
lolopo008 5:7041c827932b 566 way=1;
lolopo008 5:7041c827932b 567 } else if(up==2) {
lolopo008 5:7041c827932b 568 way=1;
lolopo008 5:7041c827932b 569 } else if(up==3) {
lolopo008 5:7041c827932b 570 way=0;
lolopo008 5:7041c827932b 571 } else way=-1;
lolopo008 5:7041c827932b 572 }
lolopo008 5:7041c827932b 573 if(x==5) {
lolopo008 5:7041c827932b 574 if(up<2) {
lolopo008 5:7041c827932b 575 lifeup=lifeup-1;
lolopo008 5:7041c827932b 576 uplose(x);
lolopo008 5:7041c827932b 577 break;
lolopo008 5:7041c827932b 578 } else if(up==2) {
lolopo008 5:7041c827932b 579 way=1;
lolopo008 5:7041c827932b 580 } else if(up==3) {
lolopo008 5:7041c827932b 581 way=1;
lolopo008 5:7041c827932b 582 } else way=0;
lolopo008 5:7041c827932b 583 }
lolopo008 5:7041c827932b 584 if(x==6) {
lolopo008 5:7041c827932b 585 if(up<3) {
lolopo008 5:7041c827932b 586 lifeup=lifeup-1;
lolopo008 5:7041c827932b 587 uplose(x);
lolopo008 5:7041c827932b 588 break;
lolopo008 5:7041c827932b 589 } else if(up==3) {
lolopo008 5:7041c827932b 590 way=1;
lolopo008 5:7041c827932b 591 } else way=1;
lolopo008 5:7041c827932b 592 }
lolopo008 5:7041c827932b 593 if(x==7) {
lolopo008 5:7041c827932b 594 if(up<4) {
lolopo008 5:7041c827932b 595 lifeup=lifeup-1;
lolopo008 5:7041c827932b 596 uplose(x);
lolopo008 5:7041c827932b 597 break;
lolopo008 5:7041c827932b 598 }
lolopo008 5:7041c827932b 599 way=1;
lolopo008 5:7041c827932b 600 }
lolopo008 5:7041c827932b 601 } else {
lolopo008 5:7041c827932b 602 if(x==0) {
lolopo008 5:7041c827932b 603 if(up>1) {
lolopo008 5:7041c827932b 604 lifeup=lifeup-1;
lolopo008 5:7041c827932b 605 uplose(x);
lolopo008 5:7041c827932b 606 break;
lolopo008 5:7041c827932b 607 }
lolopo008 5:7041c827932b 608 way=-1;
lolopo008 5:7041c827932b 609 }
lolopo008 5:7041c827932b 610 if(x==1) {
lolopo008 5:7041c827932b 611 if(up>2) {
lolopo008 5:7041c827932b 612 lifeup=lifeup-1;
lolopo008 5:7041c827932b 613 uplose(x);
lolopo008 5:7041c827932b 614 break;
lolopo008 5:7041c827932b 615 } else if(up==1) {
lolopo008 5:7041c827932b 616 way=0;
lolopo008 5:7041c827932b 617 } else way=-1;
lolopo008 5:7041c827932b 618 }
lolopo008 5:7041c827932b 619 if(x==2) {
lolopo008 5:7041c827932b 620 if(up>3) {
lolopo008 5:7041c827932b 621 lifeup=lifeup-1;
lolopo008 5:7041c827932b 622 uplose(x);
lolopo008 5:7041c827932b 623 break;
lolopo008 5:7041c827932b 624 } else if(up==1) {
lolopo008 5:7041c827932b 625 way=1;
lolopo008 5:7041c827932b 626 } else if(up==2) {
lolopo008 5:7041c827932b 627 way=0;
lolopo008 5:7041c827932b 628 } else way=-1;
lolopo008 5:7041c827932b 629 }
lolopo008 5:7041c827932b 630 if(x==3) {
lolopo008 5:7041c827932b 631 if(up<2||up>4) {
lolopo008 5:7041c827932b 632 lifeup=lifeup-1;
lolopo008 5:7041c827932b 633 uplose(x);
lolopo008 5:7041c827932b 634 break;
lolopo008 5:7041c827932b 635 } else if(up==2) {
lolopo008 5:7041c827932b 636 way=1;
lolopo008 5:7041c827932b 637 } else if(up==3) {
lolopo008 5:7041c827932b 638 way=0;
lolopo008 5:7041c827932b 639 } else way=-1;
lolopo008 5:7041c827932b 640 }
lolopo008 5:7041c827932b 641 if(x==4) {
lolopo008 5:7041c827932b 642 if(up<3||up>5) {
lolopo008 5:7041c827932b 643 lifeup=lifeup-1;
lolopo008 5:7041c827932b 644 uplose(x);
lolopo008 5:7041c827932b 645 break;
lolopo008 5:7041c827932b 646 } else if(up==3) {
lolopo008 5:7041c827932b 647 way=1;
lolopo008 5:7041c827932b 648 } else if(up==4) {
lolopo008 5:7041c827932b 649 way=0;
lolopo008 5:7041c827932b 650 } else way=-1;
lolopo008 5:7041c827932b 651 }
lolopo008 5:7041c827932b 652 if(x==5) {
lolopo008 5:7041c827932b 653 if(up<4) {
lolopo008 5:7041c827932b 654 lifeup=lifeup-1;
lolopo008 5:7041c827932b 655 uplose(x);
lolopo008 5:7041c827932b 656 break;
lolopo008 5:7041c827932b 657 } else if(up==4) {
lolopo008 5:7041c827932b 658 way=1;
lolopo008 5:7041c827932b 659 } else if(up==5) {
lolopo008 5:7041c827932b 660 way=0;
lolopo008 5:7041c827932b 661 } else way=-1;
lolopo008 5:7041c827932b 662 }
lolopo008 5:7041c827932b 663 if(x==6) {
lolopo008 5:7041c827932b 664 if(up<5) {
lolopo008 5:7041c827932b 665 lifeup=lifeup-1;
lolopo008 5:7041c827932b 666 uplose(x);
lolopo008 5:7041c827932b 667 break;
lolopo008 5:7041c827932b 668 } else if(up==5) {
lolopo008 5:7041c827932b 669 way=1;
lolopo008 5:7041c827932b 670 } else way=0;
lolopo008 5:7041c827932b 671 }
lolopo008 5:7041c827932b 672 if(x==7) {
lolopo008 5:7041c827932b 673 if(up<6) {
lolopo008 5:7041c827932b 674 lifeup=lifeup-1;
lolopo008 5:7041c827932b 675 uplose(x);
lolopo008 5:7041c827932b 676 break;
lolopo008 5:7041c827932b 677 }
lolopo008 5:7041c827932b 678 way=1;
lolopo008 5:7041c827932b 679 }
lolopo008 5:7041c827932b 680 }
lolopo008 5:7041c827932b 681 citem++;
lolopo008 5:7041c827932b 682 sstime++;
lolopo008 5:7041c827932b 683 if(sstime==5) {
lolopo008 5:7041c827932b 684 us=0;
lolopo008 5:7041c827932b 685 ds=0;
lolopo008 5:7041c827932b 686 chkss=0;
lolopo008 5:7041c827932b 687 gitem=0;
lolopo008 5:7041c827932b 688 citem=0;
lolopo008 5:7041c827932b 689 ritem=ran.read()*1000;
lolopo008 5:7041c827932b 690 ritem=(ritem%5)+1;
lolopo008 5:7041c827932b 691 xrand=ranitem_x();
lolopo008 5:7041c827932b 692 yrand=ranitem_y();
lolopo008 5:7041c827932b 693 }
lolopo008 5:7041c827932b 694
lolopo008 5:7041c827932b 695
lolopo008 5:7041c827932b 696 if(chk==1) {
lolopo008 5:7041c827932b 697 for(y=5; y>0; y--) {
lolopo008 5:7041c827932b 698
lolopo008 5:7041c827932b 699 if(x>6||x<1) {
lolopo008 5:7041c827932b 700 way=way*-1;
lolopo008 5:7041c827932b 701 }
lolopo008 5:7041c827932b 702
lolopo008 5:7041c827932b 703 x=x+way;
lolopo008 5:7041c827932b 704 for(t=0; t<600; t++) {
lolopo008 5:7041c827932b 705 if(citem>ritem&&gitem!=1) {
lolopo008 5:7041c827932b 706 ranitem(xrand,yrand);
lolopo008 5:7041c827932b 707 chkss=1;
lolopo008 5:7041c827932b 708 }
lolopo008 4:3605c624b64f 709
lolopo008 4:3605c624b64f 710 Latch=0;
lolopo008 4:3605c624b64f 711 DataPack.write(Col[x]);
lolopo008 4:3605c624b64f 712 wait_us(1);
lolopo008 4:3605c624b64f 713 DataPack.write(0xFF);
lolopo008 4:3605c624b64f 714 wait_us(1);
lolopo008 4:3605c624b64f 715 DataPack.write(Col[x]);
lolopo008 4:3605c624b64f 716 wait_us(1);
lolopo008 4:3605c624b64f 717 DataPack.write(Row[y]);
lolopo008 4:3605c624b64f 718 wait_us(1);
lolopo008 4:3605c624b64f 719 Latch=1;
lolopo008 5:7041c827932b 720
lolopo008 5:7041c827932b 721 if(x==xrand&&y==yrand&&chkss==1&&gitem!=1) {
lolopo008 5:7041c827932b 722 us=1;
lolopo008 5:7041c827932b 723 gitem=1;
lolopo008 5:7041c827932b 724 sstime=0;
lolopo008 5:7041c827932b 725 }
lolopo008 4:3605c624b64f 726
lolopo008 5:7041c827932b 727 if(ds==1) {
lolopo008 5:7041c827932b 728 down=BaseUnderSS(lifeun);
lolopo008 5:7041c827932b 729 BaseUpper(lifeup);
lolopo008 5:7041c827932b 730 } else if(us==1) {
lolopo008 5:7041c827932b 731 down=BaseUnder(lifeun);
lolopo008 5:7041c827932b 732 BaseUpperSS(lifeup);
lolopo008 5:7041c827932b 733 } else {
lolopo008 5:7041c827932b 734 down=BaseUnder(lifeun);
lolopo008 5:7041c827932b 735 BaseUpper(lifeup);
lolopo008 5:7041c827932b 736 }
lolopo008 4:3605c624b64f 737 }
lolopo008 4:3605c624b64f 738 }
lolopo008 4:3605c624b64f 739 chk=0;
lolopo008 3:054a677aca64 740 }
lolopo008 5:7041c827932b 741 if(ds==1) {
lolopo008 5:7041c827932b 742 if(x==0) {
lolopo008 5:7041c827932b 743 if(down>1) {
lolopo008 5:7041c827932b 744 lifeun=lifeun-1;
lolopo008 5:7041c827932b 745 downlose(x);
lolopo008 5:7041c827932b 746 break;
lolopo008 5:7041c827932b 747 }
lolopo008 5:7041c827932b 748 way=-1;
lolopo008 5:7041c827932b 749 }
lolopo008 5:7041c827932b 750 if(x==1) {
lolopo008 5:7041c827932b 751 if(down>2) {
lolopo008 5:7041c827932b 752 lifeun=lifeun-1;
lolopo008 5:7041c827932b 753 downlose(x);
lolopo008 5:7041c827932b 754 break;
lolopo008 5:7041c827932b 755 } else if(down==1) {
lolopo008 5:7041c827932b 756 way=-1;
lolopo008 5:7041c827932b 757 } else way=-1;
lolopo008 5:7041c827932b 758 }
lolopo008 5:7041c827932b 759 if(x==2) {
lolopo008 5:7041c827932b 760 if(down>3) {
lolopo008 5:7041c827932b 761 lifeun=lifeun-1;
lolopo008 5:7041c827932b 762 downlose(x);
lolopo008 5:7041c827932b 763 break;
lolopo008 5:7041c827932b 764 } else if(down==1) {
lolopo008 5:7041c827932b 765 way=0;
lolopo008 5:7041c827932b 766 } else if(down==2) {
lolopo008 5:7041c827932b 767 way=-1;
lolopo008 5:7041c827932b 768 } else way=-1;
lolopo008 4:3605c624b64f 769 }
lolopo008 5:7041c827932b 770 if(x==3) {
lolopo008 5:7041c827932b 771 if(down==1) {
lolopo008 5:7041c827932b 772 way=1;
lolopo008 5:7041c827932b 773 } else if(down==2) {
lolopo008 5:7041c827932b 774 way=0;
lolopo008 5:7041c827932b 775 } else if(down==3) {
lolopo008 5:7041c827932b 776 way=-1;
lolopo008 5:7041c827932b 777 } else way=-1;
lolopo008 5:7041c827932b 778 }
lolopo008 5:7041c827932b 779 if(x==4) {
lolopo008 5:7041c827932b 780 if(down==1) {
lolopo008 5:7041c827932b 781 way=1;
lolopo008 5:7041c827932b 782 } else if(down==2) {
lolopo008 5:7041c827932b 783 way=1;
lolopo008 5:7041c827932b 784 } else if(down==3) {
lolopo008 5:7041c827932b 785 way=0;
lolopo008 5:7041c827932b 786 } else way=-1;
lolopo008 5:7041c827932b 787 }
lolopo008 5:7041c827932b 788 if(x==5) {
lolopo008 5:7041c827932b 789 if(down<2) {
lolopo008 5:7041c827932b 790 lifeun=lifeun-1;
lolopo008 5:7041c827932b 791 downlose(x);
lolopo008 5:7041c827932b 792 break;
lolopo008 5:7041c827932b 793 } else if(down==2) {
lolopo008 5:7041c827932b 794 way=1;
lolopo008 5:7041c827932b 795 } else if(down==3) {
lolopo008 5:7041c827932b 796 way=1;
lolopo008 5:7041c827932b 797 } else way=0;
lolopo008 5:7041c827932b 798 }
lolopo008 5:7041c827932b 799 if(x==6) {
lolopo008 5:7041c827932b 800 if(down<3) {
lolopo008 5:7041c827932b 801 lifeun=lifeun-1;
lolopo008 5:7041c827932b 802 downlose(x);
lolopo008 5:7041c827932b 803 break;
lolopo008 5:7041c827932b 804 } else if(down==3) {
lolopo008 5:7041c827932b 805 way=1;
lolopo008 5:7041c827932b 806 } else way=1;
lolopo008 5:7041c827932b 807 }
lolopo008 5:7041c827932b 808 if(x==7) {
lolopo008 5:7041c827932b 809 if(down<4) {
lolopo008 5:7041c827932b 810 lifeun=lifeun-1;
lolopo008 5:7041c827932b 811 downlose(x);
lolopo008 5:7041c827932b 812 break;
lolopo008 5:7041c827932b 813 }
lolopo008 4:3605c624b64f 814 way=1;
lolopo008 5:7041c827932b 815 }
lolopo008 5:7041c827932b 816 } else {
lolopo008 5:7041c827932b 817 if(x==0) {
lolopo008 5:7041c827932b 818 if(down>1) {
lolopo008 5:7041c827932b 819 lifeun=lifeun-1;
lolopo008 5:7041c827932b 820 downlose(x);
lolopo008 5:7041c827932b 821 break;
lolopo008 5:7041c827932b 822 }
lolopo008 5:7041c827932b 823 way=-1;
lolopo008 5:7041c827932b 824 }
lolopo008 5:7041c827932b 825 if(x==1) {
lolopo008 5:7041c827932b 826 if(down>2) {
lolopo008 5:7041c827932b 827 lifeun=lifeun-1;
lolopo008 5:7041c827932b 828 downlose(x);
lolopo008 5:7041c827932b 829 break;
lolopo008 5:7041c827932b 830 } else if(down==1) {
lolopo008 5:7041c827932b 831 way=0;
lolopo008 5:7041c827932b 832 } else way=-1;
lolopo008 5:7041c827932b 833 }
lolopo008 5:7041c827932b 834 if(x==2) {
lolopo008 5:7041c827932b 835 if(down>3) {
lolopo008 5:7041c827932b 836 lifeun=lifeun-1;
lolopo008 5:7041c827932b 837 downlose(x);
lolopo008 5:7041c827932b 838 break;
lolopo008 5:7041c827932b 839 } else if(down==1) {
lolopo008 5:7041c827932b 840 way=1;
lolopo008 5:7041c827932b 841 } else if(down==2) {
lolopo008 5:7041c827932b 842 way=0;
lolopo008 5:7041c827932b 843 } else way=-1;
lolopo008 5:7041c827932b 844 }
lolopo008 5:7041c827932b 845 if(x==3) {
lolopo008 5:7041c827932b 846 if(down<2||down>4) {
lolopo008 5:7041c827932b 847 lifeun=lifeun-1;
lolopo008 5:7041c827932b 848 downlose(x);
lolopo008 5:7041c827932b 849 break;
lolopo008 5:7041c827932b 850 } else if(down==2) {
lolopo008 5:7041c827932b 851 way=1;
lolopo008 5:7041c827932b 852 } else if(down==3) {
lolopo008 5:7041c827932b 853 way=0;
lolopo008 5:7041c827932b 854 } else way=-1;
lolopo008 5:7041c827932b 855 }
lolopo008 5:7041c827932b 856 if(x==4) {
lolopo008 5:7041c827932b 857 if(down<3||down>5) {
lolopo008 5:7041c827932b 858 lifeun=lifeun-1;
lolopo008 5:7041c827932b 859 downlose(x);
lolopo008 5:7041c827932b 860 break;
lolopo008 5:7041c827932b 861 } else if(down==3) {
lolopo008 5:7041c827932b 862 way=1;
lolopo008 5:7041c827932b 863 } else if(down==4) {
lolopo008 5:7041c827932b 864 way=0;
lolopo008 5:7041c827932b 865 } else way=-1;
lolopo008 5:7041c827932b 866 }
lolopo008 5:7041c827932b 867 if(x==5) {
lolopo008 5:7041c827932b 868 if(down<4) {
lolopo008 5:7041c827932b 869 lifeun=lifeun-1;
lolopo008 5:7041c827932b 870 downlose(x);
lolopo008 5:7041c827932b 871 break;
lolopo008 5:7041c827932b 872 } else if(down==4) {
lolopo008 5:7041c827932b 873 way=1;
lolopo008 5:7041c827932b 874 } else if(down==5) {
lolopo008 5:7041c827932b 875 way=0;
lolopo008 5:7041c827932b 876 } else way=-1;
lolopo008 5:7041c827932b 877 }
lolopo008 5:7041c827932b 878 if(x==6) {
lolopo008 5:7041c827932b 879 if(down<5) {
lolopo008 5:7041c827932b 880 lifeun=lifeun-1;
lolopo008 5:7041c827932b 881 downlose(x);
lolopo008 5:7041c827932b 882 break;
lolopo008 5:7041c827932b 883 } else if(down==5) {
lolopo008 5:7041c827932b 884 way=1;
lolopo008 5:7041c827932b 885 } else way=0;
lolopo008 5:7041c827932b 886 }
lolopo008 5:7041c827932b 887 if(x==7) {
lolopo008 5:7041c827932b 888 if(down<6) {
lolopo008 5:7041c827932b 889 lifeun=lifeun-1;
lolopo008 5:7041c827932b 890 downlose(x);
lolopo008 5:7041c827932b 891 break;
lolopo008 5:7041c827932b 892 }
lolopo008 4:3605c624b64f 893 way=1;
lolopo008 5:7041c827932b 894 }
lolopo008 4:3605c624b64f 895 }
lolopo008 5:7041c827932b 896
lolopo008 5:7041c827932b 897 citem++;
lolopo008 5:7041c827932b 898 sstime++;
lolopo008 5:7041c827932b 899 if(sstime==5) {
lolopo008 5:7041c827932b 900 us=0;
lolopo008 5:7041c827932b 901 ds=0;
lolopo008 5:7041c827932b 902 chkss=0;
lolopo008 5:7041c827932b 903 gitem=0;
lolopo008 5:7041c827932b 904 citem=0;
lolopo008 5:7041c827932b 905 ritem=ran.read()*1000;
lolopo008 5:7041c827932b 906 ritem=(ritem%5)+1;
lolopo008 5:7041c827932b 907 xrand=ranitem_x();
lolopo008 5:7041c827932b 908 yrand=ranitem_y();
lolopo008 4:3605c624b64f 909 }
lolopo008 4:3605c624b64f 910
lolopo008 3:054a677aca64 911 }
lolopo008 4:3605c624b64f 912 if(lifeup<0) {
lolopo008 4:3605c624b64f 913 while(UnderButton==0&&UpperButton==0) {
lolopo008 5:7041c827932b 914 Latch=0;
lolopo008 5:7041c827932b 915 DataPack.write(0xE7);
lolopo008 5:7041c827932b 916 wait_us(1);
lolopo008 5:7041c827932b 917 DataPack.write(0xFF);
lolopo008 5:7041c827932b 918 wait_us(1);
lolopo008 5:7041c827932b 919 DataPack.write(0xFF);
lolopo008 5:7041c827932b 920 wait_us(1);
lolopo008 5:7041c827932b 921 DataPack.write(0x18);
lolopo008 5:7041c827932b 922 Latch=1;
lolopo008 5:7041c827932b 923 wait_ms(100);
lolopo008 4:3605c624b64f 924
lolopo008 5:7041c827932b 925 Latch=0;
lolopo008 5:7041c827932b 926 DataPack.write(0xC3);
lolopo008 5:7041c827932b 927 wait_us(1);
lolopo008 5:7041c827932b 928 DataPack.write(0xFF);
lolopo008 5:7041c827932b 929 wait_us(1);
lolopo008 5:7041c827932b 930 DataPack.write(0xFF);
lolopo008 5:7041c827932b 931 wait_us(1);
lolopo008 5:7041c827932b 932 DataPack.write(0x3C);
lolopo008 5:7041c827932b 933 Latch=1;
lolopo008 5:7041c827932b 934 wait_ms(100);
lolopo008 5:7041c827932b 935
lolopo008 5:7041c827932b 936 Latch=0;
lolopo008 5:7041c827932b 937 DataPack.write(0x81);
lolopo008 5:7041c827932b 938 wait_us(1);
lolopo008 5:7041c827932b 939 DataPack.write(0xFF);
lolopo008 5:7041c827932b 940 wait_us(1);
lolopo008 5:7041c827932b 941 DataPack.write(0xFF);
lolopo008 5:7041c827932b 942 wait_us(1);
lolopo008 5:7041c827932b 943 DataPack.write(0x7E);
lolopo008 5:7041c827932b 944 Latch=1;
lolopo008 5:7041c827932b 945 wait_ms(100);
lolopo008 5:7041c827932b 946
lolopo008 5:7041c827932b 947 Latch=0;
lolopo008 5:7041c827932b 948 DataPack.write(0x00);
lolopo008 5:7041c827932b 949 wait_us(1);
lolopo008 5:7041c827932b 950 DataPack.write(0xFF);
lolopo008 5:7041c827932b 951 wait_us(1);
lolopo008 5:7041c827932b 952 DataPack.write(0xFF);
lolopo008 5:7041c827932b 953 wait_us(1);
lolopo008 5:7041c827932b 954 DataPack.write(0xFF);
lolopo008 5:7041c827932b 955 Latch=1;
lolopo008 5:7041c827932b 956 wait_ms(100);
lolopo008 5:7041c827932b 957
lolopo008 5:7041c827932b 958 for(i=0; i<500; i++) {
lolopo008 5:7041c827932b 959 Latch=0;
lolopo008 5:7041c827932b 960 DataPack.write(0x00);
lolopo008 5:7041c827932b 961 wait_us(1);
lolopo008 5:7041c827932b 962 DataPack.write(0xFF);
lolopo008 5:7041c827932b 963 wait_us(1);
lolopo008 5:7041c827932b 964 DataPack.write(0xFF);
lolopo008 5:7041c827932b 965 wait_us(1);
lolopo008 5:7041c827932b 966 DataPack.write(0xE7);
lolopo008 5:7041c827932b 967 wait_us(1);
lolopo008 5:7041c827932b 968 Latch=1;
lolopo008 5:7041c827932b 969 Latch=0;
lolopo008 5:7041c827932b 970 DataPack.write(0x18);
lolopo008 5:7041c827932b 971 wait_us(1);
lolopo008 5:7041c827932b 972 DataPack.write(0xFF);
lolopo008 5:7041c827932b 973 wait_us(1);
lolopo008 5:7041c827932b 974 DataPack.write(0xFF);
lolopo008 5:7041c827932b 975 wait_us(1);
lolopo008 5:7041c827932b 976 DataPack.write(0x18);
lolopo008 5:7041c827932b 977 wait_us(1);
lolopo008 5:7041c827932b 978 Latch=1;
lolopo008 5:7041c827932b 979 }
lolopo008 5:7041c827932b 980
lolopo008 5:7041c827932b 981 for(m=0; m<500; m++) {
lolopo008 5:7041c827932b 982 Latch=0;
lolopo008 5:7041c827932b 983 DataPack.write(0x00);
lolopo008 5:7041c827932b 984 wait_us(1);
lolopo008 5:7041c827932b 985 DataPack.write(0xFF);
lolopo008 5:7041c827932b 986 wait_us(1);
lolopo008 5:7041c827932b 987 DataPack.write(0xFF);
lolopo008 5:7041c827932b 988 wait_us(1);
lolopo008 5:7041c827932b 989 DataPack.write(0xC3);
lolopo008 5:7041c827932b 990 wait_us(1);
lolopo008 5:7041c827932b 991 Latch=1;
lolopo008 5:7041c827932b 992 Latch=0;
lolopo008 5:7041c827932b 993 DataPack.write(0x3C);
lolopo008 5:7041c827932b 994 wait_us(1);
lolopo008 5:7041c827932b 995 DataPack.write(0xFF);
lolopo008 5:7041c827932b 996 wait_us(1);
lolopo008 5:7041c827932b 997 DataPack.write(0xFF);
lolopo008 5:7041c827932b 998 wait_us(1);
lolopo008 5:7041c827932b 999 DataPack.write(0x3C);
lolopo008 5:7041c827932b 1000 wait_us(1);
lolopo008 5:7041c827932b 1001 Latch=1;
lolopo008 5:7041c827932b 1002 }
lolopo008 5:7041c827932b 1003
lolopo008 5:7041c827932b 1004 for(n=0; n<500; n++) {
lolopo008 5:7041c827932b 1005 Latch=0;
lolopo008 5:7041c827932b 1006 DataPack.write(0x00);
lolopo008 5:7041c827932b 1007 wait_us(1);
lolopo008 5:7041c827932b 1008 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1009 wait_us(1);
lolopo008 5:7041c827932b 1010 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1011 wait_us(1);
lolopo008 5:7041c827932b 1012 DataPack.write(0x81);
lolopo008 5:7041c827932b 1013 wait_us(1);
lolopo008 5:7041c827932b 1014 Latch=1;
lolopo008 5:7041c827932b 1015 Latch=0;
lolopo008 5:7041c827932b 1016 DataPack.write(0x7E);
lolopo008 5:7041c827932b 1017 wait_us(1);
lolopo008 5:7041c827932b 1018 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1019 wait_us(1);
lolopo008 5:7041c827932b 1020 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1021 wait_us(1);
lolopo008 5:7041c827932b 1022 DataPack.write(0x7E);
lolopo008 5:7041c827932b 1023 wait_us(1);
lolopo008 5:7041c827932b 1024 Latch=1;
lolopo008 5:7041c827932b 1025 }
lolopo008 5:7041c827932b 1026
lolopo008 5:7041c827932b 1027 Latch=0;
lolopo008 5:7041c827932b 1028 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1029 wait_us(1);
lolopo008 5:7041c827932b 1030 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1031 wait_us(1);
lolopo008 5:7041c827932b 1032 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1033 wait_us(1);
lolopo008 5:7041c827932b 1034 DataPack.write(0x00);
lolopo008 5:7041c827932b 1035 wait_us(1);
lolopo008 5:7041c827932b 1036 Latch=1;
lolopo008 5:7041c827932b 1037 wait_ms(100);
lolopo008 4:3605c624b64f 1038 }
lolopo008 4:3605c624b64f 1039 lifeup=2;
lolopo008 4:3605c624b64f 1040 lifeun=2;
lolopo008 5:7041c827932b 1041 wait_ms(500);
lolopo008 5:7041c827932b 1042 Count();
lolopo008 3:054a677aca64 1043 }
lolopo008 4:3605c624b64f 1044 if(lifeun<0) {
lolopo008 4:3605c624b64f 1045 while(UnderButton==0&&UpperButton==0) {
lolopo008 5:7041c827932b 1046 Latch=0;
lolopo008 5:7041c827932b 1047 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1048 wait_us(1);
lolopo008 5:7041c827932b 1049 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1050 wait_us(1);
lolopo008 5:7041c827932b 1051 DataPack.write(0xE7);
lolopo008 5:7041c827932b 1052 wait_us(1);
lolopo008 5:7041c827932b 1053 DataPack.write(0x18);
lolopo008 5:7041c827932b 1054 Latch=1;
lolopo008 5:7041c827932b 1055 wait_ms(100);
lolopo008 4:3605c624b64f 1056
lolopo008 5:7041c827932b 1057 Latch=0;
lolopo008 5:7041c827932b 1058 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1059 wait_us(1);
lolopo008 5:7041c827932b 1060 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1061 wait_us(1);
lolopo008 5:7041c827932b 1062 DataPack.write(0xC3);
lolopo008 5:7041c827932b 1063 wait_us(1);
lolopo008 5:7041c827932b 1064 DataPack.write(0x3C);
lolopo008 5:7041c827932b 1065 Latch=1;
lolopo008 5:7041c827932b 1066 wait_ms(100);
lolopo008 5:7041c827932b 1067
lolopo008 5:7041c827932b 1068 Latch=0;
lolopo008 5:7041c827932b 1069 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1070 wait_us(1);
lolopo008 5:7041c827932b 1071 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1072 wait_us(1);
lolopo008 5:7041c827932b 1073 DataPack.write(0x81);
lolopo008 5:7041c827932b 1074 wait_us(1);
lolopo008 5:7041c827932b 1075 DataPack.write(0x7E);
lolopo008 5:7041c827932b 1076 Latch=1;
lolopo008 5:7041c827932b 1077 wait_ms(100);
lolopo008 5:7041c827932b 1078
lolopo008 5:7041c827932b 1079 Latch=0;
lolopo008 5:7041c827932b 1080 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1081 wait_us(1);
lolopo008 5:7041c827932b 1082 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1083 wait_us(1);
lolopo008 5:7041c827932b 1084 DataPack.write(0x00);
lolopo008 5:7041c827932b 1085 wait_us(1);
lolopo008 5:7041c827932b 1086 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1087 Latch=1;
lolopo008 5:7041c827932b 1088 wait_ms(100);
lolopo008 5:7041c827932b 1089
lolopo008 5:7041c827932b 1090 for(i=0; i<500; i++) {
lolopo008 5:7041c827932b 1091 Latch=0;
lolopo008 5:7041c827932b 1092 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1093 wait_us(1);
lolopo008 5:7041c827932b 1094 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1095 wait_us(1);
lolopo008 5:7041c827932b 1096 DataPack.write(0x00);
lolopo008 5:7041c827932b 1097 wait_us(1);
lolopo008 5:7041c827932b 1098 DataPack.write(0xE7);
lolopo008 5:7041c827932b 1099 wait_us(1);
lolopo008 5:7041c827932b 1100 Latch=1;
lolopo008 5:7041c827932b 1101 Latch=0;
lolopo008 5:7041c827932b 1102 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1103 wait_us(1);
lolopo008 5:7041c827932b 1104 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1105 wait_us(1);
lolopo008 5:7041c827932b 1106 DataPack.write(0x18);
lolopo008 5:7041c827932b 1107 wait_us(1);
lolopo008 5:7041c827932b 1108 DataPack.write(0x18);
lolopo008 5:7041c827932b 1109 wait_us(1);
lolopo008 5:7041c827932b 1110 Latch=1;
lolopo008 5:7041c827932b 1111 }
lolopo008 5:7041c827932b 1112
lolopo008 5:7041c827932b 1113 for(m=0; m<500; m++) {
lolopo008 5:7041c827932b 1114 Latch=0;
lolopo008 5:7041c827932b 1115 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1116 wait_us(1);
lolopo008 5:7041c827932b 1117 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1118 wait_us(1);
lolopo008 5:7041c827932b 1119 DataPack.write(0x00);
lolopo008 5:7041c827932b 1120 wait_us(1);
lolopo008 5:7041c827932b 1121 DataPack.write(0xC3);
lolopo008 5:7041c827932b 1122 wait_us(1);
lolopo008 5:7041c827932b 1123 Latch=1;
lolopo008 5:7041c827932b 1124 Latch=0;
lolopo008 5:7041c827932b 1125 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1126 wait_us(1);
lolopo008 5:7041c827932b 1127 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1128 wait_us(1);
lolopo008 5:7041c827932b 1129 DataPack.write(0x3C);
lolopo008 5:7041c827932b 1130 wait_us(1);
lolopo008 5:7041c827932b 1131 DataPack.write(0x3C);
lolopo008 5:7041c827932b 1132 wait_us(1);
lolopo008 5:7041c827932b 1133 Latch=1;
lolopo008 5:7041c827932b 1134 }
lolopo008 5:7041c827932b 1135
lolopo008 5:7041c827932b 1136 for(n=0; n<500; n++) {
lolopo008 5:7041c827932b 1137 Latch=0;
lolopo008 5:7041c827932b 1138 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1139 wait_us(1);
lolopo008 5:7041c827932b 1140 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1141 wait_us(1);
lolopo008 5:7041c827932b 1142 DataPack.write(0x00);
lolopo008 5:7041c827932b 1143 wait_us(1);
lolopo008 5:7041c827932b 1144 DataPack.write(0x81);
lolopo008 5:7041c827932b 1145 wait_us(1);
lolopo008 5:7041c827932b 1146 Latch=1;
lolopo008 5:7041c827932b 1147 Latch=0;
lolopo008 5:7041c827932b 1148 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1149 wait_us(1);
lolopo008 5:7041c827932b 1150 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1151 wait_us(1);
lolopo008 5:7041c827932b 1152 DataPack.write(0x7E);
lolopo008 5:7041c827932b 1153 wait_us(1);
lolopo008 5:7041c827932b 1154 DataPack.write(0x7E);
lolopo008 5:7041c827932b 1155 wait_us(1);
lolopo008 5:7041c827932b 1156 Latch=1;
lolopo008 5:7041c827932b 1157 }
lolopo008 5:7041c827932b 1158
lolopo008 5:7041c827932b 1159 Latch=0;
lolopo008 5:7041c827932b 1160 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1161 wait_us(1);
lolopo008 5:7041c827932b 1162 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1163 wait_us(1);
lolopo008 5:7041c827932b 1164 DataPack.write(0xFF);
lolopo008 5:7041c827932b 1165 wait_us(1);
lolopo008 5:7041c827932b 1166 DataPack.write(0x00);
lolopo008 5:7041c827932b 1167 wait_us(1);
lolopo008 5:7041c827932b 1168 Latch=1;
lolopo008 5:7041c827932b 1169 wait_ms(100);
lolopo008 4:3605c624b64f 1170 }
lolopo008 4:3605c624b64f 1171 lifeup=2;
lolopo008 4:3605c624b64f 1172 lifeun=2;
lolopo008 5:7041c827932b 1173 wait_ms(500);
lolopo008 5:7041c827932b 1174 Count();
lolopo008 3:054a677aca64 1175 }
Pumipachpro 2:8b6312dbfd2f 1176 }
lolopo008 5:7041c827932b 1177 }