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

📄 mcu.lst

📁 NT68521源代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
C51 COMPILER V7.50   MCU                                                                   03/18/2008 22:04:55 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE MCU
OBJECT MODULE PLACED IN .\BIN\MCU.obj
COMPILER INVOKED BY: D:\设计软件\Keil\C51\BIN\C51.EXE SRC\MCU.C BROWSE DEBUG OBJECTEXTEND PRINT(.\LST\MCU.lst) OBJECT(.\
                    -BIN\MCU.obj)

line level    source

   1          #include "stdio.h"
   2          #include "8051.H"
   3          #include "RAM.H"
   4          #include "MCU.H"
   5          #include "MyDef.H"
   6          #include "IIC.H"
   7          #include "F63REG.H"
   8          #include "UserAdj.H"
   9          #include "Scaler.H"
  10          #include "AutoAdj.H"
  11          #include "OSD.H"
  12          #include "ModeHandle.H"
  13          #include "sRGB.H"
  14          #include "TUNER.H"
  15          
  16          unsigned char IRCode,lrflag;
  17          unsigned char DecodeDelay;
  18          bit zw,MenuFlag;
  19          unsigned char x1,DataSbuf[3];
  20          
  21          unsigned char SelVideoMenu;
  22          code unsigned char KeyTab[]={
  23                  0x00,0x20,0x40,0x60,0x7f
  24          };
  25          
  26          code unsigned int IR_Tab[]={
  27          /*      0x20df,0x807f,0xb24d,0x8877,0xb847,0x9867,0x18e7,0xc03f,0x10ef,0xe817,  //menu,+,-,CH+,CH-,POWER,PC/AV,
             -SEARCH,MUTE,/
  28                  0xd02f,0x609f,0x708f,0x6897,0x7887,0x40bf,0x50af,0x48b7,0x58a7,0xe01f,   //0,1,2,3,4,5,6,7,8,9
  29          */
  30          //      0x807f,0xe01f,0x20df,0x40bf,0x609f,0xf807,0x50af,0xf00f,0x38c7,0x10ef,  //menu,+,-,CH+,CH-,POWER,PC/AV,
             -SEARCH,MUTE,/
  31          //      0x30cf,0x18e7,0x58a7,0xd827,0x28d7,0x6897,0xe817,0x08f7,0x48b7,0xc837,   //0,1,2,3,4,5,6,7,8,9
  32          //      0x28d7,0x38c7,0xf00f,0xf807,0xc837,0x08f7  // L/R,U/D,AUTOADJUST,SEARCH1,GAME/PC,Display
  33          //    0x6897,0x48b7,0x08f7,0xb04f,0xa857,0x40bf,0x50af,0xf00f,0xA05F,0x5FA0,  //menu,+,-,CH+,CH-,POWER,PC/
             -AV,SEARCH,MUTE,/
  34          //      0xcf30,0xe718,0xa758,0xd827,0xd728,0x9768,0x17e8,0xf708,0xb748,0x37c8,   //0,1,2,3,4,5,6,7,8,9
  35                  0x6897,0x48b7,0x08f7,0xb04f,0xa857,0x40bf,0x50af,0xa05f,0x807f,0x5FA0,  //menu,+,-,CH+,CH-,POWER,PC/AV,SE
             -ARCH,MUTE,/
  36                  0xcf30,0xe718,0xa758,0xd827,0xd728,0x9768,0x17e8,0xf708,0xb748,0x37c8,   //0,1,2,3,4,5,6,7,8,9
  37          };
  38          
  39          code unsigned char IR_KeyTab[]={
  40                  0x77,0x44,0x33,0x55,0x66,0x11,0x22,0x1c,0x0d,0x0b,  //menu,+,-,CH+,CH-,POWER,PC/AV,SEARCH,MUTE,/
  41                  0x0a,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,   //0,1,2,3,4,5,6,7,8,9
  42          //      0x2a,0x2b,0x2c,0x2d,0x2e,0x3a  // L/R,U/D,AUTOADJUST,SEARCH1,GAME/PC,Display
  43          };
  44          
  45          void CheckIRKey(void)
  46          {
  47   1      unsigned int n;
  48   1      unsigned char m;
  49   1      unsigned long value;
  50   1              if(!IRDATA)
C51 COMPILER V7.50   MCU                                                                   03/18/2008 22:04:55 PAGE 2   

  51   1              {
  52   2                      IR_Timer = 0;
  53   2                      while(!IRDATA)
  54   2                      {
  55   3                              if(lrflag==1)
  56   3                              {
  57   4                                      if(IR_Timer>30 && IR_Timer<48)
  58   4                                              IRCode=0x33;
  59   4                              }
  60   3                              else if(lrflag==2)
  61   3                              {       if(IR_Timer>30 && IR_Timer<48)
  62   4                                              IRCode=0x44;
  63   4                              }
  64   3                              if(IR_Timer > 48)               //> 12 ms
  65   3                                      return;
  66   3                      }
  67   2                      n = IR_Timer;
  68   2                      IR_Timer = 0;
  69   2                      if(n < 24)                      // < 6 ms
  70   2                              return;
  71   2                      while(IRDATA)
  72   2                      {
  73   3                              if(IR_Timer > 20)               // > 5 ms
  74   3                                      return;
  75   3                      }
  76   2                      n = IR_Timer;
  77   2                      IR_Timer = 0;
  78   2      
  79   2                      if((n > 16)&&(n < 20))                 //4ms~5ms
  80   2                      {
  81   3                                      for(m=0; m<32; m++)
  82   3                                      {
  83   4                                              while(!IRDATA)
  84   4                                              {
  85   5                                                      if(IR_Timer > 4)          //> 1ms
  86   5                                                              return;
  87   5                                              }
  88   4                                              n = IR_Timer;
  89   4                                              IR_Timer = 0;
  90   4                                              while(IRDATA)
  91   4                                              {
  92   5                                                      if(IR_Timer > 8)           //> 2ms
  93   5                                                              return;
  94   5                                              }
  95   4                                              n = IR_Timer;
  96   4                                              IR_Timer = 0;
  97   4                                              value = value << 1;
  98   4                                              if(n > 4)                         // > 1ms
  99   4                                                      value |= 0x01;
 100   4                                      }
 101   3      //                              n = (unsigned int)(value >> 16);
 102   3      //                              if(n == 0x01fe)  //user code(0x7f)
 103   3      //                              {
 104   3                                              if((value & 0xffff) != 0) lrflag=0;
 105   3                                              for(m=0; m<26; m++)
 106   3                                              {
 107   4                                                      if(IR_Tab[m] == (unsigned int)(value & 0xffff))
 108   4                                                      {
 109   5                                                              IRCode = IR_KeyTab[m];
 110   5                                                              if(IRCode==0x33) {lrflag=1;}
 111   5                                                              else if(IRCode==0x44) {lrflag=2;}
 112   5                                                              else 
C51 COMPILER V7.50   MCU                                                                   03/18/2008 22:04:55 PAGE 3   

 113   5                                                              { lrflag=0; }
 114   5                                                              IR_Repeat = m;
 115   5                                                              RepeatTimer = KeyHoldTime;
 116   5                                                              IR_RepeatTimer = KeyHoldTime;
 117   5                                                      }
 118   4                                              }
 119   3      //                              }
 120   3                      }
 121   2                      else
 122   2                      {
 123   3                              if((n > 8)&&(n < 10))
 124   3                              {
 125   4                                      while(!IRDATA)
 126   4                                      {
 127   5                                              if(IR_Timer > 4)        // > 1 ms
 128   5                                                      return;
 129   5                                      }
 130   4                                      n = IR_Timer;
 131   4                                      IR_Timer = 0;
 132   4                                      if((n > 1)&&(IR_Repeat > 19)&&(IR_Repeat < 24))
 133   4                                      {       
 134   5                                              if((IR_RepeatTimer != 0)&&((OSD_Type == 2)||(OSD_Type == 3)))
 135   5                                              {
 136   6                                                      IR_RepeatTimer = 20;
 137   6                                                      IRCode = IR_KeyTab[IR_Repeat];
 138   6                                              }
 139   5                                      }
 140   4                              }
 141   3                      }
 142   2              }
 143   1      }
 144          
 145          code unsigned char SystemRegTab[]={
 146                  0xf8,   // PortA,0xf1
 147                  0xff,   // PortB
 148          #if PanelPowerActive == High
 149                  0x6c,   // PortC
 150          #else
                      0xee,   // PortC
              #endif
 153                  0x7e,   // PortD,0x6e
 154                  0x55,   // CLRWDT
 155                  0x98,   // ADC_CON
 156                  0x00,   // ADC0_REG
 157                  0x00,   // ADC1_REG
 158                  0x00,   // ADC2_REG
 159                  0x00,   // ADC3_REG
 160                  0x00,   // PWM0 Enable,ENPWM_LB
 161                  0x88,   // PWM15 Enable,ENPWM_HB
 162                  0x00,   // PWM0
 163                  0x00,   // PWM1
 164                  0x00,   // PWM2
 165                  0x00,   // PWM3 
 166                  0x00,   // PWM4 
 167                  0x00,   // PWM5
 168                  0x00,   // PWM6
 169                  0x00,   // PWM7
 170                  0x00,   // PWM8
 171                  0x00,   // PWM9
 172                  0x00,   // PWM10
 173                  0x00,   // PWM11 Volume
 174                  0x00,   // PWM12 
C51 COMPILER V7.50   MCU                                                                   03/18/2008 22:04:55 PAGE 4   

 175                  0x00,   // PWM13 
 176                  0x00,   // PWM14 
 177                  0x00,   // PWM15 Brightness
 178                  0x8A,   // DDC_CTRL
 179                  0x00,   // DDC_REG
 180                  0x40,   // DDC_ADDR
 181                  0xFF,   // INTIIC0_FLG/CLR
 182                  0x1F,   // INTIIC0_EN   
 183                  NOVATEK_Addr,   // IIC0_ADDR
 184                  0xFF,   // IIC0_TXDAT
 185                  0x00,   // IIC0_CON
 186                  0xF0,   // IIC0_CLK
 187                  0xFF,   // INTIIC1_FLG/CLR
 188                  0x00,   // INTIIC1_EN
 189                  0x00,   // IIC1_ADDR
 190                  0xFF,   // IIC1_TXDAT
 191                  0x00,   // IIC1_CON
 192                  0xF3,   // IIC1_CLK
 193                  0x00,   // INT_SRC
 194                  0x00,   // INTEXT_FLG/CLR
 195                  0x00,   // INTEXT_EN
 196                  0x00,   // INTHV_FLG/CLR
 197                  0x00,   // INTHV_EN 
 198                  0x60,   // SYNC_REG
 199                  0x08,   // HVO_REG
 200                  0xE0,   // HVI_REG
 201                  0x00,   // HPW_REG
 202                  0x00,   // HFLT_REG
 203                  0x0E,   // CLMP_REG
 204                  0x20,   // PAT_LT
 205                  0x20,   // PAT_RT
 206                  0x20,   // PAT_UP
 207                  0x20,   // PAT_DN
 208                  0x0f,   // HVCNT_CTRL
 209                  0x00,   // HCNT_LB
 210                  0x00,   // HCNT_HB
 211                  0x00,   // VCNT_LB
 212                  0x00,   // VCNT_HB
 213                  0xc8,   // DCNT_LB
 214                  0x00,   // DCNT_HB --> 12M/60KHz = 0x00c8
 215                  0x20,   // LCNT_LB
 216                  0x03,   // LCNT_HB --> 60KHz/75Hz = 0x0320
 217                  0x40,   // MUTE_CTRL
 218                  0x00,   // ISP_REG
 219                  0xFF,   // FLASH_BUF
 220                  0x00,   // RDPA_REG
 221                  0xff,   // RDPB_REG 
 222                  0x44,   // RDPC_REG
 223                  0x64,   // RDPD_REG
 224          };      
 225          
 226          void InitMCU(void)
 227          {
 228   1      unsigned char *p;
 229   1      unsigned char i;
 230   1              p = &PortA;
 231   1              for(i=0; i<0x4A; i++){
 232   2                      *p = SystemRegTab[i];
 233   2                      p++;
 234   2              }
 235   1              CLRWDT = 0x55;
 236   1              CmdTxPtr1 = 0;
C51 COMPILER V7.50   MCU                                                                   03/18/2008 22:04:55 PAGE 5   

 237   1              CmdTxPtr2 = 0;
 238   1              CmdRxPtr1 = 0;
 239   1              CmdRxPtr2 = 0;
 240   1              T0_INT_CNT = 0;
 241   1              rwbuf = 0;
 242   1              abuf = 0;
 243   1              dbuf = 0;
 244   1              if((PortC & BIT_6) == 0){

⌨️ 快捷键说明

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