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

📄 xianshi.lst

📁 自己花了很长时间编写的单片机开发板程序
💻 LST
字号:
C51 COMPILER V8.08   XIANSHI                                                               06/23/2007 16:30:14 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE XIANSHI
OBJECT MODULE PLACED IN xianshi.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE xianshi.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <AT89x51.h>
   2          
   3          #define uint       unsigned int
   4          #define uchar      unsigned char
   5          #define disp_off   0x3e
   6          #define disp_on    0x3f
   7          #define disp_x     0xb8
   8          #define disp_z     0xc0
   9          #define disp_y     0x40
  10          #define comm       0
  11          #define dat        1
  12          #define data_ora   P0       //MCU P1<------> LCM
  13          
  14          sbit di = P2^2; //Data or Instrument Select,H:写数据,L:写指令
  15          sbit rw = P2^1;  //Write or Read,H:read,L:write
  16          sbit e  = P2^0;  //读写使能
  17          sbit cs1= P2^3;  //cs1=H,选择左半屏
  18          sbit cs2= P2^4;  //cs2=H,选择右半屏
  19          sbit rst= P2^5;  //Lcm reset,低有效
  20          sbit bf = P0^7;
  21          sbit res= P0^4;
  22          
  23          void chk_busy (void);   
  24          uchar code  gongjiao[]={
  25          /*--  文字:  公  --*/
  26          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  27          0x00,0x80,0x80,0xC0,0x40,0x60,0x20,0x80,0x00,0x20,0x60,0xC0,0xC0,0x80,0x80,0x80,
  28          0x00,0x01,0x01,0x08,0x0C,0x1C,0x13,0x13,0x13,0x1E,0x0C,0x08,0x01,0x01,0x01,0x00,
  29          
  30          /*--  文字:  交  --*/
  31          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  32          0x00,0x00,0x00,0x20,0xA0,0xE0,0x60,0x30,0x30,0x60,0xE0,0xA0,0x20,0x20,0x00,0x00,
  33          0x00,0x10,0x10,0x11,0x10,0x19,0x0B,0x0E,0x06,0x07,0x0C,0x18,0x39,0x30,0x10,0x00,
  34          
  35          /*--  文字:  自  --*/
  36          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  37          0x00,0x00,0x40,0xE0,0x40,0x40,0x70,0x50,0x40,0x40,0x40,0xC0,0xC0,0x00,0x00,0x00,
  38          0x00,0x00,0x00,0x3F,0x15,0x15,0x15,0x15,0x15,0x15,0x15,0x3F,0x1F,0x00,0x00,0x00,
  39          
  40          /*--  文字:  动  --*/
  41          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  42          0x00,0x80,0x80,0xA0,0xA0,0xA0,0xA0,0xA0,0xC0,0x40,0x40,0xC0,0xF0,0x70,0xC0,0x00,
  43          0x00,0x01,0x04,0x06,0x09,0x0A,0x16,0x14,0x18,0x1C,0x26,0x33,0x18,0x0E,0x03,0x00,};
  44          uchar code baozhan[]={
  45          
  46          /*--  文字:  报  --*/
  47          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  48          0x00,0x40,0x40,0x40,0xF0,0x40,0x40,0xF0,0x10,0x10,0x90,0x70,0x30,0x00,0x00,0x00,
  49          0x00,0x12,0x13,0x13,0x1F,0x01,0x01,0x3F,0x10,0x0B,0x0D,0x0F,0x0B,0x18,0x10,0x00,
  50          
  51          /*--  文字:  站  --*/
  52          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  53          0x00,0xC0,0xC0,0x40,0x70,0xC0,0x40,0x00,0x00,0xE0,0xF0,0x40,0x40,0x40,0x40,0x00,
  54          0x10,0x18,0x19,0x0F,0x08,0x0F,0x04,0x1E,0x1E,0x13,0x13,0x12,0x12,0x1E,0x00,0x00,
  55          
C51 COMPILER V8.08   XIANSHI                                                               06/23/2007 16:30:14 PAGE 2   

  56          /*--  文字:  系  --*/
  57          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  58          0x00,0x00,0x20,0xA0,0xA0,0xE0,0xE0,0xA0,0xA0,0x50,0x50,0x10,0x10,0x00,0x00,0x00,
  59          0x00,0x10,0x10,0x18,0x1A,0x2F,0x23,0x3E,0x3E,0x03,0x05,0x09,0x1A,0x18,0x10,0x00,
  60          
  61          /*--  文字:  统  --*/
  62          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  63          0x00,0x80,0xC0,0xA0,0xB0,0xD0,0x40,0x40,0xA0,0x70,0x20,0xC0,0x40,0x00,0x00,0x00,
  64          0x10,0x18,0x1A,0x0B,0x1E,0x15,0x10,0x19,0x0F,0x01,0x0F,0x18,0x31,0x30,0x10,0x00, };
  65          
  66          uchar code  sheji[]={
  67          /*--  文字:  设  --*/
  68          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  69          0x00,0x80,0x80,0xB0,0xA0,0x00,0x80,0x80,0x60,0x20,0x20,0xE0,0x80,0x80,0x80,0x00,
  70          0x01,0x01,0x00,0x1F,0x19,0x08,0x10,0x11,0x13,0x0D,0x0F,0x0B,0x18,0x30,0x30,0x00,
  71          
  72          /*--  文字:  计  --*/
  73          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  74          0x00,0x80,0x00,0xB0,0xA0,0x00,0x80,0x80,0x80,0x90,0xF0,0x80,0x80,0x80,0x80,0x80,
  75          0x01,0x01,0x01,0x1D,0x1F,0x18,0x09,0x00,0x00,0x00,0x3F,0x00,0x00,0x01,0x01,0x00, 
  76          
  77          /*--  文字:  :  --*/
  78          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  79          0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  80          0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,};
  81          
  82          uchar code fwt[]={
  83          /*--  文字:  冯  --*/
  84          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  85          0x00,0x40,0x40,0x40,0x40,0x40,0x20,0xF0,0x50,0x20,0x20,0xE0,0xE0,0x00,0x00,0x00,
  86          0x00,0x06,0x06,0x02,0x02,0x0E,0x08,0x0B,0x0A,0x1A,0x2A,0x2B,0x2B,0x3E,0x0E,0x00,
  87          
  88          /*--  文字:  玩  --*/
  89          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
  90          0x00,0x00,0x20,0xE0,0xE0,0x20,0x80,0xA0,0xA0,0xA0,0xA0,0xA0,0x80,0x80,0x00,0x00,
  91          0x00,0x0C,0x0D,0x17,0x17,0x15,0x1C,0x0C,0x07,0x04,0x0F,0x18,0x18,0x30,0x18,0x08,
  92          
  93          /*--  文字:  童  --*/
  94          /*--  楷体_GB231212;  此字体下对应的点阵为:宽x高=16x16   --*/
  95          0x00,0x40,0x40,0x40,0x48,0xA8,0xB8,0xA5,0x56,0x5C,0xD4,0x10,0x10,0x10,0x00,0x00,
  96          0x00,0x00,0x40,0x40,0x43,0x54,0x55,0x3F,0x2B,0x2A,0x21,0x20,0x20,0x00,0x00,0x00, };
  97          
  98          /*--  文字:     --*/
  99          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 100          //0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 101          //0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 102          
 103          uchar code hjl[]={
 104          /*--  文字:  胡  --*/
 105          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 106          0x00,0x40,0x40,0x40,0xF0,0x70,0x40,0x40,0x80,0xF0,0x90,0x90,0xF0,0xF0,0x00,0x00,
 107          0x00,0x00,0x0F,0x0B,0x09,0x09,0x2F,0x30,0x1C,0x0F,0x02,0x02,0x3F,0x3F,0x00,0x00,
 108          
 109          /*--  文字:  建  --*/
 110          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 111          0x00,0x00,0x20,0xA0,0xE0,0x20,0xC0,0x40,0xA0,0xF0,0xA0,0xA0,0xE0,0x40,0x00,0x00,
 112          0x00,0x10,0x12,0x0E,0x07,0x05,0x07,0x07,0x0B,0x0F,0x1B,0x1B,0x33,0x30,0x10,0x00,
 113          
 114          /*--  文字:  龙  --*/
 115          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 116          0x00,0x00,0x40,0x40,0x40,0x40,0xF0,0x70,0xC0,0x60,0x60,0x40,0x40,0x40,0x00,0x00,
 117          0x00,0x18,0x18,0x08,0x0C,0x02,0x05,0x04,0x0F,0x1A,0x19,0x19,0x38,0x38,0x18,0x08, };
C51 COMPILER V8.08   XIANSHI                                                               06/23/2007 16:30:14 PAGE 3   

 118          
 119          
 120          uchar code lhb[]={
 121          /*--  文字:  罗  --*/
 122          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 123          0x00,0x00,0x00,0xF0,0x90,0x90,0x70,0x90,0x90,0x70,0x70,0x90,0x90,0x70,0x00,0x00,
 124          0x00,0x10,0x32,0x32,0x12,0x12,0x13,0x0F,0x0D,0x0D,0x05,0x05,0x03,0x03,0x00,0x00,
 125          
 126          /*--  文字:  红  --*/
 127          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 128          0x00,0x80,0xC0,0x60,0xB0,0xD0,0x00,0x40,0x40,0xC0,0xC0,0x40,0x40,0x00,0x00,0x00,
 129          0x10,0x1A,0x1E,0x0B,0x0A,0x1A,0x18,0x10,0x10,0x1F,0x1F,0x10,0x10,0x10,0x10,0x00,
 130          
 131          /*--  文字:  波  --*/
 132          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 133          0x00,0x80,0x20,0x20,0x40,0x40,0xE0,0x20,0x20,0xF0,0x30,0x20,0x20,0xC0,0x00,0x00,
 134          0x00,0x19,0x09,0x0D,0x14,0x18,0x27,0x31,0x13,0x0D,0x0D,0x1B,0x18,0x30,0x30,0x10, };
 135          uchar code zb[]={
 136          /*--  文字:  周  --*/
 137          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 138          0x00,0x00,0x00,0xE0,0xE0,0x60,0x60,0xF0,0xF0,0x60,0x60,0x60,0xF0,0x20,0x00,0x00,
 139          0x00,0x10,0x18,0x0F,0x01,0x05,0x1D,0x15,0x15,0x1D,0x1D,0x01,0x3F,0x38,0x00,0x00,
 140          
 141          /*--  文字:  波  --*/
 142          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 143          0x00,0x80,0x20,0x20,0x40,0x40,0xE0,0x20,0x20,0xF0,0x30,0x20,0x20,0xC0,0x00,0x00,
 144          0x00,0x19,0x09,0x0D,0x14,0x18,0x27,0x31,0x13,0x0D,0x0D,0x1B,0x18,0x30,0x30,0x10,
 145          
 146          /*--  文字:  指  --*/
 147          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 148          0x00,0x00,0x40,0x40,0xF0,0x50,0x40,0x00,0xF0,0xA0,0xA0,0xA0,0xB0,0x80,0x80,0x00,
 149          0x10,0x10,0x32,0x33,0x1F,0x09,0x01,0x00,0x3E,0x2A,0x2A,0x2A,0x3E,0x3F,0x00,0x00,
 150          
 151          /*--  文字:  导  --*/
 152          /*--  隶书12;  此字体下对应的点阵为:宽x高=16x16   --*/
 153          0x00,0x00,0x00,0xF0,0x50,0x50,0x50,0x50,0x50,0x50,0x70,0x80,0x80,0x00,0x00,0x00,
 154          0x00,0x06,0x02,0x02,0x13,0x27,0x2F,0x2B,0x33,0x3F,0x03,0x03,0x06,0x06,0x06,0x02,};
 155          
 156          
 157          
 158          void delay (uint us)
 159          {
 160   1        while(us--);
 161   1      }
 162          void delay1 (uchar ms)
 163          {
 164   1        uchar i;
 165   1        uint j;
 166   1        for(i=ms;i>0;i--)
 167   1        for(j=1000;j>0;j--)
 168   1        ;
 169   1      } 
 170          void wr_lcd (uchar dat_comm,uchar content)
 171          {
 172   1        chk_busy ();
 173   1        di=dat_comm;
 174   1        rw=0;
 175   1        data_ora=content;
 176   1        e=1;
 177   1        ;
 178   1        e=0;
 179   1      }  
C51 COMPILER V8.08   XIANSHI                                                               06/23/2007 16:30:14 PAGE 4   

 180          void chk_busy (void)
 181          {
 182   1        data_ora=0xff;
 183   1        di=0;
 184   1        rw=1;
 185   1        ;
 186   1        e=1;
 187   1        ;
 188   1        
 189   1        e=0;
 190   1        
 191   1        
 192   1      }
 193          /*--------------写点阵------------------*/
 194          void lat_disp (uchar data1,uchar data2)
 195          {
 196   1        uchar i,j;
 197   1        cs1=1;cs2=1;
 198   1        wr_lcd (comm,disp_on);
 199   1        for(j=0;j<8;j++)
 200   1        {
 201   2          wr_lcd (comm,disp_x+j);
 202   2          wr_lcd (comm,disp_z);
 203   2          wr_lcd (comm,disp_y);
 204   2          for(i=0;i<32;i++)
 205   2          {
 206   3            wr_lcd (dat,data1);
 207   3            wr_lcd (dat,data2);
 208   3          }
 209   2        }
 210   1      }
 211           /*--------------显示图片----------------*/
 212          void img_disp (uchar code *img,uchar l,uchar r)
 213          {
 214   1        uchar i,j;
 215   1        for(j=0;j<8;j++)
 216   1        {     
 217   2          cs1=l;cs2=r;
 218   2          wr_lcd (comm,disp_on);
 219   2          wr_lcd (comm,disp_x+j);
 220   2          wr_lcd (comm,disp_z);
 221   2          wr_lcd (comm,disp_y);
 222   2          for(i=0;i<64;i++)
 223   2            wr_lcd (dat,img[j*64+i]);
 224   2                  
 225   2         
 226   2        }
 227   1      }
 228          /*---指定位置(x,y)显示row_xl行(每行row_yl个)汉字(大小xl*yl)---*/                   
 229          
 230          void chn_disp (uchar x,uchar y,uchar xl,uchar yl,uchar row_xl,uchar row_yl,uchar code *chn)
 231          {
 232   1        uchar i,j,k,l,a;
 233   1        wr_lcd (comm,disp_on);
 234   1        for(l=0;l<row_xl;l++)
 235   1        {
 236   2          for(k=0;k<row_yl;k++)
 237   2          {
 238   3            for(j=0;j<xl;j++)
 239   3            {
 240   4              wr_lcd (comm,disp_x+x+l*xl+j);
 241   4              wr_lcd (comm,disp_z);
C51 COMPILER V8.08   XIANSHI                                                               06/23/2007 16:30:14 PAGE 5   

 242   4              wr_lcd (comm,disp_y+y+k*yl);
 243   4              a=l*xl*yl*row_yl+k*xl*yl+j*yl;
 244   4              for(i=0;i<yl;i++)
 245   4                wr_lcd (dat,chn[a+i]);
 246   4            }
 247   3          }
 248   2        }
 249   1      } 
 250          /*------------------初始化-----------------*/
 251          void init_lcd (void)
 252          {
 253   1        rst=0;
 254   1        delay(50);
 255   1        rst=1;
 256   1        cs1=1;cs2=1;
 257   1        wr_lcd (comm,disp_off);
 258   1        wr_lcd (comm,disp_on);
 259   1      }
 260          /*---------------显示1-----------------*/
 261          
 262          
 263            void  disp1()
 264          { cs1=1;cs2=0;
 265   1        chn_disp(0,0,2,16,1,4,gongjiao);
 266   1        chn_disp(2,0,2,16,1,3,sheji);
 267   1        chn_disp(6,0,2,16,1,4,zb);
 268   1        cs1=0;cs2=1;
 269   1        chn_disp(0,0,2,16,1,4,baozhan);
 270   1        chn_disp(2,16,2,16,1,3,fwt);
 271   1        chn_disp(4,16,2,16,1,3,hjl);
 272   1        chn_disp(6,16,2,16,1,3,lhb);  
 273   1      
 274   1      }
 275           
 276                      
 277           
 278          
 279          
 280          /*------------------主程序--------------------*/
 281          void main ()
 282          {
 283   1        init_lcd (); 
 284   1        lat_disp (0x00,0x00); 
 285   1        while (1)
 286   1        {       
 287   2              disp1();        
 288   2              
 289   2        }
 290   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    657    ----
   CONSTANT SIZE    =    768    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      25
   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 + -