📄 ii.lst
字号:
317 {
318 1 MCLK=0;
319 1
320 1 }
321 //===============================================
322 void MCLKOff(void)
323 {
324 1 MCLK=1;
325 1 }
326 //===============================================
327 void ReadTemperaturePreesureAD(void)
328 {
329 1 long uiSumADValue;
330 1 uiSumADValue = 0;
331 1 IIC_XCLR_HIGH();
332 1 MCLKOn();
333 1 SysDelay2ms(1);
334 1
335 1 D1 = IIC_ReadPressureAD();
336 1 uiSumADValue += D1;
337 1 D1 = IIC_ReadPressureAD();
338 1 uiSumADValue += D1;
339 1 D1 = IIC_ReadPressureAD();
340 1 uiSumADValue += D1;
341 1 D1 = IIC_ReadPressureAD();
342 1 uiSumADValue += D1;
343 1 D1 = uiSumADValue >>2;
344 1
345 1 D2 = IIC_ReadTempretureAD();
346 1 uiSumADValue =0;// D2;
347 1 D2 = IIC_ReadTempretureAD();
348 1 uiSumADValue += D2;
349 1 D2 = IIC_ReadTempretureAD();
350 1 uiSumADValue += D2;
351 1 D2 = IIC_ReadTempretureAD();
352 1 uiSumADValue += D2;
353 1 D2 = uiSumADValue/3 ;//>>2;
354 1
355 1 SDA=0;
356 1 SCL=0;
357 1 MCLKOff();
358 1 IIC_XCLR_LOW();
359 1 }
360 //===============================================
361 unsigned int IIC_ReadTempretureAD(void)
C51 COMPILER V7.06 II 09/11/2008 17:46:03 PAGE 7
362 {
363 1 unsigned char ucData;
364 1 unsigned int wADT;
365 1
366 1 //do{
367 1 IIC_Start();
368 1 IIC_WriteByte(0xEE);
369 1 Test_Ack();
*** WARNING C209 IN LINE 369 OF II.C: '_Test_Ack': too few actual parameters
370 1 // }
371 1 //while(!(Test_Ack()==0));
372 1 IIC_WriteByte(0xff);
373 1 Test_Ack();
*** WARNING C209 IN LINE 373 OF II.C: '_Test_Ack': too few actual parameters
374 1 IIC_WriteByte(0xE8);//(0xd0);//0xE8);
375 1 Test_Ack();
*** WARNING C209 IN LINE 375 OF II.C: '_Test_Ack': too few actual parameters
376 1 IIC_Stop();
377 1 SysDelay2ms(20);
378 1
379 1 IIC_Start();
380 1 IIC_WriteByte(0xEE);
381 1 Test_Ack();
*** WARNING C209 IN LINE 381 OF II.C: '_Test_Ack': too few actual parameters
382 1 IIC_WriteByte(0xFD);
383 1 Test_Ack();
*** WARNING C209 IN LINE 383 OF II.C: '_Test_Ack': too few actual parameters
384 1 IIC_Start();
385 1 IIC_WriteByte(0xEF);
386 1 Test_Ack();
*** WARNING C209 IN LINE 386 OF II.C: '_Test_Ack': too few actual parameters
387 1
388 1 ucData = IIC_ReadByte();
389 1 IIC_ACK();
390 1 // UartSend(CCC);
391 1 wADT = ucData;
392 1 wADT <<= 8;
393 1
394 1 ucData = IIC_ReadByte();
395 1 IIC_NoAck();
396 1 IIC_Stop();
397 1 wADT |= ucData;
398 1 //UartSend(DD);
399 1 return wADT;
400 1 }
401 //===============================================
402 unsigned int IIC_ReadPressureAD(void)
403 {
404 1 unsigned char ucData;
405 1 unsigned int wADp;
406 1 //do{
407 1 IIC_Start();
408 1 IIC_WriteByte(0xEE);
409 1 //Test_Ack();
410 1 // }
411 1 //while(!(Test_Ack()==0));
412 1 //do{
413 1 IIC_WriteByte(0xff);
414 1 //Test_Ack();
415 1 // }
416 1 //while(!(Test_Ack()==0));
417 1 //do{
C51 COMPILER V7.06 II 09/11/2008 17:46:03 PAGE 8
418 1 IIC_WriteByte(0xF0);
419 1 //Test_Ack();
420 1 // }
421 1 //while(!(Test_Ack()==0));
422 1 IIC_Stop();
423 1 SysDelay2ms(20);
424 1
425 1 //do{
426 1 IIC_Start();
427 1 IIC_WriteByte(0xEE);
428 1 Test_Ack();
*** WARNING C209 IN LINE 428 OF II.C: '_Test_Ack': too few actual parameters
429 1 // }
430 1 //while(!(Test_Ack()==0));
431 1 //do{
432 1 IIC_WriteByte(0xFD);
433 1 Test_Ack();
*** WARNING C209 IN LINE 433 OF II.C: '_Test_Ack': too few actual parameters
434 1 // }
435 1 //while(!(Test_Ack()==0));
436 1 //do{
437 1 IIC_Start();
438 1 IIC_WriteByte(0xEF);
439 1 Test_Ack();
*** WARNING C209 IN LINE 439 OF II.C: '_Test_Ack': too few actual parameters
440 1 // }
441 1 //while(!(Test_Ack()==0));
442 1 ucData = IIC_ReadByte();
443 1 IIC_ACK();
444 1 wADp = ucData;
445 1 wADp <<=8;
446 1 //UartSend(AA);
447 1
448 1 ucData = IIC_ReadByte();
449 1 IIC_NoAck();
450 1 IIC_Stop();
451 1 wADp |= ucData;
452 1
453 1 //UartSend(BB);
454 1
455 1 return wADp;
456 1
457 1 }
458 //===============================================
459 unsigned char IIC_ReadByte(void)
460 {
461 1 unsigned char ucValue;
462 1 unsigned char ucIndex;
463 1
464 1 IIC_SDA_HIGH();
465 1 SysDelay(DELAY10US);
466 1 for ( ucIndex = 0; ucIndex < 8; ucIndex++ )
467 1 {
468 2 ucValue <<= 1;
469 2 IIC_SCL_LOW();
470 2 SysDelay(DELAY10US);
471 2 IIC_SCL_HIGH();
472 2 SysDelay(DELAY10US);
473 2 if(SDA)
474 2 ucValue |=1;
475 2 SysDelay(DELAY10US);
476 2
C51 COMPILER V7.06 II 09/11/2008 17:46:03 PAGE 9
477 2 IIC_SCL_LOW();
478 2 SysDelay(DELAY10US);
479 2
480 2 }
481 1 return ucValue;
482 1 }
483 //===============================================
484 void IIC_WriteByte( unsigned char ucData )
485 {
486 1 unsigned char i;
487 1 for( i = 0; i < 8; i++ )
488 1 {
489 2 IIC_SCL_LOW();
490 2 SysDelay(DELAY10US);
491 2 if((ucData & 0x80) == 0x80)
492 2 {
493 3 IIC_SDA_HIGH();
494 3 SysDelay(DELAY10US);
495 3 }
496 2 else
497 2 {
498 3 IIC_SDA_LOW();
499 3 SysDelay(DELAY10US);
500 3 }
501 2
502 2
503 2 IIC_SCL_HIGH();
504 2 SysDelay(DELAY10US);
505 2 ucData <<= 1;
506 2 IIC_SCL_LOW();
507 2 }
508 1
509 1 IIC_SDA_HIGH();
510 1 SysDelay(DELAY10US);
511 1 IIC_SCL_LOW();
512 1 SysDelay(DELAY10US);
513 1 IIC_SCL_HIGH();
514 1 SysDelay(DELAY10US);
515 1 IIC_SCL_LOW();
516 1 SysDelay(DELAY10US);
517 1 }
518 //===============================================
519 void IIC_Start(void)
520 {
521 1 IIC_SDA_HIGH();
522 1 SysDelay(DELAY10US);
523 1 IIC_SCL_HIGH();
524 1 SysDelay(DELAY10US);
525 1 IIC_SDA_LOW();
526 1 SysDelay(DELAY10US);
527 1
528 1 IIC_SCL_LOW();
529 1 SysDelay(DELAY10US);
530 1
531 1 }
532 //===============================================
533 void IIC_Stop(void)
534 {
535 1 IIC_SCL_LOW();
536 1 SysDelay(DELAY10US);
537 1 IIC_SDA_LOW();
538 1 SysDelay(DELAY10US);
C51 COMPILER V7.06 II 09/11/2008 17:46:03 PAGE 10
539 1 IIC_SCL_HIGH();
540 1 SysDelay(DELAY10US);
541 1 IIC_SDA_HIGH();
542 1 SysDelay(DELAY10US);
543 1
544 1 }
545 //===============================================
546 void IIC_ACK(void)
547 {
548 1 IIC_SDA_LOW();
549 1 SysDelay(DELAY10US);
550 1 IIC_SCL_HIGH();
551 1 SysDelay(DELAY10US);
552 1 IIC_SCL_LOW();
553 1 SysDelay(DELAY10US);
554 1 }
555 //===============================================
556 void IIC_NoAck(void)
557 {
558 1 IIC_SDA_HIGH();
559 1 SysDelay(DELAY10US);
560 1 IIC_SCL_HIGH();
561 1 SysDelay(DELAY10US);
562 1 IIC_SCL_LOW();
563 1 SysDelay(DELAY10US);
564 1 }
565 //===============================================
566 void IIC_SDA_HIGH(void)
567 {
568 1 SDA=1;
569 1 }
570 //===============================================
571 //===============================================
572 void IIC_SDA_LOW(void)
573 {
574 1 SDA=0;
575 1 }
576 //===============================================
577 //===============================================
578 void IIC_SCL_HIGH(void)
579 {
580 1 SCL=1;
581 1 }
582 //===============================================
583 //===============================================
584 void IIC_SCL_LOW(void)
585 {
586 1 SCL=0;
587 1 }
588 //===============================================
589 void IIC_XCLR_LOW(void)
590 {
591 1 XCLR=0;
592 1 }
593 //===============================================
594 //===============================================
595 void IIC_XCLR_HIGH(void)
596 {
597 1 XCLR=1;
598 1 }
599 //===============================================
600 void SysDelay2ms( unsigned int t)
C51 COMPILER V7.06 II 09/11/2008 17:46:03 PAGE 11
601 {
602 1 /*unsigned int i,j;
603 1 while(t--)
604 1 {for (i =0; i < 125; i++);
605 1 for (i = 0; j < 1500; j++);
606 1 }*/
607 1 START_TIMER1;
608 1 DelayMs(t);
609 1 STOP_TIMER1;
610 1 }
611 //===============================================
612
613 //===============================================
614 //===============================================
615 void SysDelay(unsigned int t)
616 {
617 1 //t*=10;
618 1 while(t--);
619 1 }
620 //===============================================
621 //===============================================
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2643 ----
CONSTANT SIZE = 320 ----
XDATA SIZE = 38 ----
PDATA SIZE = ---- ----
DATA SIZE = 16 25
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 13 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -