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

📄 1574init.lst

📁 MXIC旺宏液晶电视芯片MX88V44的源码
💻 LST
📖 第 1 页 / 共 2 页
字号:
 152          * Name          void All_Init(void)
 153          *
 154          * Description   Init all.
 155          *                               Timer1->mode2,Timer0->mode1
 156          *                               Baud rate=38400 in 14.318Mhz
 157          *
 158          * Return
 159          * DATE          Author          Description
 160          * ===========================================================================
 161          * 2004/06/24    Eson W.
 162          **/
 163          void    All_Init()
 164          {
 165   1              unsigned int    j;
 166   1              unsigned char i;
 167   1              j=0;
 168   1              SYS_RST=0;                                      //Reset 15xx                                                            //###---
 169   1                                                                                                                                                              //###   |
 170   1                      //Init. UART var.                                                                                                       //###   |
 171   1              UART_RxInUse = 0;                       //Init Rx for buffer 0                                          //###   |
 172   1                                                                      //the Rx buffer is double buffer                        //###   |
 173   1              Rx_Index = Data_Length =        //Init the length and index                                     //###   |
 174   1              Tx_Index = Tx_Length =                                                                                                  //###   |
 175   1              UARTFlag = 0;                                                                                                                   //###   |
 176   1                                                                                                                                                              //###   |
 177   1              init_clock();                           //Setting 8051 baud rate and timer clock        //###   |
 178   1                                                                                                                                                              //###   |
C51 COMPILER V7.02b   1574INIT                                                             05/24/2006 17:59:21 PAGE 4   

 179   1                      //Init the device information data                                                                      //###   |
 180   1              DEV_Inf[0] ='1'; DEV_Inf[1] ='5'; DEV_Inf[2] ='7'; DEV_Inf[3] ='4';             //###   |
 181   1              DEV_Inf[4] ='0'; DEV_Inf[5] ='0'; DEV_Inf[6] ='0'; DEV_Inf[7] ='0';             //###   |
 182   1              DEV_Inf[8] ='1'; DEV_Inf[9] ='2'; DEV_Inf[10]='2'; DEV_Inf[11]='8';             //###   |
 183   1              DEV_Inf[12]='I'; DEV_Inf[13]='N'; DEV_Inf[14]='N'; DEV_Inf[15]='O';             //###   |
 184   1                                                                                                                                                              //###   |
 185   1      //      DELAY(20);                                      //Mask by KMHo 2004-11-17                                       //###   |
 186   1                      // *****************************************************                        //###   |
 187   1                      // *** Please Check the Init. Reg. don't before Here ***                        //###   |
 188   1                      // *****************************************************                        //###   |
 189   1              SYS_RST=1;                                      //Reset pin to HI 15xx will normal working      //###---
 190   1              
 191   1      #ifdef TOSHIBA_PANEL
 192   1              SHDN_VGH=0;
 193   1              SHDN_L5V=0;
 194   1              SHDN_VGL=0;
 195   1              SHDN_VEE=0;      
 196   1      #else
                     SHDN_L5V = SHDN_VEE = SHDN_VGL = SHDN_VGH = 0;   //Control Panel Power
              #endif
 199   1              
 200   1              NTPASEL = 0;
 201   1              
 202   1              I2C_WriteByte(L44_WRID, 0x20,  0xC0);                   //Turn OFF Screen               //***---
 203   1              I2C_WriteByte(L44_WRID, 0x21,  0xff);                   //Turn ON Screen                //***---
 204   1                                                                                                                                                              //***   |
 205   1              for(i=0; i<WR_1574; i++)                                                //Set TCON Reg.                 //***   |
 206   1                      I2C_WriteByte(L44_WRID, TCON_RegVal[i*2],  TCON_RegVal[i*2+1]);         //***   |
 207   1              
 208   1              for (i=0; i<8; i++)                                                                                                             //***   |
 209   1                      CVD1_ReadWrite(0x01, CVD1_INITTab[i*2], CVD1_INITTab[i*2+1]);           //***   |                       
 210   1              for(i=0; i<WR_CVD1_BYTE; i++)                                                                                   //***   |
 211   1                      CVD1_ReadWrite(0x01, CVD1_NTSCTab[i*2], CVD1_NTSCTab[i*2+1]);           //***   |
 212   1                                                                                                                                                              //***   |
 213   1              OSD_Init();                                                                             //Initial 15xx's OSD    //***   |
 214   1              I2C_WriteByte(L44_WRID, 0x20,  0x40);                   //Turn ON Screen                //***---
 215   1      /*
 216   1         I2C_WriteByte(L44_WRID, 0x11,  0xF4);  //access gamma table
 217   1         for(j=0; j<768; j++)
 218   1         {         
 219   1         i= GAMMATAL[j];
 220   1         I2C_WriteByte(L44_WRID, 0x1B,  i);  //R
 221   1      //   I2C_WriteByte(L44_WRID, 0x1B,  i);  //G
 222   1      //   I2C_WriteByte(L44_WRID, 0x1B,  i);  //B
 223   1        }
 224   1         I2C_WriteByte(L44_WRID, 0x11,  0xFa);  //enable gamma table
 225   1      */
 226   1         }
 227          
 228          /**--------------------------------------------------------------------------
 229          * Name          void init_clock(void)
 230          *
 231          * Description   Init clock,
 232          *                               Timer1->mode2,Timer0->mode1
 233          *                               Baud rate=38400 in 14.318Mhz
 234          *
 235          * Return
 236          * DATE          Author          Description
 237          * ===========================================================================
 238          * 2004/06/24    Eson W.
 239          **/
 240          void init_clock(void)
C51 COMPILER V7.02b   1574INIT                                                             05/24/2006 17:59:21 PAGE 5   

 241          {
 242   1              SCON=0x50;                                              //
 243   1              TMOD=0x21;                                              //TIMER1 working in mode 2
 244   1                                                                              //Timer0 working in Mode 1
 245   1              TH1=0xFF;                                               //Baud rate 38400 in 14.318Mhz
 246   1      
 247   1              TH0=0x9E;                                               //Timer0 working in Mode 1 and set 20m sec.
 248   1              TL0=0x58;                                               //Working Cry=14.318MHz 1/14.318M * 12 = 0.8 us
 249   1                                                                              //      20ms = 0.8 * 25000
 250   1                                                                              //      TH0 = (65536 - 25000) / 256 = 0x9E
 251   1                                                                              //      TL0 = (65536 - 25000) % 256 = 0x58
 252   1              TI=0;
 253   1              RI=0;
 254   1              TR1=1;                                                  //Enable TIMER1
 255   1              TR0=1;                                                  //Enable TIMER0
 256   1              IE=0x92;                                                //Setup UART and Timer0 IRQ
 257   1                                                                              //      bit7:Enable All IRQ setting,EA=1
 258   1                                                                              //      bit6:Reserve
 259   1                                                                              //      bit5:Enable TIMER2 IRQ ,ET2=0
 260   1                                                                              //      bit4:Enable Serial port,ES=1
 261   1                                                                              //      bit3:Enable TIMER1 IRQ ,ET1=1
 262   1                                                                              //      bit2:Enable External/INT1,EX1=0
 263   1                                                                              //      bit1:Enable TIMER0 IRQ ,ET0=1
 264   1                                                                              //      bit0:Enable External/INT0,EX0=0
 265   1      }
 266          
 267          /**--------------------------------------------------------------------------
 268          * Name          BYTE    CVD1_ReadWrite(BYTE wr_type, BYTE addr, BYTE value)
 269          *                               BYTE    wr_type;                //0x00: for read value from Reg.
 270          *                                                                               //0x01: for write value to Reg.
 271          *                               BYTE    addr;                   //which on Reg. will read/write
 272          *                               BYTE    value;                  //buffer for read/write
 273          *
 274          * Description   TV Decoder is indirect Reg. in 1574.
 275          *                               There are 2Reg. one   for TV Decoder address port   (0x90)
 276          *                                                               other for TV Decoder data port          (0x91)
 277          *                               This function usages by I2C
 278          * Flow Chart
 279          *
 280          * Return        None
 281          *
 282          * DATE          Author          Description
 283          * ===========================================================================
 284          * 2004-09-13    K.M. Ho         This is first time implement
 285          **/
 286          BYTE    CVD1_ReadWrite(BYTE wr_type, BYTE addr, BYTE value)
 287          {
 288   1              I2C_WriteByte(L44_WRID, 0x90, addr);
 289   1              
 290   1              if (wr_type)                    I2C_WriteByte(L44_WRID, 0x91, value);
 291   1              else                    value = I2C_ReadByte(L44_WRID, 0x91);
 292   1                      
 293   1              return(value);
 294   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    380    ----
   CONSTANT SIZE    =    226    ----
   XDATA SIZE       =   ----       5
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
C51 COMPILER V7.02b   1574INIT                                                             05/24/2006 17:59:21 PAGE 6   

   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 + -