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

📄 gamma.lst

📁 TFT LCD驱动芯片T100A+AU7" Source code
💻 LST
字号:
C51 COMPILER V7.06   GAMMA                                                                 06/16/2005 10:05:41 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE GAMMA
OBJECT MODULE PLACED IN F:\T100_C~1\HUI_CH~1\铁将军\SIMULA~2\GAMMA.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE F:\T100_C~1\HUI_CH~1\铁将军\SIMULA~2\GAMMA.C DB SB OE

stmt level    source

   1          #include <reg51.h>
   2          #include "common.h"
   3          #include "System.h"
   4          #include "TW101Reg.h"
   5          #include "TwoWire.h"
   6          #include "Gamma.h"
   7          #include "GammaDat.h"
   8          
   9          #define GM_RGB_ALL_SAME
  10          
  11          
  12          //********************************************************************
  13          //Gamma Table
  14          //********************************************************************
  15          char code GAMMAData[]={
  16              0x50,39,
  17                    0x93,1,
  18                          0x00,
  19                    0x94,34,0x00,
  20              0x00,0x10,0x28,0x38,0x40,0x48,0x50,0x58,
  21              0x60,0x68,0x70,0x78,0x80,0x84,0x88,0x8c,
  22              0x90,0x94,0x98,0x9c,0xA0,0xA8,0xB0,0xB8,
  23              0xC0,0xC8,0xD0,0xD8,0xE0,0xE8,0xF0,0xF8,0xFF,
  24              -1
  25          };
  26          char code FilterData[]={
  27          //
  28          0x50,92,
  29                  0x70,1,
  30                          0x81,
  31                  0x71,84,0x00,
  32          /*0x54,0x92,0x94,0x82,0xD4,0x72,0x15,0x6B,0x55,0x5B,0x96,0x53,0xB5,0x43,0xD5,0x3B,
  33          0xF4,0x2B,0x14,0x24,0x34,0x1C,0x54,0x14,0x74,0x0C,0x94,0x04,0xB4,0xCC,0xB3,0xD4,
  34          //H fitler coef data
  35          0x15,0x60,0xB5,0x14,0x40,0xB5,0x13,0x20,0xB5,0x13,0x02,0xBD,0x13,0xC4,0xBC,0x34,0xA6,0xC4,
  36          0x34,0x68,0xC4,0x34,0x2A,0xC4,0x54,0xEC,0xCB,0x55,0x90,0xCB,0x75,0x52,0xD3,0x96,0x14,0xD3,
  37          0x96,0xB6,0xCA,0xB6,0x58,0xCA,0xD7,0xFA,0xC1,0xF7,0x9C,0xC1,
  38          //V16/H_16
  39          0x38,0xDF,0xDC,//*/
  40          
  41                          //Vertical Filter Data output to register
  42                          0x00,0x82,0x51,0x7A,0x71,0x72,0x91,0x6A,
  43                          0xB1,0x62,0xD1,0x5A,0xF1,0x52,0x11,0x4B,
  44                          0x31,0x43,0x51,0x3B,0x71,0x33,0x91,0x2B,
  45                          0xB1,0x23,0xD1,0x1B,0xF1,0x13,0xE0,0x0B,
  46                          //H fitler coef data
  47                          0x00,0x00,0x04,0x00,0xE2,0x8B,0x11,0xC4,
  48                          0x8B,0x11,0x86,0x8B,0x11,0x68,0x93,0x11,
  49                          0x2A,0x93,0x32,0x0C,0x9B,0x32,0xCE,0x9A,
  50                          0x32,0x90,0x9A,0x32,0x52,0x9A,0x52,0x14,
  51                          0xA2,0x52,0xD6,0xA1,0x52,0x98,0xA1,0x72,
  52                          0x58,0x99,0x93,0x1A,0x99,0x93,0xDC,0x98,
  53                          //V16/H_16
  54                          0x93,0x1E,0x04,//*/
  55                  0x70,1,
C51 COMPILER V7.06   GAMMA                                                                 06/16/2005 10:05:41 PAGE 2   

  56                          0xB0,
  57          -1
  58          };
  59          
  60          /****************************************************************/
  61          /*                                                              */
  62          /*                                                              */
  63          /*                                                              */
  64          /****************************************************************/
  65          
  66          void I2CWriteTbl(char *pString)
  67          {
  68   1          uCHAR cAddr,cReg,cNum0,cNum1,cINC;
  69   1          while(*pString != -1)
  70   1          {
  71   2                          cAddr       =       *pString++;
  72   2                          cNum0       =       *pString++;
  73   2                          while(cNum0)
  74   2                          {
  75   3                                    cReg      =       *pString++;
  76   3                                    cNum1     =       *pString++;
  77   3                                    cNum0 -=  (cNum1+2);
  78   3                                    if(cNum1!=1)
  79   3                                    {
  80   4                                              cINC    =       *pString++;
  81   4                                              cNum1  -=       1;
  82   4                                    }
  83   3                                    while(cNum1--)
  84   3                                    {
  85   4                                              I2CWriteByte(cAddr,cReg,*pString++);
  86   4                                              cReg+=cINC;
  87   4                                    }
  88   3                          }
  89   2          }
  90   1      }
  91          
  92          
  93          void LoadGammaTable(uCHAR cGammaModeID)
  94          {
  95   1      //    I2CWriteTbl(GAMMAData);
  96   1      //              I2CWriteTbl(FilterData);
  97   1      #if 1
  98   1              uCHAR   i;
  99   1              uCHAR c;
 100   1              unsigned char code *p=pcGammaData[cGammaModeID];
 101   1              unsigned char code *pg=pcGammaData[cGammaModeID];
 102   1              unsigned char code *pb=pcGammaData[cGammaModeID];
 103   1      
 104   1      #ifndef GM_RGB_ALL_SAME
                      uCHAR j;
                      uCHAR code **ppcGm;
                      uCHAR code *pcGm=pcGammaData[cGammaModeID];
              #endif // GM_RGB_ALL_SAME
 109   1      
 110   1      //disable I2C Auto_Inc_Address
 111   1              I2CWriteByte(TW101,TW_INTERFACE,I2CReadByte(TW101,TW_INTERFACE)&~AUTO_INC);
 112   1      //
 113   1      #if 1//def GM_RGB_ALL_SAME
 114   1              I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0xc0);
 115   1              I2CWriteByte(TW101,GAMMA_ADDR,0x00);
 116   1      
 117   1              for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
C51 COMPILER V7.06   GAMMA                                                                 06/16/2005 10:05:41 PAGE 3   

 118   2                      c=*p++;
 119   2      //              if(c)c=c-c/16;
 120   2                      I2CWriteByte(TW101,GAMMA_DATA,(c));
 121   2              }
 122   1              I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0x80);
 123   1              I2CWriteByte(TW101,GAMMA_ADDR,0x00);
 124   1              for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
 125   2                      c=*pg++;
 126   2                      I2CWriteByte(TW101,GAMMA_DATA,c);
 127   2              }
 128   1              I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0x40);
 129   1              I2CWriteByte(TW101,GAMMA_ADDR,0x00);
 130   1              for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
 131   2                      c=*pb++;
 132   2                      I2CWriteByte(TW101,GAMMA_DATA,c);
 133   2              }
 134   1                      //11.13 I2CWriteByte(TW101,GAMMA_DATA,pcGammaDataRGB[cGammaModeID][i]);
 135   1      #endif // GM_RGB_ALL_SAME
 136   1      #if 0 //def GM_RGB_ALL_SAME
                      I2CWriteByte(TW101,IMG_FUN_CTRL,I2CReadByte(TW101,IMG_FUN_CTRL)&GAMMA_RGB);
                      I2CWriteByte(TW101,GAMMA_ADDR,0x00);
              
                      for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
                              c=*p++;
                              I2CWriteByte(TW101,GAMMA_DATA,c);
                      }
                              //11.13 I2CWriteByte(TW101,GAMMA_DATA,pcGammaDataRGB[cGammaModeID][i]);
              #endif // GM_RGB_ALL_SAME
 146   1      
 147   1      #ifndef GM_RGB_ALL_SAME
              
                      ppcGm = pcGammaData + cGammaModeID*GAMMA_PNUM;
                      for(j=3;j<=1;j--){
                              pcGm = *ppcGm++;
                              I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)& ~GAMMA_CTL_MSK)|(j<<6));
                              I2CWriteByte(TW101,GAMMA_ADDR,0x00);
                              for(i=0;i<33;i++)
                                      I2CWriteByte(TW101,GAMMA_DATA,pcGm[i]);
                      }
              #endif // GM_RGB_ALL_SAME
 158   1      
 159   1      //  I2CWriteByte(TW101,IMG_FUN_CTRL,I2CReadByte(TW101,IMG_FUN_CTRL)|ENGAMMA);
 160   1        I2CWriteByte(TW101,TW_INTERFACE,I2CReadByte(TW101,TW_INTERFACE)|AUTO_INC);
 161   1      
 162   1          return;
 163   1      #endif          
 164   1      }
C51 COMPILER V7.06   GAMMA                                                                 06/16/2005 10:05:41 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
isrcSVIDEO . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P2 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A0H  1
ScaleEnd . . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
ROMDATA. . . . . . . . . . . . . . . .  TYPEDEF  CODE   INT      -----  2
VIDEOINPUT . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
sCHAR. . . . . . . . . . . . . . . . .  TYPEDEF  -----  CHAR     -----  1
uCHAR. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
BOOL16 . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
sROM8. . . . . . . . . . . . . . . . .  TYPEDEF  CODE   CHAR     -----  1
uROM8. . . . . . . . . . . . . . . . .  TYPEDEF  CODE   U_CHAR   -----  1
ScaleFULL. . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
isrcCVIDEO2. . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
isrcCVIDEO3. . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
isrcCVIDEO4. . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
BOOL . . . . . . . . . . . . . . . . .  TYPEDEF  DATA   INT      -----  2
sWORD. . . . . . . . . . . . . . . . .  TYPEDEF  -----  INT      -----  2
Scale4_3 . . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
VOID . . . . . . . . . . . . . . . . .  TYPEDEF  -----  VOID     -----  -----
uWORD. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
BITS . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
_LoadGammaTable. . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  cGammaModeID . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
  i. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0000H  1
  c. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0001H  1
  p. . . . . . . . . . . . . . . . . .  AUTO     DATA   PTR      0002H  2
  pg . . . . . . . . . . . . . . . . .  AUTO     DATA   PTR      0004H  2
  pb . . . . . . . . . . . . . . . . .  AUTO     DATA   PTR      0006H  2
_I2CReadByte . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
BYTE . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
pcGammaData. . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    0021H  9
WORD . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
_I2CWriteByte. . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
sROM16 . . . . . . . . . . . . . . . .  TYPEDEF  CODE   INT      -----  2
uROM16 . . . . . . . . . . . . . . . .  TYPEDEF  CODE   U_INT    -----  2
isrc_end . . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
_I2CWriteTbl . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  pString. . . . . . . . . . . . . . .  AUTO     DATA   PTR      0000H  3
  cAddr. . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0003H  1
  cReg . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0004H  1
  cNum0. . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0005H  1
  cNum1. . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0006H  1
  cINC . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0007H  1
GammaDataTableRGB0 . . . . . . . . . .  PUBLIC   CODE   ARRAY    0000H  33
isrcTV . . . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
GAMMAData. . . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    002AH  42
FilterData . . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    0054H  95
Scale16_9. . . . . . . . . . . . . . .  E_CONST  -----  U_CHAR   -----  1
Scale_Type . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
sDWORD . . . . . . . . . . . . . . . .  TYPEDEF  -----  LONG     -----  4
uDWORD . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    445    ----
   CONSTANT SIZE    =    179    ----
   XDATA SIZE       =   ----    ----
C51 COMPILER V7.06   GAMMA                                                                 06/16/2005 10:05:41 PAGE 5   

   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      16
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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