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

📄 t101_util.lst

📁 TFT LCD驱动芯片T100A+AU7" Source code
💻 LST
📖 第 1 页 / 共 3 页
字号:
                      I2CWriteByte(TW101+2,0x27, 0x00);
                      I2CWriteByte(TW101+2,0x28, 0x03);
                      I2CWriteByte(TW101+2,0x29, 0x20);
                      I2CWriteByte(TW101+2,0x2A, 0x00);
                      I2CWriteByte(TW101+2,0x2B, 0x03);
                      I2CWriteByte(TW101+2,0x2C, 0x18);
                      I2CWriteByte(TW101+2,0x2D, 0x02);
                      I2CWriteByte(TW101+2,0x2E, 0x00);
                      I2CWriteByte(TW101+2,0x2F, 0x00);
                      I2CWriteByte(TW101+2,0x30, 0x00);
                      I2CWriteByte(TW101+2,0x31, 0x0F);
                      I2CWriteByte(TW101+2,0x32, 0x00);
                      I2CWriteByte(TW101+2,0x33, 0x0F);
                      I2CWriteByte(TW101+2,0x34, 0x00);
                      I2CWriteByte(TW101+2,0x35, 0x01);
                      I2CWriteByte(TW101+2,0x37, 0x80);
                      I2CWriteByte(TW101+2,0x38, 0x02);
              #endif
 302   1      }
C51 COMPILER V7.06   T101_UTIL                                                             06/16/2005 10:05:39 PAGE 6   

 303          #endif
 304          
 305          #ifdef RSDS
              void RsdsInit(void)
              {
                      I2CWriteByte(TW101+2,0x20,0x02);
                      I2CWriteByte(TW101+2,0x21,0x3F);
                      I2CWriteByte(TW101+2,0x22,0x10);
                      I2CWriteByte(TW101+2,0x23,0x05);
                      I2CWriteByte(TW101+2,0x24,0x10);
                      I2CWriteByte(TW101+2,0x25,0x04);
                      I2CWriteByte(TW101+2,0x26,0x05);
                      I2CWriteByte(TW101+2,0x27,0x00);
                      I2CWriteByte(TW101+2,0x28,0x03);
                      I2CWriteByte(TW101+2,0x29,0xFF);
                      I2CWriteByte(TW101+2,0x2A,0x00);
                      I2CWriteByte(TW101+2,0x2B,0x03);
                      I2CWriteByte(TW101+2,0x2C,0x18);
                      I2CWriteByte(TW101+2,0x2D,0x02);
                      I2CWriteByte(TW101+2,0x2E,0x00);
                      I2CWriteByte(TW101+2,0x2F,0x00);
                      I2CWriteByte(TW101+2,0x30,0x00);
                      I2CWriteByte(TW101+2,0x31,0x0F);
                      I2CWriteByte(TW101+2,0x32,0x00);
                      I2CWriteByte(TW101+2,0x33,0x0F);
                      I2CWriteByte(TW101+2,0x34,0x00);
                      I2CWriteByte(TW101+2,0x35,0x01);
                      I2CWriteByte(TW101+2,0x37,0x80);
                      I2CWriteByte(TW101+2,0x38,0x02);
              
                      I2CWriteByte(TW101,0xD0, 0x01);
                      I2CWriteByte(TW101,0xD1, 0x11);
                      I2CWriteByte(TW101,0xD3, 0xAA);
                      I2CWriteByte(TW101,0xD4, 0xAA);
                      I2CWriteByte(TW101,0xD5, 0xAA);
                      I2CWriteByte(TW101,0xD6, 0xAA);
                      I2CWriteByte(TW101,0xD7, 0xAA);
                      I2CWriteByte(TW101,0xD8, 0xAA);
              }
              #endif //RSDS
 343          
 344          
 345          
 346          /////////////////////////
 347          //This function setup the display direction
 348          ///////////////////////////
 349          extern uCHAR cSTV1_ON;
 350          #ifdef KVGA
 351          void SET_Dismod(void)
 352          {
 353   1              uCHAR UD_LR,UD_RL,DU_LR,DU_RL;
 354   1              switch(cSTV1_ON)
 355   1              {
 356   2                      case 0:
 357   2                              UD_LR=  0xAc;
 358   2                              UD_RL=  0xB8;
 359   2                              DU_LR=  0xA0;
 360   2                              DU_RL=  0xB4;
 361   2       /*                     UD_LR=  0xB4;
 362   2                              UD_RL=  0xA0;
 363   2                              DU_LR=  0xFC;
 364   2                              DU_RL=  0xE8;*/
C51 COMPILER V7.06   T101_UTIL                                                             06/16/2005 10:05:39 PAGE 7   

 365   2      
 366   2                              break;
 367   2                      case 1:
 368   2                              UD_LR=  0xF4;
 369   2                              UD_RL=  0xE0;
 370   2                              DU_LR=  0xBC;
 371   2                              DU_RL=  0xA8;
 372   2                              break;
 373   2                      case 2:
 374   2                              UD_LR=  0xAC;
 375   2                              UD_RL=  0xB8;
 376   2                              DU_LR=  0xE4;
 377   2                              DU_RL=  0xF0;
 378   2                              break;
 379   2                      case 3:
 380   2                              UD_LR=  0xA4;
 381   2                              UD_RL=  0xB0;
 382   2                              DU_LR=  0xEC;
 383   2                              DU_RL=  0xF8;
 384   2                              break;
 385   2                      default:
 386   2                              UD_LR=  0xb4;
 387   2                              UD_RL=  0xAc;
 388   2                              DU_LR=  0xE0;
 389   2                              DU_RL=  0xF8;
 390   2              }
 391   1      
 392   1              switch (Dis_Mode)
 393   1          { 
 394   2                      case  TOP_LEFT: //Start from top-left
 395   2                    LEFT_RIGHT = RIGHT;
 396   2                                UP_DOWN       =DOWN;
 397   2                                I2CWriteByte(TW101,0xE1,UD_LR );//    0xe4 0xf4
 398   2                    break;
 399   2                      case  TOP_RIGHT: //Start from top-right
 400   2                    LEFT_RIGHT = LEFT;
 401   2                                UP_DOWN       =DOWN;
 402   2                                I2CWriteByte(TW101,0xE1,UD_RL );//0xf0         0xe0
 403   2                    break;
 404   2                      case  BOTTOM_LEFT: //Start from bottom-left
 405   2                    LEFT_RIGHT = RIGHT;
 406   2                                UP_DOWN       =UP;
 407   2                                I2CWriteByte(TW101,0xE1,DU_LR );//0xbc0x2c
 408   2                    break;
 409   2              case  BOTTOM_RIGHT:  //Start from bottom-right
 410   2                    LEFT_RIGHT = LEFT;
 411   2                                UP_DOWN       =UP;
 412   2                                I2CWriteByte(TW101,0xE1,DU_RL );//0x880x38
 413   2                    break;
 414   2          }
 415   1              return;
 416   1      }
 417          
 418          #endif
 419          
 420          #ifdef WVGA
              void SET_Dismod(void)
              {
              
                      switch (Dis_Mode)
                  { 
                              case  TOP_LEFT: //Start from top-left
C51 COMPILER V7.06   T101_UTIL                                                             06/16/2005 10:05:39 PAGE 8   

                            LEFT_RIGHT = RIGHT;
                                        UP_DOWN       =DOWN;
                                        I2CWriteByte(TW101,0xE1, (STV1|STH1)&0xFF);
                            break;
                              case  TOP_RIGHT: //Start from top-right
                            LEFT_RIGHT = LEFT;
                                        UP_DOWN       =DOWN;
                                        I2CWriteByte(TW101,0xE1, (STV1|STH2)&0xFF);
                            break;
                              case  BOTTOM_LEFT: //Start from bottom-left
                            LEFT_RIGHT = RIGHT;
                                        UP_DOWN       =UP;
                                        I2CWriteByte(TW101,0xE1, (STV2|STH1)&0xFF);
                            break;
                      case  BOTTOM_RIGHT:  //Start from bottom-right
                            LEFT_RIGHT = LEFT;
                                        UP_DOWN       =UP;
                                        I2CWriteByte(TW101,0xE1, (STV2|STH2)&0xFF);
                            break;
                  }
              
                      return;
              }
              
              #endif
 452          
 453          bit IRScaleratioCtrl(void)
 454          {
 455   1      uCHAR Hcut=10;
 456   1        switch(m_cScaleratio)
 457   1        {
 458   2        case ScaleFULL:
 459   2      #ifdef KVGA
 460   2               if(m_cStandard)
 461   2                                      I2CWriteByte(TW101+4,0x2E,0x8A); //0x82); //setup video decoder h start == 130
 462   2               else
 463   2                                      I2CWriteByte(TW101+4,0x2E,0x8a); //0x82); //setup video decoder h start == 130
 464   2                      
 465   2      #endif
 466   2      #ifdef WVGA
                              I2CWriteByte(TW101+4,0x2E,0x88); //0x82); //setup video decoder h start == 130
              #endif
 469   2      #ifdef WXGA 
              #ifdef AU_12
                                              I2CWriteByte(TW101+4,0x2E,0x94);//Kuo 0x88 0x94
              #else
                                              I2CWriteByte(TW101+4,0x2E,0x76);
              #endif
              #endif
 476   2      #ifdef AU_12
                                      I2CWriteByte(TW101+4,0x2F,0x3a); //0x50); //Setup video decoder h active 720
              #else
 479   2      
 480   2                  I2CWriteByte(TW101+4,0x2F,0x4a); //0x50); //Setup video decoder h active 720 玡狠
 481   2      #endif
 482   2                              I2CWriteByte(TW101,0xDC, (H_Size&0xFF));//Kuo
 483   2                              I2CWriteByte(TW101,0xDD, (H_Size>>8)); 
 484   2      
 485   2      //                      if(!m_cStandard)
 486   2                              I2CWriteByte(TW101,0xDE, ((V_Size)&0xFF)); 
 487   2      //                      else
 488   2      //                      I2CWriteByte(TW101,0xDE, ((MV_Size)&0xFF)); 
C51 COMPILER V7.06   T101_UTIL                                                             06/16/2005 10:05:39 PAGE 9   

 489   2                              I2CWriteByte(TW101,0xDF, (V_Size>>8)); 
 490   2      
 491   2      
 492   2                              if(!m_cStandard)
 493   2                              {
 494   3                                      m_wVRes=236;  //230 //ruby 2004-08-18
 495   3                                      Hcut=20;
 496   3                      m_wHRes=720-2*Hcut;
 497   3      
 498   3      #ifdef AU_12
                              m_wHRes=698;
              #endif        
 501   3      
 502   3                              }
 503   2                              else
 504   2                              {       
 505   3                                      m_wVRes=280;  //ruby 2004-08-18
 506   3                                      Hcut=16;
 507   3                      m_wHRes=720-2*Hcut;
 508   3      #ifdef AU_12
                              m_wHRes=698;
              #endif
 511   3       
 512   3      
 513   3                      }
 514   2                      I2CWriteByte(TW101,0x40,Hcut); //Hcut put picture position in center 2004-10-16 //For Foxconn
 515   2              I2CWriteByte(TW101,0xD8,0x00);//Kuo Horizontal Main Display Start
 516   2      
 517   2              break;
 518   2      
 519   2                  case Scale4_3:
 520   2      
 521   2      #ifdef KVGA
 522   2                  I2CWriteByte(TW101+4,0x2E,0x82);
 523   2                              I2CWriteByte(TW101+4,0x2F,0x50); //0x50); //Setup video decoder h active 720
 524   2      #else
                                      I2CWriteByte(TW101+4,0x2E,0x82); //0x82); //setup video decoder h start == 130
                                      I2CWriteByte(TW101+4,0x2F,0x50); //0x50); //Setup video decoder h active 720
              #endif
 528   2      
 529   2      
 530   2      //Black Diaplay
 531   2      
 532   2                              I2CWriteByte(TW101, 0x9d, 0x10);
 533   2                              I2CWriteByte(TW101, 0x9e, 0x80);
 534   2                              I2CWriteByte(TW101, 0x9f, 0x80);
 535   2      //Kuo
 536   2                              I2CWriteByte(TW101,0xDC, (H_Size43));
 537   2                              I2CWriteByte(TW101,0xDD, (H_Size43>>8)); 
 538   2      
 539   2      //                      if(!m_cStandard)
 540   2                              I2CWriteByte(TW101,0xDE, ((V_Size)&0xFF)); 
 541   2      //                      else
 542   2      //                      I2CWriteByte(TW101,0xDE, ((MV_Size)&0xFF)); 
 543   2                              I2CWriteByte(TW101,0xDF, (V_Size>>8)); 
 544   2      
 545   2                              if(!m_cStandard)
 546   2                              {
 547   3          #ifdef KVGA
 548   3                                      Hcut=10;
 549   3              #else
                                              Hcut=10;
C51 COMPILER V7.06   T101_UTIL                                                             06/16/2005 10:05:39 PAGE 10  

                      #endif 
 552   3                                      m_wVRes=230;  //ruby 2004-08-18
 553   3                      m_wHRes=720-2*Hcut-6;
 554   3      #ifdef AU_12
                              m_wHRes=698;
              #endif
 557   3                              }
 558   2                              else
 559   2                              {       
 560   3          #ifdef KVGA
 561   3                                      Hcut=10;
 562   3              #else
                                              Hcut=10;
                      #endif 
 565   3      
 566   3                                      m_wVRes=280;  //ruby 2004-08-18
 567   3                      m_wHRes=720-2*Hcut;
 568   3      #ifdef AU_12
                              m_wHRes=698;
              #endif
 571   3                      }
 572   2      
 573   2                      I2CWriteByte(TW101,0x40,Hcut);  //Ruby 2004-08-23  0x00);
 574   2              I2CWriteByte(TW101,0xD8,((H_Size-H_Size43)/2)); // 0x53);//Kuo Horizontal Main Display Start

⌨️ 快捷键说明

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