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

📄 t100.lst

📁 在51单片机上用C写的T100,T101TFT屏的控制程序,有OSD
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.06   T100                                                                  09/21/2005 18:16:31 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE T100
OBJECT MODULE PLACED IN D:\KSP700~2\T100.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE D:\KSP700~2\T100.C DB SB OE OT(6)

stmt level    source

   1          #include "REG51.H"
   2          #include <intrins.h>
   3          #include "Common.h"
   4          #include "Remote.h"
   5          //#include "Struct.h"
   6          #include "OSDDraw.h"
   7          //#include "OSDCtrl.h"
   8          //#include "Video.h"
   9          #include "TwoWire.h"
  10          #include "TW100Reg.h"
  11          
  12          #include "T100Data_AU.h"
  13          //////////////////////////////////////////////////
  14          #include "KSP7001.h" // function declaration
  15          #include "OSD_main.h"
  16          #include "OSD_source.h"
  17          #include "OSD_audio.h"
  18          #include "OSD_video.h"
  19          #include "OSD_screen.h"
  20          #include "OSD_system.h"
  21          /////////////////////////////////////////////////
  22          
  23          
  24          
  25          sbit    T100_RESET      = P1^4;
  26          sbit    SCL             = P1^6;
  27          sbit    SDA             = P1^7;
  28          sbit    BL_EN           = P0^7;
  29          /*#if 1
  30          #define kyKEY_MSK               0x81
  31          #define KEYPORT                 P0
  32          
  33          #define kyMENU          0x08
  34          #define kyDEC           0x04
  35          #define kyINC           0x02
  36          #define kySOURCE        0x10
  37          #define kyUD_LR         0x20
  38          #define kyFULL_43       0x40
  39          #else
  40          #define kyKEY_MSK               0xc0
  41          #define KEYPORT                 P2
  42          
  43          #define kyMENU          0x02
  44          #define kyDEC           0x08
  45          #define kyINC           0x04
  46          #define kySOURCE        0x10
  47          #define kyUD_LR         0x20
  48          #define kyFULL_43       0x01//0x40
  49          #endif*/
  50          //EEPVIDEO   idata EepVideo;
  51          /*uCHAR bdata Flag1;
  52          uCHAR bdata Flag2;
  53          
  54          sbit m_bPanelClose      = Flag1 ^ 0;
  55          sbit m_bBKPowerOn               = Flag1 ^ 1;
C51 COMPILER V7.06   T100                                                                  09/21/2005 18:16:31 PAGE 2   

  56          sbit m_bKyPowerOn               = Flag1 ^ 2;
  57          sbit m_bChipPowerOn             = Flag1 ^ 3;
  58          sbit m_bTimer0Overflow  = Flag1 ^ 4;
  59          sbit m_bOSDEnable       = Flag1 ^ 5;
  60          sbit ir_enable          = Flag1 ^ 6;
  61          sbit m_bKyblocked               = Flag1 ^ 7;
  62          sbit m_bFactryMode              = Flag2 ^ 0;
  63          sbit m_bFactryReady             = Flag2 ^ 1;
  64          sbit m_bRelease                 = Flag2 ^ 2;
  65          sbit m_bAir_Cable               = Flag2 ^ 3;
  66          sbit m_bTV_Num_Bits             = Flag2 ^ 4;
  67          sbit m_bTV_Skip                 = Flag2 ^ 5;*/
  68          /*sbit  kyMENU          = P0^1;
  69          sbit    kyDEC           = P0^2;
  70          sbit    kyINC           = P0^3;
  71          sbit    kySOURCE        = P0^4;
  72          sbit    kyUD_LR         = P0^5;
  73          sbit    kyFULL_43       = P0^6;//*/
  74          bit bNTSC_PAL   = 0;      //0:PAL               1:NTSC
  75          bit bFULL_43    = 1;      //0:4:3               1:FULL
  76          bit bUP_DOWN    = 1;      //0:Down to Up        1:Up to Down
  77          bit bLEFT_RIGHT = 1;      //0:Right to Left     1:Left to Right
  78          bit ir_enable   =0;
  79          //bit bGAMMA_ADJ   =0;      //0: Nomral            1: Gamma Adjust
  80          uCHAR idata ir_data;
  81          uCHAR idata cSource     = 5;      //2-4:CVBS2-4         5:S-Video       6:ITU656
  82          uCHAR idata cStandard   = 0xff;   //0:PAL               4:NTSC
  83          //uCHAR idata c60HZ_Mode=0;
  84          //uCHAR idata c50HZ_Mode=0;
  85          //uCHAR idata cKey_Curr,cKey_Pre;
  86          
  87          //uCHAR idata Repeat_Times;
  88          //uWORD idata m_wBuff[3];
  89          //uCHAR idata m_cBuff[5];
  90          //uCHAR idata m_cOSDEvent;
  91          //uCHAR idata m_cOSDFunc;
  92          //uCHAR idata m_cCurreKey;
  93          //uCHAR idata m_cPreKey;
  94          //uCHAR idata m_cItem;
  95          //uCHAR idata m_cGammaFlag;
  96          
  97          void Initial(void);
  98          void Delay_ms(uCHAR);
  99          void InitT100(void);
 100          void ClosePanel(void);
 101          void OpenPanel(void);
 102          void DetectNTSC_PAL(void);
 103          void SetSource(void);
 104          void SetMode(void);
 105          void SetUD_LR(void);
 106          void I2CWriteTbl(char*);
 107          //bit IRGammaAdjust(void);
 108          uCHAR I2CReadByte(uCHAR, uCHAR);
 109          uCHAR I2CWriteByte(uCHAR,uCHAR,uCHAR);
 110          
 111          //IR
 112          //void IRSourceSelCtrl(void);
 113          //void IRSCALEREvent(void);
 114          //void IRDismodeEvent(void);
 115          //bit IRDECREASEEvent(void);
 116          //bit IRINCREASEEvent(void);
 117          //bit IRMENUEvent(void);
C51 COMPILER V7.06   T100                                                                  09/21/2005 18:16:31 PAGE 3   

 118          //bit IRDownKeyCtrl(void);
 119          //bit IRUpKeyCtrl(void);
 120          
 121          //bit ir_auto = 0;
 122          
 123          //uCHAR idata AddPoint=0;
 124          //uCHAR idata GammaBuffer=0;
 125          //void AdjustGammmaDate(void);
 126          //void SaveEeprom(void);
 127          
 128          ////////////////////////////////////////////////////
 129          // OSD variables
 130          /////////////////////////////////////////////////////////
 131          // key flag
 132          bit osd = 0;
 133          bit enter = 0;
 134          bit up = 0;
 135          bit down = 0;
 136          bit left = 0;
 137          bit right = 0;
 138          
 139          //variable for auto press
 140          //bit AutoRemo=0;
 141          //unsigned int AutoRemo_time=0;
 142          
 143          bit OSD_enable; //0:disable, 1:enable
 144          unsigned int OSD_time=0;
 145          
 146          //cursor position/state
 147          //bit modify; //0 modify disable, 1 modify enable
 148          uCHAR window; //0 OSD main menu
 149                      //1 OSD sub-menu
 150                      //2 Reset question
 151          
 152          unsigned char cursor1, cursor2;
 153          
 154          //OSD main menu
 155          
 156          //unsigned char source_val; //source chosen
 157          unsigned char CurMode;
 158          
 159          //Audio
 160            /*  unsigned char bass; //0(-7)->14(+7)
 161              unsigned char treble; //0(-7)->14(+7)
 162              unsigned char balance; //0(L7)->14(R7)
 163              unsigned char fade; //0(F7)->14(R7)*/
 164          
 165              unsigned char       Aud_BassLevel;          //'0~15d'
 166              unsigned char       Aud_TrebleLevel;        //'0~15d'
 167              unsigned char       Aud_BalanceLevel;       //'0~15d'
 168              unsigned char       Aud_FaderLevel;         //'0~15d'
 169          
 170              unsigned int AudioStatus=0;
 171              /*
 172              bit subwoofer; //0 off, 1 on
 173              bit beep; //0 off, 1 on*/
 174          
 175              //unsigned char start_vol; //0->50
 176              unsigned char       Aud_IniVol;             //      '0~45d'
 177          
 178          //Video
 179              unsigned char bright;
C51 COMPILER V7.06   T100                                                                  09/21/2005 18:16:31 PAGE 4   

 180              unsigned char contrast;
 181              unsigned char color;
 182              unsigned char sharp;
 183          //screen
 184              unsigned int        VideoStatus=0;
 185           /*
 186              bit direction; //1 inverse, 0 normal
 187              bit full;    //0 4:3, 1 16:9
 188            */
 189          //System
 190              //unsigned char in_out; //0 none, 1 level-1,
 191                                    //2 level-2, 3 level-3
 192              unsigned char MinoutState;
 193          
 194              //unsigned char tilt_range; //2 auto, 3 1-3,
 195                                        //4 1-4, 5 1-5
 196              unsigned char TiltLimit;
 197          
 198              //unsigned char tv_sys; //0 NTSC, 1 PAL, 2 CHINESE
 199               unsigned char ChannelType;
 200          
 201              //unsigned char tv_sound; //0 sound-3, 1 sound-1
 202                                      //2 sound-2
 203              unsigned char PalType;
 204          
 205              //bit tilt; //0 auto, 1 manual
 206              unsigned int TiltFlag0;
 207              //bit backlight; //0 normal, 1 bright
 208          
 209          //Reset
 210              bit reset_valid; //0: no   1:ok
 211          
 212          void main(void)
 213          {
 214   1              Initial();
 215   1              OSDInit();
 216   1              KSP7001_Init();
 217   1              while(1)
 218   1              {
 219   2                  DetectNTSC_PAL();
 220   2                   if(ir_enable)
 221   2                     {ir_enable=0;
 222   3                         RemoteEvent();
 223   3                      }
 224   2                 else if(!EX1)
 225   2                      {
 226   3                              EX1=1;
 227   3                              ir_data=0;
 228   3                      }
 229   2                  if(osd)
 230   2                  {
 231   3                      if(!OSD_enable)
 232   3                          OSD_OpenMain();
 233   3                      else
 234   3                      {
 235   4                          OSDExit();
 236   4                          OSD_enable = 0;
 237   4                      }
 238   3                      osd=0;
 239   3                  }
 240   2                  if(OSD_enable)
 241   2                  {
C51 COMPILER V7.06   T100                                                                  09/21/2005 18:16:31 PAGE 5   

 242   3                      if(enter) OSD_Enter();
 243   3                      if(up || down) OSD_UpDown();
 244   3                      if(left || right) OSD_LeftRight();
 245   3      
 246   3                      if(OSD_time>300)
 247   3                      {
 248   4                          OSDExit();
 249   4                          OSD_time=0;
 250   4                      }
 251   3                      OSD_time++;
 252   3                  }
 253   2                      //kyKeypad();
 254   2      
 255   2                /*  DetectNTSC_PAL();
 256   2                      #ifdef OSD_EN
 257   2      //                      OSDEnable();
 258   2                      #endif
 259   2      
 260   2      //                OSDEnable();*/
 261   2              }//while
 262   1      }//main
 263          
 264          void Initial(void)
 265          {
 266   1      //Initial 8051
 267   1              P0=0xff;
 268   1              P1=0xff;
 269   1              P2=0xff;
 270   1              P3=0xff;
 271   1      //8051Register Set
 272   1              IE      = 0;    // disable all interrupt
 273   1              TMOD    = 0x11;  // Timer1 Mode 1, Timer0 Mode 1;
 274   1              //TMOD  = 0x01; // Timer0 Mode 1;
 275   1              EX0     = 0;     // disable external interrupt 0, IE[0]
 276   1              EX1             = 0;
 277   1              //ET0   = 1;    // enable bTimer 0
 278   1              //IT0   = 1;     // falling endge generate interrupt, TCON[0]
 279   1              INT0    = 1;
 280   1              IT1     = 1;     // falling endge generate interrupt, TCON[0]
 281   1              INT1    = 1;

⌨️ 快捷键说明

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