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

📄 ra8806.lst

📁 320x240驱动程序(网上搜集资料).rar
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.50   RA8806                                                                01/08/2009 15:49:24 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE RA8806
OBJECT MODULE PLACED IN RA8806.OBJ
COMPILER INVOKED BY: C:\Program Files\Keil\C51\BIN\C51.EXE RA8806.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*******************************************************************************
   2          *
   3          *       Filename :      RA8806.c
   4          *
   5          *       Author :        Tony Kan
   6          *       Date :          2007/08/21
   7          *       Company :       RAiO Technology Inc.
   8          *       Case :          320 x 240 Evaluation board
   9          *       Device :        RA8806 + MXIC MX10E8050IQC at 18.432MHZ
  10          *
  11          *******************************************************************************/
  12          
  13          #include "RA8806.h"
  14          
  15          //------------------------------------------------------------------------------
  16          //Subroutine Declare
  17          //------------------------------------------------------------------------------
  18          extern void LCD_CmdWrite(uchar);
  19          extern uchar LCD_StatusRead(void);
  20          extern void LCD_DataWrite(uchar);
  21          extern uchar LCD_DataRead(void);
  22          
  23          //Delay Function
  24          extern void Delay2us(uchar);
  25          extern void Delay100us(uchar);
  26          extern void Delay1ms(uchar);
  27          extern void Delay10ms(uchar);
  28          extern void Delay100ms(uchar);
  29          /******************************************************************************/
  30          /*Sub Program Area                                                                                                                        */
  31          /******************************************************************************/
  32          //==============================================================================
  33          //Subroutine :  LCD_Reset
  34          //Function:             
  35          //==============================================================================
  36          void LCD_Reset(void)
  37          {
  38   1              bRST = 0;
  39   1              Delay100ms(1);
  40   1              bRST = 1;
  41   1              Delay100ms(1);          
  42   1      }
  43          
  44          //==============================================================================
  45          //Subroutine:   LCD_CmdWrite
  46          //Function:             
  47          //==============================================================================
  48          void LCD_CmdWrite(uchar cmd)
  49          {
  50   1      //      LCD_ChkBusy();
  51   1      #ifdef Parallel_8080
  52   1              bCSZ = 0;
  53   1              bA0  = 1;
  54   1              bWRZ = 0;
  55   1              DATA_BUS = cmd;
C51 COMPILER V7.50   RA8806                                                                01/08/2009 15:49:24 PAGE 2   

  56   1      
  57   1              bWRZ = 1;
  58   1              bCSZ = 1;
  59   1              DATA_BUS = 0xff;                                
  60   1      #endif
  61   1      
  62   1      #ifdef Parallel_8080_4bit
                      bCSZ = 0;
                      bA0  = 1;
                      DATA_BUS = cmd >> 4;                            
                      bWRZ = 0;
                      bWRZ = 1;
                      bCSZ = 1;
              
                      DATA_BUS = 0xff;
                      bCSZ = 0;
                      DATA_BUS = cmd & 0x0f;                          
                      bWRZ = 0;
                      bWRZ = 1;               
                      bCSZ = 1;
                      DATA_BUS = 0xff;                                
              #endif
  78   1      
  79   1      #ifdef Parallel_6800
                      bCSZ = 0;
                      bA0  = 1;                                               
                      bWRZ = 0;                       //R/W                   
                      DATA_BUS = cmd;                                 
                      bRDZ = 1;                       //EN                    
                      bRDZ = 0;
                      bWRZ = 1;                                               
                      bCSZ = 1;                               
                      DATA_BUS = 0xff;
              #endif
  90   1      
  91   1      #ifdef Parallel_6800_4bit
                      bCSZ = 0;
                      bA0  = 1;                                               
                      bWRZ = 0;                       //R/W                   
                      DATA_BUS = cmd >> 4;                            
                      bRDZ = 1;                       //EN                    
                      bRDZ = 0;
                      bWRZ = 1;                                               
                      bCSZ = 1;                               
                      DATA_BUS = 0xff;
              
                      bCSZ = 0;
                      bA0  = 1;                                               
                      bWRZ = 0;                       //R/W                   
                      DATA_BUS = cmd & 0x0f;                          
                      bRDZ = 1;                       //EN                    
                      bRDZ = 0;
                      bWRZ = 1;                                               
                      bCSZ = 1;                               
                      DATA_BUS = 0xff;
              #endif
 112   1      
 113   1              bA0  = 0;
 114   1      }
 115          
 116          //==============================================================================
 117          //Subroutine:   LCD_DataWrite
C51 COMPILER V7.50   RA8806                                                                01/08/2009 15:49:24 PAGE 3   

 118          //Function:             
 119          //==============================================================================
 120          void LCD_DataWrite(uchar Data)
 121          {
 122   1      //      LCD_ChkBusy();
 123   1      #ifdef Parallel_8080
 124   1              bCSZ = 0;
 125   1              bA0  = 0;
 126   1              bWRZ = 0;       
 127   1              DATA_BUS = Data;
 128   1              bWRZ = 1;       
 129   1              bCSZ = 1;                                               
 130   1              DATA_BUS = 0xff;                                
 131   1      #endif
 132   1      
 133   1      #ifdef Parallel_8080_4bit
                      bCSZ = 0;
                      bA0  = 0;
                      DATA_BUS = Data >> 4;                           
                      bWRZ = 0;                                               
                      bWRZ = 1;
                      bCSZ = 1;
              
                      DATA_BUS = 0xff;
                      bCSZ = 0;
                      DATA_BUS = Data & 0x0f;                         
                      bWRZ = 0;                                               
                      bWRZ = 1;                                               
                      bCSZ = 1;                                               
                      DATA_BUS = 0xff;                                
              #endif
 149   1      
 150   1      #ifdef Parallel_6800
                      bCSZ = 0;
                      bA0  = 0;
                      DATA_BUS = Data;
                      bWRZ = 0;                               
                      bRDZ = 1;                                               
                      bRDZ = 0;                                               
                      bWRZ = 1;                                               
                      bCSZ = 1;                                               
                      DATA_BUS = 0xff;
              #endif  
 161   1      
 162   1      #ifdef Parallel_6800_4bit
                      bCSZ = 0;
                      bA0  = 0;
                      DATA_BUS = Data >> 4;
                      bWRZ = 0;                               
                      bRDZ = 1;                                               
                      bRDZ = 0;                                               
                      bWRZ = 1;                                               
                      bCSZ = 1;                                               
                      DATA_BUS = 0xff;
              
                      bCSZ = 0;
                      bA0  = 0;
                      DATA_BUS = Data & 0x0f;
                      bWRZ = 0;                               
                      bRDZ = 1;                                               
                      bRDZ = 0;                                               
                      bWRZ = 1;                                               
C51 COMPILER V7.50   RA8806                                                                01/08/2009 15:49:24 PAGE 4   

                      bCSZ = 1;                                               
                      DATA_BUS = 0xff;
              #endif  
 183   1      
 184   1              bA0  = 1;
 185   1      }
 186          
 187          //==============================================================================
 188          //Subroutine:   CmdRead
 189          //Function:             
 190          //==============================================================================
 191          
 192          uchar LCD_StatusRead(void)
 193          {
 194   1              uchar Data;
 195   1      
 196   1      #ifdef  Parallel_8080
 197   1                      bCSZ = 0;                                       
 198   1                      bA0  = 1;                                       
 199   1                      bWRZ = 1;       
 200   1                      bRDZ = 0;                                       
 201   1                      Data = DATA_BUS;
 202   1                      bRDZ = 1;               
 203   1                      bCSZ = 1;
 204   1                      DATA_BUS = 0xff;
 205   1      #endif
 206   1      
 207   1      #ifdef Parallel_8080_4bit
                     bWRZ = 1;
                         bCSZ = 0;
                         bA0  = 1;
                         bRDZ = 0;
                         Data = (DATA_BUS << 4) | 0x0f;
                         bRDZ = 1;
                         bCSZ = 1;
                      
                         DATA_BUS = 0xff;     
                         bCSZ = 0;
                         bRDZ = 0;
                         Data = DATA_BUS & Data;
                         bRDZ = 1;
                         bCSZ = 1;                                    
              #endif
 223   1      
 224   1      #ifdef  Parallel_6800
                              bCSZ = 0;
                              bA0  = 1;
                              bRDZ = 1;
                              Data = DATA_BUS;
                              bRDZ = 0;
                              bCSZ = 1;
                              DATA_BUS = 0xff;
              #endif
 233   1      
 234   1      #ifdef  Parallel_6800_4bit
                              bCSZ = 0;
                              bA0  = 1;
                              bRDZ = 1;
                              Data = (DATA_BUS << 4) | 0x0f;
                              bRDZ = 0;
                              bCSZ = 1;
                              DATA_BUS = 0xff;
C51 COMPILER V7.50   RA8806                                                                01/08/2009 15:49:24 PAGE 5   

              
                              bCSZ = 0;
                              bA0  = 1;
                              bRDZ = 1;
                              Data = DATA_BUS & Data;
                              bRDZ = 0;
                              bCSZ = 1;
                              DATA_BUS = 0xff;
              #endif
 251   1              bA0  = 0;
 252   1      
 253   1              return Data;
 254   1      }
 255          
 256          //==============================================================================
 257          //Subroutine:   LCD_DataRead
 258          //Function:             
 259          //==============================================================================
 260          uchar LCD_DataRead(void)
 261          {
 262   1              uchar Data;
 263   1      
 264   1      #ifdef Parallel_8080
 265   1                 bWRZ = 1;
 266   1                 bCSZ = 0;
 267   1                 bA0  = 0;
 268   1                 bRDZ = 0;
 269   1                 Data = DATA_BUS;
 270   1                 bRDZ = 1;
 271   1                 bCSZ = 1;                    
 272   1      #endif
 273   1      
 274   1      #ifdef Parallel_8080_4bit
                     bRDZ = 1;
                     bWRZ = 1;
                     bCSZ = 0;
                     bA0  = 0;
                     bRDZ = 0;
                         Data = (DATA_BUS << 4) | 0x0f;
                     bRDZ = 1;
                         bCSZ = 1;
                              
                         DATA_BUS = 0xff;
                         bCSZ = 0;
                     bRDZ = 0;
                         Data = DATA_BUS & Data;
                         bRDZ = 1;

⌨️ 快捷键说明

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