?? wt-mosport.lst
字號:
242 4
243 4 if(PIO2!=(0x10|PBYTE[CS4+1])) {ng=1;break;}
244 4 PBYTE[CS1+1]=0xe;Delay10ms(1);
245 4 if((0xf1&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
246 4 PBYTE[CS1+1]=0;
247 4
248 4 if(PIO3!=(0xef&PBYTE[CS4+2])) {ng=1;break;}
249 4 if((~d&PIO4)!=PBYTE[CS5]) {ng=1;break;}
250 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
251 4 if((d==4?PIO6&0xf7:PIO6)!=(dd=PBYTE[CS5+2])) {ng=1;break;}
252 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
253 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
254 4 d<<=1;
255 4 }
256 3 PBYTE[CS2]=0;
257 3 if(ng) break;
258 3 d=0x1;
259 3 for(n=0;n<8;n++)
260 3 {
261 4 PBYTE[CS2+1]=d;
262 4 Delay10ms(3);
263 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
264 4
265 4 if(PIO2!=(0x10|PBYTE[CS4+1])) {ng=1;break;}
266 4 PBYTE[CS1+1]=0xe;Delay10ms(1);
267 4 if((0xf1&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
268 4 PBYTE[CS1+1]=0;
269 4
270 4 if(PIO3!=(0xef&PBYTE[CS4+2])) {ng=1;break;}
271 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
272 4 if((~d&PIO5)!=PBYTE[CS5+1]) {ng=1;break;}
273 4 if(PIO6!=PBYTE[CS5+2]) {ng=1;break;}
274 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
275 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
276 4 d<<=1;
277 4 }
278 3 PBYTE[CS2+1]=0;
279 3 if(ng) break;
280 3 d=0x1;
281 3 for(n=0;n<7;n++)
282 3 {
283 4 PBYTE[CS2+2]=d;
284 4 Delay10ms(3);
285 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
286 4
287 4 if(PIO2!=(0x10|PBYTE[CS4+1])) {ng=1;break;}
288 4 PBYTE[CS1+1]=0xe;Delay10ms(1);
289 4 if((0xf1&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
290 4 PBYTE[CS1+1]=0;
291 4
292 4 if(PIO3!=(0xef&PBYTE[CS4+2])) {ng=1;break;}
293 4 if((d!=8?PIO4:PIO4&0xfb)!=PBYTE[CS5]) {ng=1;break;}
294 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
295 4 if(d==0x10||d==0x20)
296 4 {
297 5 if((~0x30&PIO6)!=PBYTE[CS5+2]) {ng=1;break;} //2006-09-21
298 5 }
299 4 else
300 4 {
301 5 if((~d&PIO6)!=PBYTE[CS5+2]) {ng=1;break;}
302 5 }
303 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
C51 COMPILER V7.10 WT_MOSPORT 09/21/2006 20:10:33 PAGE 6
304 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
305 4 d<<=1;
306 4 }
307 3 PBYTE[CS2+2]=0;
308 3 if(ng) break;
309 3 d=0x20;
310 3 for(n=0;n<6;n++)
311 3 {
312 4 P2=(P2|0x3f)&(~d);
313 4 Delay10ms(10);
314 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
315 4
316 4 if(PIO2!=(0x10|PBYTE[CS4+1])) {ng=1;break;}
317 4 PBYTE[CS1+1]=0xe;Delay10ms(1);
318 4 if((0xf1&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
319 4 PBYTE[CS1+1]=0;
320 4
321 4 if(PIO3!=(0xef&PBYTE[CS4+2])) {ng=1;break;}
322 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
323 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
324 4 if(PIO6!=PBYTE[CS5+2]) {ng=1;break;}
325 4 // if(d==1||d==2)
326 4 // {
327 4 // if((~3&PU2)!=(0x3f&P2)) {ng=1;break;}
328 4 // }
329 4 // else
330 4 // {
331 4 if((~d&PU2)!=(0x3f&P2)) {ng=1;break;}
332 4 // }
333 4 if(PU1!=(0x3f&P1)) {ng=1;break;}
334 4 d>>=1;
335 4 }
336 3 P2|=0x3f;
337 3 if(ng) break;
338 3 d=0x20;
339 3 for(n=0;n<6;n++)
340 3 {
341 4 P1=(P1|0x3f)&(~d);
342 4 Delay10ms(3);
343 4 if(PIO1!=PBYTE[CS4]) {ng=1;break;}
344 4
345 4 if(PIO2!=(0x10|PBYTE[CS4+1])) {ng=1;break;}
346 4 PBYTE[CS1+1]=0xe;Delay10ms(1);
347 4 if((0xf1&PIO2)!=PBYTE[CS4+1]) {ng=1;break;}
348 4 PBYTE[CS1+1]=0;
349 4
350 4 if(PIO3!=(0xef&PBYTE[CS4+2])) {ng=1;break;}
351 4 if(PIO4!=PBYTE[CS5]) {ng=1;break;}
352 4 if(PIO5!=PBYTE[CS5+1]) {ng=1;break;}
353 4 if(PIO6!=(dd=PBYTE[CS5+2])) {ng=1;break;}
354 4 if(d==1||d==2)
355 4 {
356 5 if((~3&PU1)!=(0x3f&P1)) {ng=1;break;}
357 5 }
358 4 else
359 4 {
360 5 if((~d&PU1)!=(0x3f&P1)) {ng=1;break;}
361 5 }
362 4 if(PU2!=(0x3f&P2)) {ng=1;break;}
363 4 d>>=1;
364 4 }
365 3 P1|=0x3f;
C51 COMPILER V7.10 WT_MOSPORT 09/21/2006 20:10:33 PAGE 7
366 3 if(ng) break;
367 3 break;
368 3 }
369 2 if(ng)
370 2 {
371 3 LightLed=0x40;TwingleLed=0;
372 3 continue;
373 3 }
374 2
375 2 //Jack test
376 2 LightLed=0;TwingleLed=0x8;
377 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0x4;Delay10ms(20); //3.3V on
378 2 PBYTE[CS1]=0x8;
379 2 for(n=0;n<5;n++)
380 2 {
381 3 if((dd=PBYTE[CS4])&0x82) n=0;
382 3 if(ng) break;
383 3 Delay10ms(1);
384 3 }
385 2 PBYTE[CS1]=0;
386 2 //方波測試
387 2 PIO1=PIO2=PIO3=PIO4=PIO5=PIO6=0;
388 2 Initial8255A();
389 2 #define LCH 0x11
390 2 #define RCH 0x44
391 2 //L changle
392 2 for(n=0;n<3;n++)
393 2 {
394 3 //L
395 3 PIO1&=((~LCH)&(~RCH));PBYTE[CS1]=PIO1;
396 3 while((PBYTE[CS4]&LCH)!=LCH&&ng==0) {PIO1&=~LCH;PBYTE[CS1]=PIO1;Delay10ms(1);}
397 3 Delay10ms(30);
398 3 PIO1|=(LCH&0xf0);PBYTE[CS1]=PIO1;
399 3 if((dd=PBYTE[CS4])&(LCH&0xf0))
400 3 {
401 4 ng=1;
402 4 break;
403 4 }
404 3 PIO1&=~LCH;PBYTE[CS1]=PIO1;
405 3 //R
406 3 while((PBYTE[CS4]&RCH)!=RCH&&ng==0) {PIO1&=~RCH;PBYTE[CS1]=PIO1;Delay10ms(1);}
407 3 Delay10ms(30);
408 3 PIO1|=(RCH&0xf0);PBYTE[CS1]=PIO1;
409 3 if((dd=PBYTE[CS4])&(RCH&0xf0))
410 3 {
411 4 ng=1;
412 4 break;
413 4 }
414 3 PIO1&=~RCH;PBYTE[CS1]=PIO1;
415 3 }
416 2 /* for(n=0;n<3;n++)
417 2 {
418 2 while((PBYTE[CS4]&0x50)!=0x50&&ng==0) {PIO1&=~0x50;PBYTE[CS1]=PIO1;Delay10ms(1);}
419 2 Delay10ms(20);
420 2 PIO1|=0x40;PBYTE[CS1]=PIO1;
421 2 Delay10ms(1);
422 2 if(PBYTE[CS4]&0x10) {ng=1;break;}
423 2 PIO1&=~0x40;PBYTE[CS1]=PIO1;
424 2 }*/
425 2 if(ng)
426 2 {
427 3 LightLed=0x40;TwingleLed=0;
C51 COMPILER V7.10 WT_MOSPORT 09/21/2006 20:10:33 PAGE 8
428 3 continue;
429 3 }
430 2 //USB test
431 2 LightLed=0;TwingleLed=0x4;
432 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(1); //BELL
433 2 for(n=0;n<5;n++)
434 2 {
435 3 if(P1&0x3f) n=0;
436 3 if(ng) break;
437 3 }
438 2 Delay10ms(20);
439 2
440 2 //1394 test
441 2 LightLed=0;TwingleLed=0x2;
442 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(20); //BELL
443 2 for(n=0;n<5;n++)
444 2 {
445 3 if(P2&0x3f) n=0;
446 3 if(PBYTE[CS5+2]&0x30) n=0; //2006-09-20
447 3 if(ng) break;
448 3 }
449 2
450 2 //LED test
451 2 LightLed&=0x0;TwingleLed=0x1;
452 2 PBYTE[CS3+1]=0x8;Delay10ms(20);PBYTE[CS3+1]=0;Delay10ms(20);
453 2 if(ln==0)
454 2 {
455 3 PIO2=0xe; //Set 3Color destroy
456 3 PIO1=PIO3=PIO4=PIO5=PIO6=0;
457 3 PIO8=0x7;
458 3 Initial8255A();
459 3 PBYTE[CS3+1]=0x7; //3.3V 5V 5Vaux on
460 3 ln=1;
461 3 }
462 2 while(ng==0)
463 2 {
464 3 if(!CN1) {ok=1;break;}
465 3 }
466 2 }
467 1 }
468
469 void Initial(void)
470 {
471 1 P1=P2=P3=0xff;
472 1 // RECLED=1;
473 1 INPORT=P3;
474 1 TMOD=0X11;
475 1 TR0=1;
476 1 EX0=EX1=0;
477 1 ET0=1;
478 1 EA=1;
479 1 TL0=T10MS & 256;
480 1 TH0=T10MS/256;
481 1 }
482 void Initial8255(void)
483 {
484 1 PBYTE[CS1+3]=PMODE0&PAOUT&PBOUT&PCLOUT&PCHOUT;
485 1 PBYTE[CS2+3]=PMODE0&PAOUT&PBOUT&PCLOUT&PCHOUT;
486 1 PBYTE[CS3+3]=PMODE0&PAOUT&PBOUT&PCLOUT&PCHOUT;
487 1 PBYTE[CS4+3]=PMODE0|PAIN|PBIN|PCLIN|PCHIN;
488 1 PBYTE[CS5+3]=PMODE0|PAIN|PBIN|PCLIN|PCHIN;
489 1 PBYTE[CS6+3]=PMODE0|PAIN|PBIN|PCLIN|PCHIN;
C51 COMPILER V7.10 WT_MOSPORT 09/21/2006 20:10:33 PAGE 9
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -