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

📄 main.lst

📁 UPS111配小尺寸3.5寸摸拟屏的源码
💻 LST
📖 第 1 页 / 共 4 页
字号:
C51 COMPILER V7.00  MAIN                                                                   03/04/2004 16:28:50 PAGE 1   


C51 COMPILER V7.00, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN Main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Main.c BROWSE MODA2 DEBUG OBJECTEXTEND

stmt level    source

   1          //===================================================================================
   2          //
   3          //                                 MAIN.C
   4          //   Author: Duran Liu
   5          //   Date: 06\12\03
   6          //   Version: 1.0
   7          //   Copyright: AUO
   8          //===================================================================================
   9          
  10          #include "include.h"
  11          #include "MAIN.h"
  12          
  13          BYTE cou;
  14          BYTE OSDStatus;
  15          BYTE VSCount,VSBuf; 
  16          bit OSDEND;
  17          
  18          
  19          void main(void)
  20          {
  21   1        EA=1;
  22   1        EnableINT0;//  EX0=1,IE0=1;
  23   1        EnableINT1;//  EX1=1,IE1=1;
  24   1        TMOD=0x21;
  25   1        TR0=0;
  26   1        TL0=(65536-200)%256,TH0=(65536-200)/256;
  27   1        ET0=1,PT0=1;
  28   1        IMPSR=0x00;//page 0.
  29   1        VSCount=0;//,VSFlag=1;
  30   1        MemInit();//For memory control
  31   1        NP=1;//The initiation is NTSC mode.
  32   1        //NP=0;//The initiation is PAL mode.
  33   1        ModeBuf=P1;
  34   1      //************* For IIC ************************************ 
  35   1        InitIIC;
  36   1        DelayX1ms(5);
  37   1      //**********************************************************
  38   1      
  39   1      //************* For EEPROM ************************************
  40   1      //====  Read MEMBUF ====================
  41   1        EnableMEM;
  42   1        if(ReadMem(0)>200) 
  43   1        {
  44   2             CCHIP_Default();
  45   2             SendPage();
  46   2        }
  47   1        ReadPage();
  48   1      //===================================
  49   1        OptionTwo=0xD8|(ModeBuf>>5);//To get which resolution.
  50   1        if(DIPSW1) OptionThree=0x80;//0x80 for VS output..by Stripe Panel Mode
  51   1        else       OptionThree=0xC0;//0xC0 for VS output..by Delta Panel Mode
  52   1        OptionOne=0x3f;//The initiation is NTSC mode.
  53   1        //OptionOne=0x9f;//The initiation is PAL mode.
  54   1        Delay1ms();
  55   1      //**********************************************************
C51 COMPILER V7.00  MAIN                                                                   03/04/2004 16:28:50 PAGE 2   

  56   1      
  57   1      //************* For CCHIP **********************************
  58   1        InitCCHIP();
  59   1      //**********************************************************
  60   1      
  61   1      //************* For OSD ************************************
  62   1        DelayX1ms(100);
  63   1        InitOSD();
  64   1        OSDSwitch(0);
  65   1      //**********************************************************
  66   1      
  67   1        TR0=1;//To start Timer 0;
  68   1      
  69   1      //************* OSD's X51 Init **********
  70   1        OSDStatus=1;
  71   1        OSDEND=0;
  72   1      //***************************************
  73   1      
  74   1        while(1)
  75   1        {
  76   2          if(ModeBuf!=P1)
  77   2              {
  78   3                 ModeBuf=P1; 
  79   3             OptionTwo=0xD8|(ModeBuf>>5);//To get which resolution.
  80   3             if(DIPSW1) OptionThree=0x80;//0x80 for VS output..by Stripe Panel Mode
  81   3             else       OptionThree=0xC0;//0xC0 for VS output..by Delta Panel Mode
  82   3             IICStart;
  83   3             SendIIC(CCHIPSlaveAddress);
  84   3             SendIIC(0x14);
  85   3             SendIIC(OptionTwo);
  86   3             IICStop;
  87   3             Delay1ms();
  88   3             IICStart;
  89   3             SendIIC(CCHIPSlaveAddress);
  90   3             SendIIC(0x15);
  91   3             SendIIC(OptionThree);
  92   3             IICStop;
  93   3             Delay1ms();
  94   3              }
  95   2      //===========================================================================
  96   2          if((VSBuf < 140)&&(NP==0))
  97   2          {
  98   3             TR0=0; 
  99   3             IICStart;
 100   3             SendIIC(CCHIPSlaveAddress);
 101   3             SendIIC(0x13);
 102   3             SendIIC(0x3F);
 103   3             IICStop;
 104   3             Delay1ms();
 105   3             NP=1;
 106   3             TR0=1;
 107   3          }
 108   2          if((VSBuf > 159)&&(NP==1))     
 109   2          { 
 110   3             TR0=0; 
 111   3             IICStart;
 112   3             SendIIC(CCHIPSlaveAddress);
 113   3             SendIIC(0x13);
 114   3             SendIIC(0x9F);
 115   3             IICStop;
 116   3             Delay1ms();
 117   3             NP=0;
C51 COMPILER V7.00  MAIN                                                                   03/04/2004 16:28:50 PAGE 3   

 118   3             TR0=1;
 119   3          }
 120   2      //==============================================================================
 121   2          if((SW1==0)&(SW2==1))
 122   2              {
 123   3             DisableINT0;
 124   3             DisableINT1;
 125   3             DelayX1ms(300);
 126   3      
 127   3             if((SubBuf==0x91)&(SubBuf!=0x00))
 128   3             {
 129   4               if(RegBuf<31) RegBuf++;
 130   4               BAR_H();
 131   4               Show_Number();
 132   4               SendCCHIPData();
 133   4               SaveReg();
 134   4             }
 135   3                 else if((SubBuf==0x92)&(SubBuf!=0x00))
 136   3             {
 137   4               if((RegBuf&0x3f)<63) RegBuf++;
 138   4                   BAR_V();
 139   4               Show_Number();
 140   4               SendCCHIPData();
 141   4               SaveReg();
 142   4             }
 143   3             else
 144   3             { 
 145   4                   if(SubBuf!=0x00)
 146   4                       {
 147   5                 if(RegBuf<250) RegBuf=RegBuf+3;
 148   5                     BAR();
 149   5                 Show_Number();
 150   5                 SendCCHIPData();
 151   5                 SaveReg();
 152   5                       }
 153   4             }
 154   3             EnableINT0;
 155   3             EnableINT1;
 156   3              }
 157   2              else if((SW1==1)&(SW2==0))
 158   2              {
 159   3             DisableINT0;
 160   3             DisableINT1;
 161   3             DelayX1ms(300);
 162   3             if((SubBuf==0x91)&(SubBuf!=0x00))
 163   3             {
 164   4               if(RegBuf!=0) RegBuf--;
 165   4                   BAR_H();
 166   4               Show_Number();
 167   4               SendCCHIPData();
 168   4               SaveReg();
 169   4             }
 170   3                 else if((SubBuf==0x92)&(SubBuf!=0x00))
 171   3             {
 172   4               if(RegBuf!=0) RegBuf--;
 173   4                   BAR_V();
 174   4               Show_Number();
 175   4               SendCCHIPData();
 176   4               SaveReg();
 177   4             }
 178   3             else
 179   3             {
C51 COMPILER V7.00  MAIN                                                                   03/04/2004 16:28:50 PAGE 4   

 180   4                   if(SubBuf!=0x00)
 181   4                       {
 182   5                 if(RegBuf!=0) RegBuf=RegBuf-3;
 183   5                     BAR();
 184   5                 Show_Number();
 185   5                 SendCCHIPData();
 186   5                 SaveReg();
 187   5                       }
 188   4             }
 189   3             EnableINT0;
 190   3             EnableINT1;
 191   3              }
 192   2      //======================================================================
 193   2        }
 194   1      
 195   1      }
 196          
 197          void Timer0(void) interrupt 1 using 2
 198          {
 199   1        TR0=0;
 200   1        if(VS==1) VSCount++;
 201   1        else
 202   1        {
 203   2          if(VSCount!=0)
 204   2              {
 205   3           VSBuf=VSCount;
 206   3           VSCount=0; 
 207   3          }
 208   2        }
 209   1        TL0=(65536-200)%256,TH0=(65536-200)/256;
 210   1        TR0=1;//To start Timer 0;
 211   1      }
 212          
 213          void int0(void) interrupt 0
 214          {
 215   1        DelayX1ms(300);
 216   1          
 217   1        switch(OSDStatus)
 218   1        {
 219   2                       case 0 :
 220   2                        for(cou=0;cou<19;cou++)
 221   2                        {
 222   3                           ShowWord(2,cou,ASCII_TO_OSD(R19[cou]),0,1,0,0);
 223   3                        }                   
 224   2                        for(cou=0;cou<19;cou++)
 225   2                        {
 226   3                           ShowWord(4,cou,ASCII_TO_OSD(R01[cou]),1,0,0,1);
 227   3                        }
 228   2                        for(cou=0;cou<19;cou++)
 229   2                        {
 230   3                           ShowWord(6,cou,ASCII_TO_OSD(R02[cou]),0,1,0,0);
 231   3                        }
 232   2                                        SubBuf=0x81;//Sub.1
 233   2                                        RegBuf=VCOM; 
 234   2                                        BAR();//VCOM Reg.
 235   2                        Show_Number();
 236   2                                        OSDStatus=2;
 237   2                        break;
 238   2                  case 1 ://OSDPage 1
 239   2                        OSDSwitch(1);
 240   2      
 241   2                            for(cou=0;cou<sizeof(SHOW);cou++)
C51 COMPILER V7.00  MAIN                                                                   03/04/2004 16:28:50 PAGE 5   

 242   2                        {
 243   3                           ShowWord(0,cou+1,ASCII_TO_OSD(SHOW[cou]),0,4,0,0);
 244   3                        } 
 245   2                        for(cou=0;cou<19;cou++)
 246   2                        {
 247   3                           ShowWord(2,cou,ASCII_TO_OSD(R01[cou]),1,0,0,1);
 248   3                        }
 249   2                        for(cou=0;cou<19;cou++)
 250   2                        {
 251   3                           ShowWord(4,cou,ASCII_TO_OSD(R02[cou]),0,1,0,0);

⌨️ 快捷键说明

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