⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sccb.lst

📁 SCCB协议的KEIL UVISION3的编程源码。原创
💻 LST
📖 第 1 页 / 共 2 页
字号:
 429   1        nops();
 430   1       SIO_C=1;
 431   1       nops();
 432   1       SIO_C=0;
 433   1       nops();        //bit0
 434   1       SIO_D=1;         //on't care  1
 435   1       nops();
 436   1       nops();
 437   1       nops();
 438   1      
 439   1       SIO_C=1;
 440   1        nops();
 441   1      
 442   1      
 443   1      SIO_D=1; //INPUT     
 444   1       SIO_C=0;
 445   1        
 446   1       nops();       
 447   1      //      printf("send DeviceAddress success\n");
 448   1      //      printf("read data\n");
 449   1      //read data 
 450   1       Buffer_Data=0x00; 
 451   1        nops();
 452   1       SIO_C=1;
 453   1        //input 
 454   1       nops();
 455   1       if(SIO_D)
 456   1       Buffer_Data|=0x80;
 457   1       nops();
 458   1      
 459   1       //SIO_D=1; //INPUT     
 460   1       SIO_C=0;
 461   1       nops();        //bit7
 462   1      
 463   1       SIO_C=1;
 464   1       nops();
 465   1       if(SIO_D)
 466   1       Buffer_Data|=0x40;
 467   1       nops();
 468   1       SIO_C=0;
 469   1       nops();         //bit6
 470   1      
 471   1       SIO_C=1;
 472   1       nops();
 473   1       if(SIO_D)
 474   1       Buffer_Data|=0x20;
 475   1       nops();
 476   1      
 477   1       //SIO_D=1; //INPUT     
 478   1       SIO_C=0;
 479   1       nops();         //bit5
 480   1      
 481   1       SIO_C=1;
 482   1       nops();
 483   1       if(SIO_D)
 484   1       Buffer_Data|=0x10;
 485   1       nops();
 486   1      // SIO_D=1; //INPUT     
 487   1       SIO_C=0;
 488   1       nops();          //bit4
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 9   

 489   1      
 490   1       SIO_C=1;
 491   1       nops();
 492   1       if(SIO_D)
 493   1       Buffer_Data|=0x08;
 494   1       nops();
 495   1       //SIO_D=1; //INPUT     
 496   1       SIO_C=0;
 497   1       nops();          //bit3
 498   1      
 499   1       SIO_C=1;
 500   1       nops();
 501   1       if(SIO_D)
 502   1       Buffer_Data|=0x04;
 503   1       nops();
 504   1       //SIO_D=1; //INPUT     
 505   1      SIO_C=0;
 506   1       nops();          //bit2
 507   1      
 508   1       SIO_C=1;
 509   1       nops();
 510   1       if(SIO_D)
 511   1       Buffer_Data|=0x02;
 512   1       nops();
 513   1       //SIO_D=1; //INPUT     
 514   1      SIO_C=0;
 515   1       nops();          //bit1
 516   1      
 517   1       SIO_C=1;
 518   1       nops();
 519   1       if(SIO_D)
 520   1       Buffer_Data|=0x01;
 521   1       nops();
 522   1       SIO_C=0;
 523   1       nops();          //bit0
 524   1       SIO_D=1;       // 低电平应答信号??????还是高电平??????
 525   1       nops();
 526   1      
 527   1      
 528   1       SIO_C=1;
 529   1        nops();
 530   1       if(SIO_D)
 531   1          { 
 532   2            if(SIO_D)
 533   2            F0=1;
 534   2          }
 535   1       else
 536   1         {
 537   2           nops();
 538   2      //      printf("NA  IS O \n");
 539   2       //   printf("read data failed\n");
 540   2         }
 541   1       SIO_C=0;     
 542   1       nops();        //check Ack          NA BIT    MUST BE  1 
 543   1      
 544   1       
 545   1       //SIO_C=1;
 546   1        //nops();
 547   1       SIO_D=0;
 548   1       nops();
 549   1       //SIO_D=1;
 550   1       //nops();
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 10  

 551   1       SIO_C=1;
 552   1        nops();
 553   1       SIO_D=1;       //stop
 554   1      // printf("read data success\n");
 555   1      
 556   1      // printf("read  data from register 0x 1c is %x\n",Buffer_Data);
 557   1      
 558   1       return Buffer_Data;
 559   1      }
*** WARNING C280 IN LINE 208 OF SCCB.C: 'DeviceAddress': unreferenced local variable
 560          
 561          bit Write_COMS(unsigned char DeviceAddress,unsigned char RegisterAddress, unsigned char Write_Data)
 562          {
 563   1       ACC=DeviceAddress;
 564   1       F0=0; 
 565   1       //SIO_E=0;
 566   1       //nops();
 567   1      
 568   1       SIO_C=1;
 569   1       nops();
 570   1       SIO_D=1;
 571   1       nops();
 572   1       SIO_D=0;
 573   1       nops();
 574   1       SIO_C=0;  
 575   1       nops();         //Start
 576   1      
 577   1       SIO_D=ACC^7;
 578   1       nops();  
 579   1       SIO_C=1;
 580   1       nops();
 581   1       SIO_C=0;
 582   1       nops();         //bit7
 583   1       
 584   1       SIO_D=ACC^6;
 585   1       nops();  
 586   1       SIO_C=1;
 587   1       nops();
 588   1       SIO_C=0;
 589   1       nops();         //bit6
 590   1      
 591   1       SIO_D=ACC^5;
 592   1       nops();  
 593   1       SIO_C=1;
 594   1       nops();
 595   1       SIO_C=0;
 596   1       nops();         //bit5
 597   1      
 598   1       SIO_D=ACC^4;
 599   1       nops();  
 600   1       SIO_C=1;
 601   1       nops();
 602   1       SIO_C=0;
 603   1       nops();         //bit4
 604   1      
 605   1       SIO_D=ACC^3;
 606   1       SIO_C=1;
 607   1       nops();
 608   1       SIO_C=0;
 609   1       nops();         //bit3
 610   1      
 611   1       SIO_D=ACC^2;
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 11  

 612   1       nops();  
 613   1       SIO_C=1;
 614   1       nops();
 615   1       SIO_C=0;
 616   1       nops();         //bit2
 617   1      
 618   1       SIO_D=ACC^1;
 619   1       nops();  
 620   1       SIO_C=1;
 621   1       nops();
 622   1       SIO_C=0;
 623   1       nops();        //bit1
 624   1      
 625   1       SIO_D=ACC^0;
 626   1       nops();  
 627   1       SIO_C=1;
 628   1       nops();
 629   1       SIO_C=0;
 630   1       nops();        //bit0
 631   1       SIO_D=1;
 632   1       nops();
 633   1       SIO_C=1;
 634   1       
 635   1          nops();
 636   1       SIO_C=0;     
 637   1       nops();        //check Ack    don't care
 638   1              printf("send DeviceAddress success\n");
 639   1       ACC=RegisterAddress; 
 640   1      
 641   1       SIO_D=ACC^7;
 642   1       nops();  
 643   1       SIO_C=1;
 644   1       nops();
 645   1       SIO_C=0;
 646   1       nops();         //bit7
 647   1       
 648   1       SIO_D=ACC^6;
 649   1       nops();  
 650   1       SIO_C=1;
 651   1       nops();
 652   1       SIO_C=0;
 653   1       nops();         //bit6
 654   1      
 655   1       SIO_D=ACC^5;
 656   1       nops();  
 657   1       SIO_C=1;
 658   1       nops();
 659   1       SIO_C=0;
 660   1       nops();         //bit5
 661   1      
 662   1       SIO_D=ACC^4;
 663   1       nops();  
 664   1       SIO_C=1;
 665   1       nops();
 666   1       SIO_C=0;
 667   1       nops();         //bit4
 668   1      
 669   1       SIO_D=ACC^3;
 670   1       nops();  
 671   1       SIO_C=1;
 672   1       nops();
 673   1       SIO_C=0;
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 12  

 674   1       nops();         //bit3
 675   1      
 676   1       SIO_D=ACC^2;
 677   1       nops();  
 678   1       SIO_C=1;
 679   1       nops();
 680   1       SIO_C=0;
 681   1       nops();         //bit2
 682   1      
 683   1       SIO_D=ACC^1;
 684   1       nops();  
 685   1       SIO_C=1;
 686   1       nops();
 687   1       SIO_C=0;
 688   1       nops();        //bit1
 689   1      
 690   1       SIO_D=ACC^0;
 691   1       nops();  
 692   1       SIO_C=1;
 693   1       nops();
 694   1       SIO_C=0;
 695   1       nops();        //bit0
 696   1       SIO_D=1;
 697   1       nops();
 698   1       SIO_C=1;
 699   1       
 700   1          nops();
 701   1       SIO_C=0;     
 702   1       nops();        //check Ack      don't care
 703   1              printf("send RegisterAddress success\n");
 704   1              printf("write data\n");
 705   1      ACC=Write_Data; 
 706   1      
 707   1       SIO_D=ACC^7;
 708   1       nops();  
 709   1       SIO_C=1;
 710   1       nops();
 711   1       SIO_C=0;
 712   1       nops();         //bit7
 713   1       
 714   1       SIO_D=ACC^6;
 715   1       nops();  
 716   1       SIO_C=1;
 717   1       nops();
 718   1       SIO_C=0;
 719   1       nops();         //bit6
 720   1      
 721   1       SIO_D=ACC^5;
 722   1       nops();  
 723   1       SIO_C=1;
 724   1       nops();
 725   1       SIO_C=0;
 726   1       nops();         //bit5
 727   1      
 728   1       SIO_D=ACC^4;
 729   1       nops();  
 730   1       SIO_C=1;
 731   1       nops();
 732   1       SIO_C=0;
 733   1       nops();         //bit4
 734   1      
 735   1       SIO_D=ACC^3;
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 13  

 736   1       nops();  
 737   1       SIO_C=1;
 738   1       nops();
 739   1       SIO_C=0;
 740   1       nops();         //bit3
 741   1      
 742   1       SIO_D=ACC^2;
 743   1       nops();  
 744   1       SIO_C=1;
 745   1       nops();
 746   1       SIO_C=0;
 747   1       nops();         //bit2
 748   1      
 749   1       SIO_D=ACC^1;
 750   1       nops();  
 751   1       SIO_C=1;
 752   1       nops();
 753   1       SIO_C=0;
 754   1       nops();        //bit1
 755   1      
 756   1       SIO_D=ACC^0;
 757   1       nops();  
 758   1       SIO_C=1;
 759   1       nops();
 760   1       SIO_C=0;
 761   1       nops();        //bit0
 762   1       SIO_D=1;
 763   1       nops();
 764   1       SIO_C=1;
 765   1          nops();
 766   1       SIO_C=0;     
 767   1       nops();        //check Ack     dont't care   0
 768   1              printf("write data success\n ");
 769   1      
 770   1       //SIO_C=1;
 771   1      // nops();  
 772   1       SIO_D=0;
 773   1       nops();
 774   1       //SIO_D=1;
 775   1       //nops();
 776   1       SIO_C=1;
 777   1        nops();
 778   1       SIO_D=1;       //stop
 779   1      
 780   1       return F0;
 781   1      }
 782          
 783          void main()
 784          {
 785   1       unsigned char  temp;
 786   1       //bit ack;
 787   1      serial_init();
 788   1      
 789   1      //ack= Write_COMS(OV7620_write,0x13,0x31);//8位数据格式,CCIR656格式
 790   1      //ack= Write_COMS(OV7620_write,0x28,0x20); //逐行扫描模式
 791   1      //ack= Write_COMS(OV7620_write,0x67,0x9a); //CCIR 601 YCrCb
 792   1      //ack= Write_COMS(OV7620_write,0x13,0x31);              //
 793   1      //ack= Write_COMS(OV7620_write,0x13,0x31);              //
 794   1      while(1)
 795   1      {
 796   2         if(p32==0)   //按键消抖动  
 797   2         {
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 14  

 798   3                delay();
 799   3           if(p32==0)
 800   3           { 
 801   4             while(p32==0);
 802   4               
 803   4                 
 804   4                temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x11);
 805   4                OV7620_Write_SCCB_COMS(OV7620_ID,0x11,0x00);
 806   4                temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x11);
 807   4                SBUF=temp;
 808   4                delay();
 809   4      
 810   4                OV7620_Write_SCCB_COMS(OV7620_ID,0x70,0x81);
 811   4                temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x70);
 812   4                SBUF=temp;
 813   4                delay();
 814   4      
 815   4                OV7620_Write_SCCB_COMS(OV7620_ID,0x13,0x31);
 816   4                temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x13);
 817   4                SBUF=temp;
 818   4                delay();
 819   4               OV7620_Write_SCCB_COMS(OV7620_ID,0x28,0x20);
 820   4               temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x28);
 821   4               SBUF=temp;
 822   4               delay();
 823   4               OV7620_Write_SCCB_COMS(OV7620_ID,0x67,0x1a);
 824   4               temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x67);
 825   4               SBUF=temp;
 826   4               delay();
 827   4              // OV7620_Write_SCCB_COMS(OV7620_ID,0x11,0x31);
 828   4              // temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x11);
 829   4              // SBUF=temp;
 830   4              // delay();
 831   4               //SBUF=temp;
 832   4               //delay();
 833   4      
 834   4                 OV7620_Write_SCCB_COMS(OV7620_ID,0x12,0x24); //8 BIT  DATAOUT 
 835   4                 temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x12);
 836   4             SBUF=temp;
 837   4             delay();
 838   4      
 839   4              // temp=OV7620_Read_SCCB_CMOS(OV7620_ID,0x13);
 840   4      //        SBUF=temp;
 841   4              //  delay();
 842   4          //
 843   4               }
 844   3         
 845   3         };
 846   2          //printf("read data from register 0x 1d is %d\n",temp);
 847   2      
 848   2      };
 849   1      
 850   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1137    ----
   CONSTANT SIZE    =     91    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       3
   IDATA SIZE       =   ----    ----
C51 COMPILER V8.02   SCCB                                                                  01/07/2009 13:14:33 PAGE 15  

   BIT SIZE         =   ----      11
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  1 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -