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

📄 8.lst

📁 刚学时编的小程序
💻 LST
字号:
C51 COMPILER V8.02   8                                                                     01/12/2007 19:09:24 PAGE 1   


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

line level    source

   1                     /*******************************************************************/
   2          //OCM12864-5测试完整程序
   3          //时间:2006.11.26
   4          //可选用c51单片机
   5          //设计:天蝎、骆驼
   6          //博客验证时候会有些语句通不过,所以硬件测试之前需要检查修改一下
   7          /********************************************************************/
   8          //定义头文件
   9          #include"stdio.h" //stdio.h存放标准输入输出库函数用到的一些基本信息,在程序中可以使用输入输出函数
  10          #include"absacc.h" //absacc.h可以利用三字节通过指针作为抽象指针,为个存储空间提供绝对地址存取技术
  11          #include"reg52.h" //reg52.h
  12          #include"intrins.h" 
  13          
  14          #define uchar unsigned char
  15          #define uint unsigned int
  16          
  17          //LCD128*64数据线
  18          #define LCDBusPort P1 //D0-D7=P1.0-P1.7
  19          
  20          //LCD128*64I/O信号管脚
  21          sbit DI=P3^2; //数据/指令 选择
  22          sbit RW=P3^3; //读/写选择 
  23          sbit Enable=P3^4; //读/写使能 高电平有效,下降沿锁定数据
  24          sbit CS1=P3^0; //片选1,12864-5高电平有效(前64列)
  25          sbit CS2=P3^1; //片选2,12864-5高电平有效(后64列)
  26          sbit Reset=P3^7; //复位
  27          
  28          uchar code DAA[]={0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00}; //"A"
  29          uchar code DAB[]={0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00}; //"B" 
  30          uchar code DAC[]={0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00}; //"C"
  31          uchar code DAD[]={0x00,0x41,0x7E,0x41,0x41,0x3E,0x00,0x00}; //"D"
  32          
  33          char code nop[]={//"nop"
  34          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
  35          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
  36          char code dan[]={
  37          /*-- 文字: 丹 --*/
  38          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  39          0x80,0x80,0x80,0xFE,0x82,0x82,0x8A,0xB2,0x82,0x82,0x82,0xFF,0x82,0xC0,0x80,0x00,
  40          0x00,0x80,0x40,0x3F,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00
  41          };char code wang[]={
  42          /*-- 文字: 王 --*/
  43          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  44          0x00,0x82,0x82,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0x82,0xC3,0x82,0x00,0x00,
  45          0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0x60,0x40,0x00
  46          };
  47          char code chu[]={//出[16*16]横排
  48          0x00,0x00,0xFC,0x40,0x40,0x40,0x40,0xFF,0x40,0x40,0x40,0x40,0xFC,0x00,0x00,0x00,
  49          0x00,0xFE,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0xFE,0x00,0x00};
  50          char code lai[]={//来[16*16]横排
  51          0x00,0x08,0x28,0x48,0xC8,0x08,0x08,0xFF,0x08,0x88,0x48,0x68,0x0C,0x88,0x00,0x00,
  52          0x21,0x21,0x11,0x11,0x09,0x05,0x03,0xFF,0x03,0x05,0x09,0x19,0x11,0x31,0x11,0x00};
  53          char code le[]={//了[16*16]横排
  54          0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xE2,0x22,0x12,0x0A,0x06,0x02,0x00,0x00,0x00,
  55          0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
C51 COMPILER V8.02   8                                                                     01/12/2007 19:09:24 PAGE 2   

  56          char code tian[]={
  57          /*-- 文字: 天 --*/
  58          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  59          0x40,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x43,0x62,0x40,0x00,
  60          0x80,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x03,0x0C,0x10,0x20,0x40,0xC0,0x40,0x00
  61          };
  62          char code xie[]={
  63          /*-- 文字: 蝎 --*/
  64          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  65          0x00,0xF0,0x10,0xFF,0x10,0xF8,0x10,0x3E,0xEA,0x2A,0x2A,0x2A,0x2A,0x3F,0x02,0x00,
  66          0x20,0x67,0x22,0x3F,0x12,0x3B,0x02,0x3D,0x21,0x29,0x27,0x29,0x61,0x81,0x7F,0x00
  67          };
  68          char code luo[]={
  69          /*-- 文字: 骆 --*/
  70          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  71          0x02,0xFA,0x02,0x02,0xFF,0x02,0x10,0x08,0x17,0xA4,0x44,0xA4,0x14,0x0C,0x00,0x00,
  72          0x10,0x31,0x11,0x49,0x89,0x7F,0x02,0xFF,0x43,0x42,0x42,0x42,0x43,0xFF,0x01,0x00 
  73          }; 
  74          char code tuo[]={
  75          /*-- 文字: 驼 --*/
  76          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  77          0x00,0x02,0xFA,0x02,0x02,0xFF,0x22,0x18,0xC8,0x09,0x0A,0x08,0x88,0x28,0x18,0x00,
  78          0x10,0x30,0x11,0x49,0x89,0x41,0x3F,0x00,0x3F,0x42,0x42,0x41,0x40,0x40,0x70,0x00 
  79          }; 
  80          char code xi[]={
  81          /*-- 文字: 喜 --*/
  82          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  83          0x00,0x02,0x0A,0xEA,0xAA,0xAA,0xAA,0xAF,0xAA,0xAA,0xAA,0xEA,0x0B,0x02,0x00,0x00,
  84          0x02,0x02,0x02,0xFA,0x4A,0x4B,0x4A,0x4A,0x4A,0x4B,0x4A,0xFE,0x0A,0x03,0x02,0x00 
  85          }; 
  86          char code huan[]={
  87          /*-- 文字: 欢 --*/
  88          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  89          0x04,0x34,0xC4,0x04,0xC4,0x3C,0x20,0x10,0x0F,0xE8,0x08,0x08,0x28,0x18,0x00,0x00,
  90          0x10,0x08,0x06,0x01,0x82,0x8C,0x40,0x30,0x0C,0x03,0x0C,0x10,0x60,0xC0,0x40,0x00 
  91          }; 
  92          char code ni[]={
  93          /*-- 文字: 你 --*/
  94          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  95          0x40,0x20,0xF8,0x07,0x40,0x20,0x18,0x0F,0x08,0xC8,0x08,0x08,0x28,0x18,0x00,0x00,
  96          0x00,0x00,0xFF,0x00,0x00,0x08,0x04,0x43,0x80,0x7F,0x00,0x01,0x06,0x0C,0x00,0x00 
  97          }; 
  98          char code douhao[]={
  99          /*-- 文字:"," --*/
 100          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
 101          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 102          0x00,0x00,0x20,0x1C,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 
 103          }; 
 104          char code tanhao[]={
 105          /*-- 文字:"!" --*/
 106          /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
 107          0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0xFE,0xFE,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,
 108          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x33,0x00,0x00,0x00,0x00,0x00,0x00,0x00
 109          }; 
 110          char code pic[]={
 111          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xc0,0x40,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0
             -x60,0x40,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 112          0x00,0x00,0x00,0x80,0xf0,0x18,0x06,0xfb,0x09,0x09,0x48,0x08,0x18,0x30,0xe0,0x00,0x00,0x00,0x0c,0xf4,0x84,0
             -x04,0x2c,0x08,0xf9,0x63,0x06,0x0c,0x38,0xe0,0x00,0x00, 
 113          0x00,0x00,0x00,0x3f,0xc0,0x80,0x00,0x01,0x01,0x03,0x1a,0xf2,0xc2,0x83,0x01,0x00,0x00,0x00,0x80,0xc0,0x41,0
             -x39,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0xc3,0x7e,0x00,
 114          0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x02,0x04,0x0c,0x08,0x18,0x10,0x11,0x21,0x21,0x21,0x21,0x21,0x20,0x20,0
C51 COMPILER V8.02   8                                                                     01/12/2007 19:09:24 PAGE 3   

             -x20,0x20,0x30,0x10,0x10,0x10,0x18,0x08,0x0c,0x03,0x00
 115          };
 116          
 117          /*-----------------------------------------------------------*/
 118          
 119          
 120          //基本函数源程序
 121          /*------------------------------------------------------------*/
 122          //延时子程序
 123          void LcdDelay(uint k)
 124          {
 125   1      uint i,j;
 126   1      for (i=0;i<10;i++)
 127   1              for(j=0;j<10;j++);
 128   1      }
*** WARNING C280 IN LINE 123 OF 8.C: 'k': unreferenced local variable
 129          /*--------------------------------------------------------------*/
 130          //状态检查子程序
 131          void CheckState()
 132          {
 133   1      uchar dat;
 134   1      DI=0;
 135   1      RW=1;
 136   1      do{
 137   2      LCDBusPort=0xff;
 138   2      Enable=1; 
 139   2      dat=LCDBusPort; 
 140   2      Enable=0;
 141   2      dat=0x90 & dat; //仅当第4,7位为0时才可操作
 142   2      }while(!(dat==0x00));
 143   1      }
 144          
 145          /*------------------------------------------------------------*/
 146          //写命令到LCD子程序
 147          void SendCommand(uchar command) // command :命令
 148          {
 149   1      CheckState();
 150   1      RW=0; 
 151   1      LCDBusPort=command;
 152   1      LcdDelay(0);
 153   1      Enable=1;
 154   1      LcdDelay(0);
 155   1      Enable=0;
 156   1      }
 157          /*----------------------------------------------------------------*/
 158          //写显示数据子程序
 159          void WriteData(uchar Dispdata) //dat:显示数据
 160          {
 161   1      CheckState();
 162   1      DI=1;
 163   1      RW=0;
 164   1      LCDBusPort=Dispdata;
 165   1      LcdDelay(0);
 166   1      Enable=1;
 167   1      LcdDelay(0);
 168   1      Enable=0;
 169   1      }
 170          /*-----------------------------------------------------------------*/
 171          //读显示数据子程序
 172          uchar ReadData()
 173          {
 174   1      uchar dat;
C51 COMPILER V8.02   8                                                                     01/12/2007 19:09:24 PAGE 4   

 175   1      CheckState();
 176   1      DI=1;
 177   1      RW=1;
 178   1      LCDBusPort=0xff;
 179   1      LcdDelay(0);
 180   1      Enable=1;
 181   1      LcdDelay(0);
 182   1      dat=LCDBusPort;
 183   1      LcdDelay(0);
 184   1      Enable=0;
 185   1      return(dat);
 186   1      }
 187          /*------------------------------------------------------------------*/
 188          //设定行地址(页)--X 0-7
 189          void SetPage(uchar Page)
 190          {
 191   1      Page=Page&0x07; //0<=Page<=7
 192   1      Page=Page|0xb8; //1011 1xxx
 193   1      SendCommand(Page);
 194   1      }
 195          /*-----------------------------------------------------------------------*/
 196          //设定列地址--Y 0-63
 197          void SetColumn(uchar Column)
 198          {
 199   1      Column=Column&0x3f;//0<=colulmn<=63
 200   1      Column=Column|0x40;//01xx xxxx
 201   1      SendCommand(Column);
 202   1      }
 203          /*----------------------*/
 204          main()
 205          {
 206   1              while(1)
 207   1              {
 208   2                      ReadData();
 209   2                      WriteData()      ;
*** WARNING C209 IN LINE 209 OF 8.C: '_WriteData': too few actual parameters
 210   2              }
 211   1      
 212   1      }


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


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

⌨️ 快捷键说明

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