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

📄 lcd_1621.lst

📁 ht1621之syb2315测试程序
💻 LST
字号:
C51 COMPILER V7.50   LCD_1621                                                              02/10/2009 10:56:09 PAGE 1   


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

line level    source

   1          //        Demo Program (HT1621)
   2          //*****************************************************
   3          //连线表: CPU=89C51     System Clock = 12Mhz          *
   4          //        CS=P3.0             WR=P3.1       DATA=P3.2 *
   5          //*****************************************************
   6          #include <reg52.h>
   7          #include <intrins.h>
   8          #define uchar unsigned char 
   9          #define uint  unsigned int
  10          
  11          #define  DAT   1
  12          #define  COM   0
  13          
  14          sbit    CS = P3^2;
  15          sbit    RW = P3^3;
  16          
  17          sbit    DA = P3^5;
  18          sbit    Key= P3^4;
  19          
  20          unsigned char code HT1621[];
  21          
  22          void Write1Bit( void )
  23          {
  24   1              RW = 0;
  25   1              _nop_();_nop_();
  26   1              _nop_();_nop_();
  27   1              RW = 1;
  28   1              _nop_();_nop_();
  29   1              _nop_();_nop_();
  30   1      }
  31          
  32          void WriteMode(unsigned char MODE)
  33          {
  34   1              DA = 1;
  35   1              Write1Bit();
  36   1              DA = 0;
  37   1              Write1Bit();
  38   1              DA = MODE;
  39   1              Write1Bit();
  40   1      }
  41          
  42          void WriteCommand(unsigned char Cbyte)
  43          {
  44   1              unsigned char i;
  45   1              for(i=0;i<9;i++)
  46   1              {
  47   2                      Cbyte = Cbyte<<1;
  48   2                      DA = CY;
  49   2                      Write1Bit();
  50   2              }
  51   1      }
  52          
  53          void WriteAddress(unsigned char Abyte)
  54          {
  55   1              unsigned char i;
C51 COMPILER V7.50   LCD_1621                                                              02/10/2009 10:56:09 PAGE 2   

  56   1              Abyte = Abyte<<2;
  57   1              for(i=0;i<6;i++)
  58   1              {
  59   2                      Abyte = Abyte<<1;
  60   2                      DA = CY;
  61   2                      Write1Bit();
  62   2              }
  63   1      }
  64          
  65          void WriteData(unsigned char Dbyte)
  66          {
  67   1              unsigned char i;
  68   1              for(i=0;i<8;i++)
  69   1              {
  70   2                      Dbyte = Dbyte<<1;
  71   2                      DA = CY;
  72   2                      Write1Bit();
  73   2              }
  74   1      }
  75          
  76          void Delay(unsigned int MS)
  77          {
  78   1              unsigned char us,usn;
  79   1              while(MS!=0)
  80   1              { 
  81   2                      usn = 2;
  82   2                      while(usn!=0)
  83   2                      {
  84   3                              us=0xf2;
  85   3                              while (us!=0){us--;};
  86   3                              usn--;
  87   3                      }
  88   2                      MS--;
  89   2              }
  90   1      }
  91          
  92          void DelayKey(unsigned  int HalfSecond)
  93          {
  94   1              unsigned int i;
  95   1              for(i=0;i<20*HalfSecond;i++)
  96   1              {
  97   2                      if(Key==0)
  98   2                      {
  99   3                              Delay(20);
 100   3                              while(Key==0) {Delay(20);}
 101   3                              break;
 102   3                      }
 103   2                      Delay(10);
 104   2              }
 105   1      }
 106          
 107          void LcdInit( void )
 108          {
 109   1              CS = 0;
 110   1              WriteMode(COM); 
 111   1              WriteCommand(0x01);
 112   1              WriteCommand(0x03);
 113   1              WriteCommand(0x04);
 114   1              WriteCommand(0x05);
 115   1              WriteCommand(0x08);
 116   1              WriteCommand(0x18);
 117   1              WriteCommand(0x29);
C51 COMPILER V7.50   LCD_1621                                                              02/10/2009 10:56:09 PAGE 3   

 118   1              WriteCommand(0x80);
 119   1              WriteCommand(0x40);
 120   1              WriteCommand(0xE3);
 121   1              CS = 1;
 122   1      }
 123          
 124          void FullRAM(unsigned char *puts,unsigned char n)
 125          {
 126   1              unsigned char i;
 127   1              CS = 0;
 128   1              WriteMode(DAT);
 129   1              WriteAddress(0);
 130   1              for(i=0;i<16;i++)
 131   1                      WriteData(puts[16*n+i]);
 132   1              CS = 1;
 133   1      }
 134                  
 135          void main( void )
 136          {
 137   1              unsigned char i;
 138   1              Delay(20);
 139   1              LcdInit();
 140   1              while(1)
 141   1              {
 142   2                      for(i=0;i<9;i++)
 143   2                      {
 144   3                              FullRAM(HT1621,i);
 145   3                              DelayKey(100);
 146   3                      }
 147   2                      DelayKey(1000);
 148   2              }
 149   1      }
 150          
 151          unsigned char code HT1621[]={
 152          0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
 153          0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,
 154          0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,
 155          0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
 156          0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
 157          0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
 158          0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,
 159          0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
 160          0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
 161          };


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


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

⌨️ 快捷键说明

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