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

📄 demo.lst

📁 Csed1335是液晶的驱动常用程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   DEMO                                                                  08/11/2005 09:54:20 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE DEMO
OBJECT MODULE PLACED IN E:\新文档\SOFT\C\CSED1335\DEMO.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE E:\新文档\SOFT\C\CSED1335\DEMO.C DB SB OE

stmt level    source

   1          #include <reg51.h>
   2          #include <math.h>
   3          #include <absacc.h>
   4          #include <string.h>
   5          /* 直接访问方式地址定义,根据用户平台接口修改 */
   6          #define  wcadd1 XBYTE[0x8100]  /* 写指令代码地址 */
   7          #define  wdadd1 XBYTE[0x8000]  /* 写参数及显示数据地址 */
   8          #define  rdadd1 XBYTE[0x8100]  /* 读参数及显示数据地址 */
   9          #define  rbadd1 XBYTE[0x8000]  /* 读忙状态地址 */
  10          /* 程序参数定义,根据用户选择的LCM型号修改 */
  11          #define  PARA 0x30;  /*同SYSTEM SET中的P6设置,用来计算光标地址的*/
  12          /* 定义调用子程序 */
  13          CCW1_PR(char O_X,char O_Y,char code_1);  /* 汉字写入子程序(文本方式) */
  14          CCW2_PR(char O_X,char O_Y,char code_1);  /* 汉字写入子程序(图形方式) */
  15          W_DOT(int O_X,int O_Y );  /* 绘点子程序 */
  16          CW_PR(O_X,O_Y);  /* 西文写入子程序 */
  17          /*-------------------240128的SYSTEM SET 参数-------------------------------*/
  18          unsigned char SYSTAB[8]={0x30,0x87,0x07,0x27,0x2c,0xf0,0x30,0x00};
  19          unsigned char SCRTAB[10]={0x00,0x00,0xf0,0x00,0x40,0xf0,0x00,0x80,0x00,0x00};
  20          /*-------------------320240的SYSTEM SET 参数-------------------------------*/
  21          /*unsigned char SYSTAB[8]={0x30,0x87,0x07,0x28,0x42,0xf0,0x29,0x00};
  22            unsigned char SCRTAB[10]={0x00,0x00,0xf0,0xce,0x04,0xf0,0x80,0x00,0x00,0x00};*/
  23          
  24          /* 在此可以观察文本方式下的字符及光标的显示效果(写入内容为"Support tel:0571-85121742") */
  25          unsigned char CTAB1[25]={0x53,0x75,0x50,0x50,0x6f,0x72,0x74,0x20,0x54,0x45,0x4c,0x3a,0x30,0x35,0x37,0x31,0
             -x2d,0x38,0x35,0x31,0x32,0x31,0x37,0x34,0x32};
  26          
  27          /*图形方式下显示汉字*/
  28          code unsigned char CGTAB[9][72]={0x00,0x20,0x18,0x0C,0x06,0x04,0x41,0x21,    // 清
  29          0x32,0x1A,0x12,0x04,0x04,0x04,0x0C,0x7C,
  30          0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x04,0x00,
  31          0x02,0x03,0x03,0xFF,0x03,0x03,0x7F,0x03,
  32          0x03,0xFF,0x00,0x20,0x3F,0x30,0x30,0x3F,
  33          0x30,0x30,0x3F,0x30,0x30,0x31,0x30,0x20,
  34          0x00,0x80,0x18,0xFC,0x00,0x30,0xF8,0x00,
  35          0x0C,0xFE,0x00,0x30,0xF8,0x30,0x30,0xF0,
  36          0x30,0x30,0xF0,0x30,0x30,0xF0,0x60,0x40,
  37          
  38          0x00,0x00,0x18,0x0C,0x06,0x06,0x02,0x00,    // 达
  39          0x00,0x00,0x06,0x7F,0x06,0x06,0x06,0x06,
  40          0x06,0x06,0x06,0x0E,0x7A,0x31,0x20,0x00,
  41          0x04,0x07,0x06,0x06,0x06,0x06,0x06,0xFF,
  42          0x06,0x06,0x06,0x06,0x07,0x0C,0x0C,0x18,
  43          0x30,0x60,0x80,0x00,0x00,0xFF,0xFF,0x00,
  44          0x00,0x00,0x00,0x00,0x00,0x10,0x38,0xFC,
  45          0x00,0x00,0x00,0x00,0x00,0xC0,0x70,0x38,
  46          0x1C,0x0C,0x00,0x00,0x00,0xFE,0xF8,0x00,
  47          
  48          0x00,0x00,0x08,0x04,0x06,0x03,0x03,0x01,    // 光
  49          0x01,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
  50          0x00,0x01,0x01,0x03,0x06,0x18,0x60,0x00,
  51          0x10,0x1C,0x18,0x18,0x18,0x18,0x98,0x99,
  52          0x19,0x1A,0xFF,0xC6,0xC6,0xC6,0xC6,0xC6,
  53          0xC6,0x86,0x86,0x06,0x06,0x07,0x03,0x00,
  54          0x00,0x00,0x40,0x70,0x60,0xC0,0xC0,0x80,
C51 COMPILER V7.06   DEMO                                                                  08/11/2005 09:54:20 PAGE 2   

  55          0x00,0x0C,0xFE,0x00,0x00,0x00,0x00,0x04,
  56          0x04,0x04,0x04,0x04,0x06,0xFE,0xFC,0x00,
  57          
  58          0x00,0x00,0x00,0x00,0x10,0x1F,0x18,0x18,    // 电
  59          0x18,0x18,0x1F,0x18,0x18,0x18,0x18,0x1F,
  60          0x18,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
  61          0x20,0x38,0x30,0x30,0x30,0xFF,0x30,0x30,
  62          0x30,0x30,0xFF,0x30,0x30,0x30,0x30,0xFF,
  63          0x30,0x30,0x30,0x30,0x30,0x3F,0x1F,0x00,
  64          0x00,0x00,0x00,0x00,0x60,0xF0,0x60,0x60,
  65          0x60,0x60,0xE0,0x60,0x60,0x60,0x60,0xE0,
  66          0x40,0x04,0x04,0x04,0x06,0xFE,0xFC,0x00};
  67          /* 文本方式下的汉字显示方法
  68           在文本方式下显示汉字, 需要在SED1335 等显示RAM 内建立一个自定义字符库
  69           CGRAM,然后通过在相应的单元写入相应的字符代码来实现汉字的显示.
  70           SED1335 等的字符代码对应的是8x8 点阵的字符块, 而一个汉字需要四个8x8
  71           点阵的字符块组合显示, 所以在建立汉字的CGRAM 时, 需要四个字符代码管理一个
  72           汉字, 一般是按左上部, 左下部, 右上部和右下部四部分分配代码. 比如在演示程
  73           序中建立 "清华" 两个汉字的CGRAM,那么这两个汉字的代码为80H(81H,82H,83H)和
  74           84H(85H,86H,87H). */
  75          code unsigned char CGTABB[4][32]={0x00,0x40,0x37,0x10,0x83,0x60,0x2F,0x08,    /* 清*/
  76                                           0x13,0x12,0x63,0x22,0x23,0x22,0x22,0x22,
  77                                           0x40,0x48,0xFC,0x40,0xF8,0x40,0xFE,0x00,
  78                                           0xF8,0x08,0xF8,0x08,0xF8,0x08,0x28,0x10,
  79                                           0x01,0x41,0x27,0x21,0x1F,0x04,0xE2,0x2F,    /* 达*/
  80                                           0x21,0x2F,0x21,0x3F,0x21,0x51,0x8F,0x00,
  81                                           0x00,0x00,0xE0,0x00,0xF0,0x20,0x40,0xF0,
  82                                           0x00,0xE0,0x00,0xF8,0x00,0x00,0xFE,0x00,
  83                                           0x01,0x21,0x11,0x09,0x09,0x01,0xFF,0x04,    /* 光*/
  84                                           0x04,0x04,0x04,0x08,0x08,0x10,0x20,0x40,
  85                                           0x00,0x08,0x0C,0x10,0x20,0x04,0xFE,0x40,
  86                                           0x40,0x40,0x40,0x40,0x42,0x42,0x3E,0x00,
  87                                           0x1F,0x41,0x7F,0x81,0x3D,0x01,0x3D,0x01,    /* 电*/
  88                                           0x3F,0x21,0x3F,0x21,0x3F,0x01,0x01,0x01,
  89                                           0xF0,0x04,0xFE,0x02,0x74,0x00,0x70,0x00,
  90                                           0xF8,0x08,0xF8,0x08,0xF8,0x02,0x02,0xFE };
  91          /*********************/
  92          /*     演示主程序    */
  93          /*********************/
  94          void main()
  95             {
  96   1           unsigned char i,j,code_1;
  97   1           unsigned int k,O_X,O_Y;
  98   1           INT_1();   /* 调初始化子程序 */
*** WARNING C206 IN LINE 98 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'INT_1': missing function-prototype
  99   1            CLEAR();       /* 调清屏子程序 */
*** WARNING C206 IN LINE 99 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'CLEAR': missing function-prototype
 100   1           DELAY();
*** WARNING C206 IN LINE 100 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'DELAY': missing function-prototype
 101   1       /*--------- 绘点显示演示---------*/
 102   1           k=0;
 103   1           for(j=0;j<240;j++)          /*画一条直线,横坐标是O_X ,纵坐标是O_Y */
 104   1             {
 105   2               O_X=k;
 106   2               O_Y=j+0x00;
 107   2               W_DOT(O_X,O_Y);          /* 调绘点子程序  */
 108   2               k++;
 109   2               if(k>320)break;          /*如果横坐标大于屏的列宽240,则停止*/
 110   2             }
 111   1          for(j=241;j>0;j--)
 112   1             {
 113   2               O_X=k;
C51 COMPILER V7.06   DEMO                                                                  08/11/2005 09:54:20 PAGE 3   

 114   2               O_Y=j+0x00;
 115   2               W_DOT(O_X,O_Y);           /*调绘点子程序  */
 116   2               k++;
 117   2               if(k>320)break;
 118   2             }
 119   1      
 120   1      DELAY();
 121   1      
 122   1      /*-------中文显示(图形方式)-------*/
 123   1           code_1=0x00;               /*确定写入汉字的代码*/
 124   1           O_X=0x00;                  /*写入汉字的低位地址*/
 125   1           O_Y=0x00;                  /*写入汉字的高位地址*/
 126   1           CCW2_PR(O_X,O_Y,code_1);   /* 调中文显示子程序(图形方式)  */
 127   1           code_1=0x01;               /*确定写入汉字的地址*/
 128   1           O_X=0x03;
 129   1           O_Y=0x00;
 130   1           CCW2_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(图形方式)  */
 131   1           code_1=0x02;              /*确定写入汉字的地址*/
 132   1           O_X=0x06;
 133   1           O_Y=0x00;
 134   1           CCW2_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(图形方式)  */
 135   1           code_1=0x03;              /*确定写入汉字的地址*/
 136   1           O_X=0x09;
 137   1           O_Y=0x00;
 138   1           CCW2_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(图形方式)  */
 139   1      
 140   1      DELAY();
 141   1          CLEAR();
 142   1      /*------- 中文显示(文本方式)----------- */
 143   1           CGRAM();     /* 调CGRAM子程序 */
*** WARNING C206 IN LINE 143 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'CGRAM': missing function-prototype
 144   1           code_1=0x80;  /* 取字模 */
 145   1           O_X=0x00;
 146   1           O_Y=0x01;
 147   1           CCW1_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(文本方式)  */
 148   1           code_1=0x84;  /* 取字模 */
 149   1           O_X=0x02;
 150   1           O_Y=0x01;
 151   1           CCW1_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(文本方式)  */
 152   1           code_1=0x88;  /* 取字模 */
 153   1           O_X=0x04;
 154   1           O_Y=0x01;
 155   1           CCW1_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(文本方式)  */
 156   1           code_1=0x8C;  /* 取字模 */
 157   1           O_X=0x06;
 158   1           O_Y=0x01;
 159   1           CCW1_PR(O_X,O_Y,code_1);  /* 调中文显示子程序(文本方式)  */
 160   1      DELAY();
 161   1        CLEAR();
 162   1      /*------------西文显示-------------*/
 163   1           wcadd1=0x5d;  /* 设光标形状 */
 164   1           wdadd1=0x07;
 165   1           wdadd1=0x03;
 166   1           wcadd1=0x5b;  /* OVLAY代码 */
 167   1           wdadd1=0x01;
 168   1           wcadd1=0x59;  /* DISP ON\OFF代码 */
 169   1           wdadd1=0x56;
 170   1           O_X=0;   /*X轴方向取值0~29(十进制)*/
 171   1           O_Y=0;  /*Y轴方向取值0~15(十进制)*/
 172   1           CW_PR(O_X,O_Y);  /* 调西文写入子程序 */
 173   1           delay();
*** WARNING C206 IN LINE 173 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'delay': missing function-prototype
C51 COMPILER V7.06   DEMO                                                                  08/11/2005 09:54:20 PAGE 4   

 174   1         }
*** WARNING C280 IN LINE 96 OF E:\新文档\SOFT\C\CSED1335\DEMO.C: 'i': unreferenced local variable
 175          /************************/
 176          /*   初始化子程序函数   */
 177          /************************/
 178          INT_1()
 179             {
 180   1           unsigned char i;
 181   1           wcadd1=0x40;   /* SYSTEM SET代码 */
 182   1           for(i=0;i<8;i++)
 183   1              {
 184   2                wdadd1=SYSTAB[i];  /* 写入参数 */
 185   2              }
 186   1            wcadd1=0x44;   /* SCROLL代码 */
 187   1            for(i=0;i<10;i++)
 188   1              {
 189   2                wdadd1=SCRTAB[i];   /* 写入参数 */
 190   2              }
 191   1            wcadd1=0x5a;   /* HDOT SCR 代码 */
 192   1            wdadd1=0x00;   /* 设置参数P1 */
 193   1            wcadd1=0x5b;   /* OVLAY 代码 */
 194   1            wdadd1=0x00;   /* 设置参数:显示一,三区为文本属性 */
 195   1           
 196   1            wcadd1=0x59;   /* 显示状态设置 */
 197   1            wdadd1=0x54;   /* 设置参数:显示一~四区开显示 */
 198   1        }
 199          /*************************/
 200          /*    清屏子程序函数     */
 201          /*************************/
 202          CLEAR()
 203            {

⌨️ 快捷键说明

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