ca320240f.lst

来自「Keil c工程」· LST 代码 · 共 172 行

LST
172
字号
C51 COMPILER V7.10   CA320240F                                                             08/29/2005 13:02:12 PAGE 1   


C51 COMPILER V7.10, COMPILATION OF MODULE CA320240F
OBJECT MODULE PLACED IN .\out\CA320240F.obj
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE c\CA320240F.c BROWSE INTVECTOR(0XC000) DEBUG OBJECTEXTEND PRI
                    -NT(.\lst\CA320240F.lst) OBJECT(.\out\CA320240F.obj)

line level    source

   1          
   2          //established on 2004/04/14
   3          //CA320240F and  lcd(SED1330/1335/1336) compatible provided
   4          //pin1:GND
   5          //pin2:VCC
   6          //pin3:V0(adjust contrast ratio of LCD)
   7          //pin4:A0(Data Type Selecton) connect to A1
   8          //pin5:WRn     connect to P3.6/WRn of 8031
   9          //pin6:RDn     connect to P3.7/RDn of 8031
  10          //pin7:DB0         connect to D0
  11          //...              ...
  12          //pin14:DB7        connect to D7
  13          //pin15:CSn    connect to 74138 output Y2n,also as 8031 address of 0x4000
  14          //                      74138 input A connect to 8031 P2.7(A15),B to P2.6(A14),C to P2.5(A13)
  15          //pin16:RESETn,   not used
  16          //pin17:VOUT(-20V)
  17          //pin18:SEL1   connect to GND,as work on 8080 mode.(connect to VCC as the 6800 mode,not used)
  18          //D0-D7 is the data bus,and A0-A15 is the address bus(so you must use a 74373)
  19          //
  20          //
  21          
  22          
  23          //#define CA320240F
  24          #ifdef CA320240F
              
              #include "..\h\globle.h"
              #include "..\h\CA320240F.h"
              
              void CA320240F_initial(void)
              //set to text mode.
              {
              byte i;
              word j;
              
              XBYTE[CA320240_WriteCommand]=SYSTEMSET;
              for(i=0;i<8;i++)        XBYTE[CA320240_WriteData]=SYSTEMSET_parameter_text[i];
              
              XBYTE[CA320240_WriteCommand]=DISPLAY_ON;
              XBYTE[CA320240_WriteData]=DISPLAY_ON_parameter_text;
              
              XBYTE[CA320240_WriteCommand]=CSRFORM;
              for(i=0;i<2;i++)        XBYTE[CA320240_WriteData]=CSRFORM_parameter_text[i];
              
              XBYTE[CA320240_WriteCommand]=SCROLL;
              for(i=0;i<10;i++)   XBYTE[CA320240_WriteData]=SCROLL_parameter[i];
              
              XBYTE[CA320240_WriteCommand]=HDOT_SCR;
              XBYTE[CA320240_WriteData]=HDOT_SCR_parameter;
              
              XBYTE[CA320240_WriteCommand]=CSRDIR_Right;
              
              XBYTE[CA320240_WriteCommand]=OVLAY;
              XBYTE[CA320240_WriteData]=OVLAY_parameter_text;
              
C51 COMPILER V7.10   CA320240F                                                             08/29/2005 13:02:12 PAGE 2   

              
              XBYTE[CA320240_WriteCommand]=CSRW;
              for(i=0;i<2;i++)   XBYTE[CA320240_WriteData]=CSRW_parameter[i];
              
              XBYTE[CA320240_WriteCommand]=MWRITE;                    //clear vedio ram,32KB in total
              for(j=0;j<30*40;j++)  XBYTE[CA320240_WriteData]=0x20;//space,30 lines,40 columns.
              
              }
              
              void SetToGraphicMode(void)
              {
              byte i;
              word j;
              
              XBYTE[CA320240_WriteCommand]=SYSTEMSET;
              for(i=0;i<8;i++)        XBYTE[CA320240_WriteData]=SYSTEMSET_parameter_graphic[i];
              
              XBYTE[CA320240_WriteCommand]=SCROLL;
              for(i=0;i<10;i++)   XBYTE[CA320240_WriteData]=SCROLL_parameter[i];
              
              XBYTE[CA320240_WriteCommand]=HDOT_SCR;
              XBYTE[CA320240_WriteData]=HDOT_SCR_parameter;
              
              XBYTE[CA320240_WriteCommand]=CSRDIR_Right;
              
              XBYTE[CA320240_WriteCommand]=OVLAY;
              XBYTE[CA320240_WriteData]=OVLAY_parameter_graphic;
              
              XBYTE[CA320240_WriteCommand]=CSRFORM;
              for(i=0;i<2;i++)        XBYTE[CA320240_WriteData]=CSRFORM_parameter_graphic[i];
              
              XBYTE[CA320240_WriteCommand]=DISPLAY_ON;
              XBYTE[CA320240_WriteData]=DISPLAY_ON_parameter_graphic;
              
              XBYTE[CA320240_WriteCommand]=CSRW;
              for(i=0;i<2;i++)   XBYTE[CA320240_WriteData]=CSRW_parameter[i];
              
              XBYTE[CA320240_WriteCommand]=MWRITE;                    //clear vedio ram,32KB in total
              for(j=0;j<0xf0*40;j++)  XBYTE[CA320240_WriteData]=0x0;//240 lines,40 columns.
              
              }
              
              void SetCursorPosition(byte x,byte y)
              {
              byte CSRL,CSRH;
              
              CSRL=y*40+x;            //TEXT
              CSRH=(y*40+x)>>8;
              
              XBYTE[CA320240_WriteCommand]=CSRW;
              XBYTE[CA320240_WriteData]=CSRL;
              XBYTE[CA320240_WriteData]=CSRH;
              }
              
              void DisplayEChar(byte x,byte y,byte char_code)
              {
              SetCursorPosition(x,y);
              XBYTE[CA320240_WriteCommand]=MWRITE;
              XBYTE[CA320240_WriteData]=char_code;
              }
              
              byte ReadMemory(byte x,byte y)
C51 COMPILER V7.10   CA320240F                                                             08/29/2005 13:02:12 PAGE 3   

              {
              byte i;
              SetCursorPosition(x,y);
              XBYTE[CA320240_WriteCommand]=MREAD;
              i=XBYTE[CA320240_ReadData];
              return(i);
              
              }
              
              /*
              void DisplayCChar(byte x,byte y,word char_code)
              {
              SetToGraphicMode();
              SetCursorPosition(x,y);
              
              }
              
              void DisplayBmpPicture(byte x,byte y,byte width,byte heighth,byte *picture)
              {
              SetToGraphicMode();
              SetCursorPosition(x,y);
              
              
              }
              
              */
              #endif


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   ----    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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