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

📄 display.lst

📁 8051带32Mflash的源代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 1   


C51 COMPILER V7.01, COMPILATION OF MODULE DISPLAY
OBJECT MODULE PLACED IN .\display.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\source\display.c BROWSE DEBUG OBJECTEXTEND LISTINCLUDE PRINT(.\display.l
                    -st) OBJECT(.\display.obj)

stmt level    source

   1          #include "display_h.h"
   1      =1  #include <reg52.h>
   1      =2  /*--------------------------------------------------------------------------
   2      =2  REG52.H
   3      =2  
   4      =2  Header file for generic 80C52 and 80C32 microcontroller.
   5      =2  Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
   6      =2  All rights reserved.
   7      =2  --------------------------------------------------------------------------*/
   8      =2  
   9      =2  /*  BYTE Registers  */
  10      =2  sfr P0    = 0x80;
  11      =2  sfr P1    = 0x90;
  12      =2  sfr P2    = 0xA0;
  13      =2  sfr P3    = 0xB0;
  14      =2  sfr PSW   = 0xD0;
  15      =2  sfr ACC   = 0xE0;
  16      =2  sfr B     = 0xF0;
  17      =2  sfr SP    = 0x81;
  18      =2  sfr DPL   = 0x82;
  19      =2  sfr DPH   = 0x83;
  20      =2  sfr PCON  = 0x87;
  21      =2  sfr TCON  = 0x88;
  22      =2  sfr TMOD  = 0x89;
  23      =2  sfr TL0   = 0x8A;
  24      =2  sfr TL1   = 0x8B;
  25      =2  sfr TH0   = 0x8C;
  26      =2  sfr TH1   = 0x8D;
  27      =2  sfr IE    = 0xA8;
  28      =2  sfr IP    = 0xB8;
  29      =2  sfr SCON  = 0x98;
  30      =2  sfr SBUF  = 0x99;
  31      =2  
  32      =2  /*  8052 Extensions  */
  33      =2  sfr T2CON  = 0xC8;
  34      =2  sfr RCAP2L = 0xCA;
  35      =2  sfr RCAP2H = 0xCB;
  36      =2  sfr TL2    = 0xCC;
  37      =2  sfr TH2    = 0xCD;
  38      =2  
  39      =2  
  40      =2  /*  BIT Registers  */
  41      =2  /*  PSW  */
  42      =2  sbit CY    = PSW^7;
  43      =2  sbit AC    = PSW^6;
  44      =2  sbit F0    = PSW^5;
  45      =2  sbit RS1   = PSW^4;
  46      =2  sbit RS0   = PSW^3;
  47      =2  sbit OV    = PSW^2;
  48      =2  sbit P     = PSW^0; //8052 only
  49      =2  
  50      =2  /*  TCON  */
  51      =2  sbit TF1   = TCON^7;
  52      =2  sbit TR1   = TCON^6;
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 2   

  53      =2  sbit TF0   = TCON^5;
  54      =2  sbit TR0   = TCON^4;
  55      =2  sbit IE1   = TCON^3;
  56      =2  sbit IT1   = TCON^2;
  57      =2  sbit IE0   = TCON^1;
  58      =2  sbit IT0   = TCON^0;
  59      =2  
  60      =2  /*  IE  */
  61      =2  sbit EA    = IE^7;
  62      =2  sbit ET2   = IE^5; //8052 only
  63      =2  sbit ES    = IE^4;
  64      =2  sbit ET1   = IE^3;
  65      =2  sbit EX1   = IE^2;
  66      =2  sbit ET0   = IE^1;
  67      =2  sbit EX0   = IE^0;
  68      =2  
  69      =2  /*  IP  */
  70      =2  sbit PT2   = IP^5;
  71      =2  sbit PS    = IP^4;
  72      =2  sbit PT1   = IP^3;
  73      =2  sbit PX1   = IP^2;
  74      =2  sbit PT0   = IP^1;
  75      =2  sbit PX0   = IP^0;
  76      =2  
  77      =2  /*  P3  */
  78      =2  sbit RD    = P3^7;
  79      =2  sbit WR    = P3^6;
  80      =2  sbit T1    = P3^5;
  81      =2  sbit T0    = P3^4;
  82      =2  sbit INT1  = P3^3;
  83      =2  sbit INT0  = P3^2;
  84      =2  sbit TXD   = P3^1;
  85      =2  sbit RXD   = P3^0;
  86      =2  
  87      =2  /*  SCON  */
  88      =2  sbit SM0   = SCON^7;
  89      =2  sbit SM1   = SCON^6;
  90      =2  sbit SM2   = SCON^5;
  91      =2  sbit REN   = SCON^4;
  92      =2  sbit TB8   = SCON^3;
  93      =2  sbit RB8   = SCON^2;
  94      =2  sbit TI    = SCON^1;
  95      =2  sbit RI    = SCON^0;
  96      =2  
  97      =2  /*  P1  */
  98      =2  sbit T2EX  = P1^1; // 8052 only
  99      =2  sbit T2    = P1^0; // 8052 only
 100      =2               
 101      =2  /*  T2CON  */
 102      =2  sbit TF2    = T2CON^7;
 103      =2  sbit EXF2   = T2CON^6;
 104      =2  sbit RCLK   = T2CON^5;
 105      =2  sbit TCLK   = T2CON^4;
 106      =2  sbit EXEN2  = T2CON^3;
 107      =2  sbit TR2    = T2CON^2;
 108      =2  sbit C_T2   = T2CON^1;
 109      =2  sbit CP_RL2 = T2CON^0;
   2      =1  
   3      =1  #define uint unsigned int
   4      =1  #define ulong unsigned long int
   5      =1  #define uchar unsigned char
   6      =1  sfr AUXR = 0x8E;
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 3   

   7      =1  sfr P4 = 0xe8;
   8      =1  sbit P40=P4^0;
   9      =1  sbit P41=P4^1;
  10      =1  sbit P42=P4^2;
  11      =1  
  12      =1  #define DT1505S  0
  13      =1  #define ILI9320 0
  14      =1  #define R61505U 0
  15      =1  #define NT39106 0
  16      =1  #define SSD1289Z 1
  17      =1  #define SPFD5408 0
  18      =1  #define ILI9320AUO 0
  19      =1  
  20      =1  #define INTERFACE_16BIT 1
  21      =1  #define INTERFACE_8BIT  0
  22      =1  //#define INTERFACE_18BIT  1
  23      =1  #define OUTPORT_H P2
  24      =1  #define OUTPORT_L P0
  25      =1  
  26      =1  #define LCM_TRANSFERBOARD_MODE1 1
  27      =1  #define LCM_TRANSFERBOARD_MODE2 0       //20I  20J
  28      =1  #define LCM_TRANSFERBOARD_MODE3 0  //28E
  29      =1  #define LCM_20K 0
  30      =1  #define LCM_27A 0
  31      =1  
  32      =1  #if LCM_TRANSFERBOARD_MODE1
  33      =1  //      sbit LCM_CS =P3^3;
  34      =1          sbit D0=P1^0;
  35      =1          sbit D8=P1^1;
  36      =1          sbit  LCM_RS= P3^4;
  37      =1          sbit LCM_WR =P3^5;
  38      =1          //sbit LCM_RD =P3^5;
  39      =1          sbit LCM_RES =P3^6;
  40      =1  #elif LCM_TRANSFERBOARD_MODE2
           =1 //      sbit LCM_CS =P3^3;
           =1         sbit  LCM_RS= P3^3;
           =1         sbit LCM_WR =P1^2;
           =1 //      sbit LCM_RD =P0^3;
           =1         sbit LCM_RES =P3^4;
           =1 #elif LCM_TRANSFERBOARD_MODE3   
           =1         sbit LCM_CS =P0^2;
           =1         sbit  LCM_RS= P3^7;
           =1         sbit LCM_WR =P3^5;
           =1         //sbit LCM_RD =P3^5;
           =1         sbit LCM_RES =P3^4;
           =1 #elif LCM_20K
           =1         sbit LCM_CS =P3^2;
           =1         sbit  LCM_RS= P3^3;
           =1         sbit LCM_WR =P3^4;
           =1 //      sbit LCM_RD =P0^3;
           =1         sbit LCM_RES =P3^5;
           =1 #elif LCM_27A
           =1         sbit LCM_CS =P3^7;
           =1         sbit  LCM_RS= P3^5;
           =1         sbit LCM_WR =P3^4;
           =1         sbit LCM_RD =P3^3;
           =1         sbit LCM_RES =P3^2;
           =1 
           =1 #else
           =1         #error THE LCM_TRANSFERBOARD_MODE  NO DEFINE;
           =1 #endif
  68      =1  
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 4   

  69      =1  
  70      =1  /*----------------------------------------------------------------
  71      =1                  LCM DISPLAY SUB PROGRAMS        
  72      =1  -----------------------------------------------------------------*/
  73      =1  void lcm_cs(bit flag);
  74      =1  void display_red(void);//red
  75      =1  void display_green(void);//green
  76      =1  void display_blue(void);//blue
  77      =1  void display_white(void);//white
  78      =1  void display_black(void);//black+绿色的框,作为边界确认
  79      =1  void display_clear(void);//clear
  80      =1  void dis_RGB(void);
  81      =1  void set_pixel(unsigned int x,unsigned int y);
  82      =1  void test_pixel2(void);
  83      =1  void set_whole_screen();
  84      =1  void LCM_init(void);//init LCM
  85      =1  uint RGB(uchar r,uchar g,uchar b);
  86      =1  void write_picdata(uint value);
  87      =1  void write_picdata1(uchar vdata1,uchar vdata2);
  88      =1  uchar contrast,current_display,last_display;
  89      =1  uchar LCM_SETUP_REG(uchar *p);
  90      =1  
  91      =1  /*----------------------------------------------------------------
  92      =1                  DELAY program   
  93      =1  -----------------------------------------------------------------*/
  94      =1  extern void delay5us(uint utimes);    //5uS*utimes  IN 12MHZ
  95      =1  extern void delay10ms(uint mtimes); //10MS*mtimes  IN 12MHZ
  96      =1  
  97      =1  
   2          
   3          void lcm_cs(bit flag)
   4          {       if(flag==0)
   5   1              {       P40=0;
   6   2                      P41=0;
   7   2                      P42=0;
   8   2              }
   9   1              else
  10   1              {       P40=1;
  11   2                      P41=1;
  12   2                      P42=1;          
  13   2              }
  14   1      }
  15          
  16          /*----------------------------------------------------------------
  17                          Write data sub program  
  18                          SELECT  16BIT/8BIT
  19          -----------------------------------------------------------------*/
  20          #if INTERFACE_16BIT             //16BIT DATA INPUT
  21                  void W_D(uint wdata)
  22                  {
  23   1                      uchar high,low;
  24   1                      low=(uchar)wdata;
  25   1                      high=wdata>>8;
  26   1                      LCM_RS=1;
  27   1                      lcm_cs(0);
  28   1                      OUTPORT_H=high;
  29   1                      OUTPORT_L=low;
  30   1                      LCM_WR=0;
  31   1                      LCM_WR=1;
  32   1                      lcm_cs(1);
  33   1                      
  34   1              }
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 5   

  35          #elif INTERFACE_8BIT           //8BIT  DATA INPUT 
                      void W_D(uint wdata)
                      {
                              uchar high;
                              LCM_RS=1;//==>Data
                              lcm_cs(0);
                              high=(uchar)(wdata>>8);
                              OUTPORT_L=high;//
                              LCM_WR=0;
                              LCM_WR=1;
                              OUTPORT_L=(uchar)wdata;//
                              LCM_WR=0;
                              LCM_WR=1;
                              lcm_cs(1);
                      
                      }
              #else 
                      #error W_D() DON'T SET INTERFACE
              #endif
  54          
  55          #if INTERFACE_16BIT             //16BIT DATA INPUT
  56                  void W_D_HL(uchar h,uchar l)
  57                  {
  58   1                      LCM_RS=1;
  59   1                      lcm_cs(0);
  60   1                      OUTPORT_H=h;
  61   1                      OUTPORT_L=l;
  62   1                      LCM_WR=0;
  63   1                      LCM_WR=1;
  64   1                      lcm_cs(1);
  65   1                      
  66   1              }
  67          #elif INTERFACE_8BIT           //8BIT  DATA INPUT 
                      void W_D_HL(uchar h,uchar l)
                      {
                              LCM_RS=1;//==>Data
                              lcm_cs(0);
                              OUTPORT_L=h;//
                              LCM_WR=0;
                              LCM_WR=1;
                              OUTPORT_L=l;//
                              LCM_WR=0;
                              LCM_WR=1;
                              lcm_cs(1);
                      
                      }
              #else 
                      #error W_D_HL() DON'T SET INTERFACE
              #endif
  84          
  85          /*----------------------------------------------------------------
  86                          Write command sub program       
  87          -----------------------------------------------------------------*/
  88          #if INTERFACE_16BIT 
  89                  void W_C(uchar command)     //Write  command to LCM
  90                  {
  91   1                      LCM_RS=0;//==>Command
  92   1                      lcm_cs(0);
  93   1                      OUTPORT_H=0;//
  94   1                      OUTPORT_L=command;//
  95   1                      LCM_WR=0;
  96   1                      LCM_WR=1;
C51 COMPILER V7.01  DISPLAY                                                                11/16/2007 15:52:11 PAGE 6   

  97   1                      lcm_cs(1);

⌨️ 快捷键说明

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