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

📄 55555.lst

📁 液晶MGLS2401128TA的控制程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.08   55555                                                                 08/10/2005 07:11:22 PAGE 1   


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

line level    source

   1          
   2          #include <absacc.h>
   3          #include <at89x51.h>
   4          #include <stdarg.h>
   5          #include <stdio.h>
   6          #define ulong unsigned long
   7          #define uint unsigned int
   8          #define uchar unsigned char
   9          #define STX 0x02
  10          #define ETX 0x03
  11          #define EOT 0x04
  12          #define ENQ 0x05
  13          #define BS 0x08
  14          #define CR 0x0D
  15          #define LF 0x0A
  16          #define DLE 0x10
  17          #define ETB 0x17
  18          #define SPACE 0x20
  19          #define COMMA 0x2C
  20          #define TRUE 1
  21          #define FALSE 0
  22          #define HIGH 1
  23          #define LOW 0
  24          // T6963C 端口定义
  25          
  26          #define LCMDW XBYTE[0x5000] // 数据口
  27          #define LCMCW XBYTE[0x5002] // 命令口
  28          // T6963C 命令定义
  29          #define LC_CUR_POS 0x21 // 光标位置设置
  30          #define LC_CGR_POS 0x22 // CGRAM偏置地址设置
  31          #define LC_ADD_POS 0x24 // 地址指针位置
  32          #define LC_TXT_STP 0x40 // 文本区首址
  33          #define LC_TXT_WID 0x41 // 文本区宽度
  34          #define LC_GRH_STP 0x42 // 图形区首址
  35          #define LC_GRH_WID 0x43 // 图形区宽度
  36          #define LC_MOD_OR 0x80 // 显示方式:逻辑“或”
  37          #define LC_MOD_XOR0x81 // 显示方式:逻辑“异或”
  38          #define LC_MOD_AND0x82 // 显示方式:逻辑“与”
  39          #define LC_MOD_TCH 0x83 // 显示方式:文本特征
  40          #define LC_DIS_SW 0x90 // 显示开关:D0=1/0:光标闪烁启用/禁用;
  41          // D1=1/0:光标显示启用/禁用;
  42          // D2=1/0:文本显示启用/禁用;
  43          // D3=1/0:图形显示启用/禁用;
  44          #define LC_CUR_SHP 0xA0 // 光标形状选择:0xA0-0xA7 表示光标占的行数
  45          #define LC_AUT_WR 0xB0 // 自动写设置
  46          #define LC_AUT_RD 0xB1 // 自动读设置
  47          #define LC_AUT_OVR 0xB2 // 自动读/写结束
  48          #define LC_INC_WR 0xC0 // 数据一次写,地址加1
  49          #define LC_INC_RD 0xC1 // 数据一次读,地址加1
  50          #define LC_DEC_WR 0xC2 // 数据一次写,地址减1
  51          #define LC_DEC_RD 0xC3 // 数据一次读,地址减1
  52          #define LC_NOC_WR 0xC4 // 数据一次写,地址不变
  53          #define LC_NOC_RD 0xC5 // 数据一次读,地址不变
  54          #define LC_SCN_RD 0xE0 // 屏读
  55          #define LC_SCN_CP 0xE8 // 屏拷贝
C51 COMPILER V7.08   55555                                                                 08/10/2005 07:11:22 PAGE 2   

  56          #define LC_BIT_OP 0xF0 // 位操作:D0-D2:定义D0-D7 位;D3:1 置位;0:清除
  57          code uchar const uPowArr[] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  58          // ASCII 字模宽度及高度定义
  59          #define ASC_CHR_WIDTH 8
  60          #define ASC_CHR_HEIGHT 12
  61          // ASCII 字模,显示为8*16
  62          char code ASC_MSK[96*12] = {
  63          // Terminal9; 此字体下对应的点阵为:宽x 高=8x12
  64          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, // < 0x20时,打印此字
  65          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // ' '
  66          0x00,0x0C,0x1E,0x1E,0x1E,0x0C,0x0C,0x00,0x0C,0x0C,0x00,0x00, // '!'
  67          0x00,0x66,0x66,0x66,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '"'
  68          0x00,0x36,0x36,0x7F,0x36,0x36,0x36,0x7F,0x36,0x36,0x00,0x00, // '#'
  69          
  70          0x0C,0x0C,0x3E,0x03,0x03,0x1E,0x30,0x30,0x1F,0x0C,0x0C,0x00, // '$'
  71          0x00,0x00,0x00,0x23,0x33,0x18,0x0C,0x06,0x33,0x31,0x00,0x00, // '%'
  72          0x00,0x0E,0x1B,0x1B,0x0E,0x5F,0x7B,0x33,0x3B,0x6E,0x00,0x00, // '&'
  73          0x00,0x0C,0x0C,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '''
  74          0x00,0x30,0x18,0x0C,0x06,0x06,0x06,0x0C,0x18,0x30,0x00,0x00, // '('
  75          0x00,0x06,0x0C,0x18,0x30,0x30,0x30,0x18,0x0C,0x06,0x00,0x00, // ')'
  76          0x00,0x00,0x00,0x66,0x3C,0xFF,0x3C,0x66,0x00,0x00,0x00,0x00, // '*'
  77          0x00,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x00,0x00,0x00,0x00, // '+'
  78          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x06,0x00, // ','
  79          0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00, // '-'
  80          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x00,0x00, // '.'
  81          0x00,0x00,0x40,0x60,0x30,0x18,0x0C,0x06,0x03,0x01,0x00,0x00, // '/'
  82          0x00,0x3E,0x63,0x73,0x7B,0x6B,0x6F,0x67,0x63,0x3E,0x00,0x00, // '0'
  83          0x00,0x08,0x0C,0x0F,0x0C,0x0C,0x0C,0x0C,0x0C,0x3F,0x00,0x00, // '1'
  84          0x00,0x1E,0x33,0x33,0x30,0x18,0x0C,0x06,0x33,0x3F,0x00,0x00, // '2'
  85          0x00,0x1E,0x33,0x30,0x30,0x1C,0x30,0x30,0x33,0x1E,0x00,0x00, // '3'
  86          0x00,0x30,0x38,0x3C,0x36,0x33,0x7F,0x30,0x30,0x78,0x00,0x00, // '4'
  87          0x00,0x3F,0x03,0x03,0x03,0x1F,0x30,0x30,0x33,0x1E,0x00,0x00, // '5'
  88          0x00,0x1C,0x06,0x03,0x03,0x1F,0x33,0x33,0x33,0x1E,0x00,0x00, // '6'
  89          0x00,0x7F,0x63,0x63,0x60,0x30,0x18,0x0C,0x0C,0x0C,0x00,0x00, // '7'
  90          0x00,0x1E,0x33,0x33,0x37,0x1E,0x3B,0x33,0x33,0x1E,0x00,0x00, // '8'
  91          0x00,0x1E,0x33,0x33,0x33,0x3E,0x18,0x18,0x0C,0x0E,0x00,0x00, // '9'
  92          0x00,0x00,0x00,0x1C,0x1C,0x00,0x00,0x1C,0x1C,0x00,0x00,0x00, // ':'
  93          0x00,0x00,0x00,0x1C,0x1C,0x00,0x00,0x1C,0x1C,0x18,0x0C,0x00, // ';'
  94          0x00,0x30,0x18,0x0C,0x06,0x03,0x06,0x0C,0x18,0x30,0x00,0x00, // '<'
  95          0x00,0x00,0x00,0x00,0x7E,0x00,0x7E,0x00,0x00,0x00,0x00,0x00, // '='
  96          0x00,0x06,0x0C,0x18,0x30,0x60,0x30,0x18,0x0C,0x06,0x00,0x00, // '>'
  97          0x00,0x1E,0x33,0x30,0x18,0x0C,0x0C,0x00,0x0C,0x0C,0x00,0x00, // '?'
  98          0x00,0x3E,0x63,0x63,0x7B,0x7B,0x7B,0x03,0x03,0x3E,0x00,0x00, // '@'
  99          0x00,0x0C,0x1E,0x33,0x33,0x33,0x3F,0x33,0x33,0x33,0x00,0x00, // 'A'
 100          0x00,0x3F,0x66,0x66,0x66,0x3E,0x66,0x66,0x66,0x3F,0x00,0x00, // 'B'
 101          0x00,0x3C,0x66,0x63,0x03,0x03,0x03,0x63,0x66,0x3C,0x00,0x00, // 'C'
 102          0x00,0x1F,0x36,0x66,0x66,0x66,0x66,0x66,0x36,0x1F,0x00,0x00, // 'D'
 103          0x00,0x7F,0x46,0x06,0x26,0x3E,0x26,0x06,0x46,0x7F,0x00,0x00, // 'E'
 104          0x00,0x7F,0x66,0x46,0x26,0x3E,0x26,0x06,0x06,0x0F,0x00,0x00, // 'F'
 105          0x00,0x3C,0x66,0x63,0x03,0x03,0x73,0x63,0x66,0x7C,0x00,0x00, // 'G'
 106          0x00,0x33,0x33,0x33,0x33,0x3F,0x33,0x33,0x33,0x33,0x00,0x00, // 'H'
 107          0x00,0x1E,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x1E,0x00,0x00,// 'I'
 108          0x00,0x78,0x30,0x30,0x30,0x30,0x33,0x33,0x33,0x1E,0x00,0x00, // 'J'
 109          0x00,0x67,0x66,0x36,0x36,0x1E,0x36,0x36,0x66,0x67,0x00,0x00, // 'K'
 110          0x00,0x0F,0x06,0x06,0x06,0x06,0x46,0x66,0x66,0x7F,0x00,0x00, // 'L'
 111          0x00,0x63,0x77,0x7F,0x7F,0x6B,0x63,0x63,0x63,0x63,0x00,0x00, // 'M'
 112          0x00,0x63,0x63,0x67,0x6F,0x7F,0x7B,0x73,0x63,0x63,0x00,0x00, // 'N'
 113          0x00,0x1C,0x36,0x63,0x63,0x63,0x63,0x63,0x36,0x1C,0x00,0x00, // 'O'
 114          0x00,0x3F,0x66,0x66,0x66,0x3E,0x06,0x06,0x06,0x0F,0x00,0x00, // 'P'
 115          0x00,0x1C,0x36,0x63,0x63,0x63,0x73,0x7B,0x3E,0x30,0x78,0x00, // 'Q'
 116          
 117          0x00,0x3F,0x66,0x66,0x66,0x3E,0x36,0x66,0x66,0x67,0x00,0x00, // 'R'
C51 COMPILER V7.08   55555                                                                 08/10/2005 07:11:22 PAGE 3   

 118          0x00,0x1E,0x33,0x33,0x03,0x0E,0x18,0x33,0x33,0x1E,0x00,0x00, // 'S'
 119          0x00,0x3F,0x2D,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x1E,0x00,0x00,// 'T'
 120          0x00,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x1E,0x00,0x00, // 'U'
 121          0x00,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x1E,0x0C,0x00,0x00, // 'V'
 122          0x00,0x63,0x63,0x63,0x63,0x6B,0x6B,0x36,0x36,0x36,0x00,0x00, // 'W'
 123          0x00,0x33,0x33,0x33,0x1E,0x0C,0x1E,0x33,0x33,0x33,0x00,0x00, // 'X'
 124          0x00,0x33,0x33,0x33,0x33,0x1E,0x0C,0x0C,0x0C,0x1E,0x00,0x00, // 'Y'
 125          0x00,0x7F,0x73,0x19,0x18,0x0C,0x06,0x46,0x63,0x7F,0x00,0x00, // 'Z'
 126          0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00,0x00,// '['
 127          0x00,0x00,0x01,0x03,0x06,0x0C,0x18,0x30,0x60,0x40,0x00,0x00, // '\'
 128          0x00,0x3C,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3C,0x00,0x00, // ']'
 129          0x08,0x1C,0x36,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '^'
 130          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00, // '_'
 131          0x0C,0x0C,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '`'
 132          0x00,0x00,0x00,0x00,0x1E,0x30,0x3E,0x33,0x33,0x6E,0x00,0x00, // 'a'
 133          0x00,0x07,0x06,0x06,0x3E,0x66,0x66,0x66,0x66,0x3B,0x00,0x00, // 'b'
 134          0x00,0x00,0x00,0x00,0x1E,0x33,0x03,0x03,0x33,0x1E,0x00,0x00, // 'c'
 135          0x00,0x38,0x30,0x30,0x3E,0x33,0x33,0x33,0x33,0x6E,0x00,0x00, // 'd'
 136          0x00,0x00,0x00,0x00,0x1E,0x33,0x3F,0x03,0x33,0x1E,0x00,0x00, // 'e'
 137          0x00,0x1C,0x36,0x06,0x06,0x1F,0x06,0x06,0x06,0x0F,0x00,0x00, // 'f'
 138          0x00,0x00,0x00,0x00,0x6E,0x33,0x33,0x33,0x3E,0x30,0x33,0x1E, // 'g'
 139          0x00,0x07,0x06,0x06,0x36,0x6E,0x66,0x66,0x66,0x67,0x00,0x00, // 'h'
 140          0x00,0x18,0x18,0x00,0x1E,0x18,0x18,0x18,0x18,0x7E,0x00,0x00, // 'i'
 141          0x00,0x30,0x30,0x00,0x3C,0x30,0x30,0x30,0x30,0x33,0x33,0x1E, // 'j'
 142          0x00,0x07,0x06,0x06,0x66,0x36,0x1E,0x36,0x66,0x67,0x00,0x00, // 'k'
 143          0x00,0x1E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00, // 'l'
 144          0x00,0x00,0x00,0x00,0x3F,0x6B,0x6B,0x6B,0x6B,0x63,0x00,0x00, // 'm'
 145          0x00,0x00,0x00,0x00,0x1F,0x33,0x33,0x33,0x33,0x33,0x00,0x00, // 'n'
 146          0x00,0x00,0x00,0x00,0x1E,0x33,0x33,0x33,0x33,0x1E,0x00,0x00, // 'o'
 147          0x00,0x00,0x00,0x00,0x3B,0x66,0x66,0x66,0x66,0x3E,0x06,0x0F, // 'p'
 148          0x00,0x00,0x00,0x00,0x6E,0x33,0x33,0x33,0x33,0x3E,0x30,0x78, // 'q'
 149          0x00,0x00,0x00,0x00,0x37,0x76,0x6E,0x06,0x06,0x0F,0x00,0x00, // 'r'
 150          0x00,0x00,0x00,0x00,0x1E,0x33,0x06,0x18,0x33,0x1E,0x00,0x00, // 's'
 151          0x00,0x00,0x04,0x06,0x3F,0x06,0x06,0x06,0x36,0x1C,0x00,0x00, // 't'
 152          0x00,0x00,0x00,0x00,0x33,0x33,0x33,0x33,0x33,0x6E,0x00,0x00, // 'u'
 153          0x00,0x00,0x00,0x00,0x33,0x33,0x33,0x33,0x1E,0x0C,0x00,0x00, // 'v'
 154          0x00,0x00,0x00,0x00,0x63,0x63,0x6B,0x6B,0x36,0x36,0x00,0x00, // 'w'
 155          0x00,0x00,0x00,0x00,0x63,0x36,0x1C,0x1C,0x36,0x63,0x00,0x00, // 'x'
 156          0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x3C,0x30,0x18,0x0F, // 'y'
 157          0x00,0x00,0x00,0x00,0x3F,0x31,0x18,0x06,0x23,0x3F,0x00,0x00, // 'z'
 158          0x00,0x38,0x0C,0x0C,0x06,0x03,0x06,0x0C,0x0C,0x38,0x00,0x00, // '{'
 159          0x00,0x18,0x18,0x18,0x18,0x00,0x18,0x18,0x18,0x18,0x00,0x00, // '|'
 160          0x00,0x07,0x0C,0x0C,0x18,0x30,0x18,0x0C,0x0C,0x07,0x00,0x00, // '}'
 161          0x00,0xCE,0x5B,0x73,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // '~'
 162          };
 163          
 164          typedef struct typFNT_GB16 // 汉字字模显示数据结构
 165          {
 166          char Index[2];
 167          char Msk[32];
 168          };
 169          struct typFNT_GB16 xdata GB_16[] = { // 显示为16*16
 170          "中",0x01,0x00,0x01,0x00,0x21,0x08,0x3F,0xFC,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,
 171          0x21,0x08,0x3F,0xF8,0x21,0x08,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
 172          "文",0x02,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x08,0x20,0x08,0x20,0x08,0x20,0x04,0x40,
 173          0x04,0x40,0x02,0x80,0x01,0x00,0x02,0x80,0x04,0x60,0x18,0x1E,0xE0,0x08,0x00,0x00,
 174          "测",0x40,0x02,0x27,0xC2,0x24,0x42,0x84,0x52,0x45,0x52,0x55,0x52,0x15,0x52,0x25,0x52,
 175          0x25,0x52,0x25,0x52,0xC5,0x52,0x41,0x02,0x42,0x82,0x42,0x42,0x44,0x4A,0x48,0x04,
 176          "试",0x00,0x20,0x40,0x28,0x20,0x24,0x30,0x24,0x27,0xFE,0x00,0x20,0xE0,0x20,0x27,0xE0,
 177          0x21,0x20,0x21,0x10,0x21,0x10,0x21,0x0A,0x29,0xCA,0x36,0x06,0x20,0x02,0x00,0x00,
 178          };
 179          uchar gCurRow,gCurCol; // 当前行、列存储,行高16 点,列宽8 点
C51 COMPILER V7.08   55555                                                                 08/10/2005 07:11:22 PAGE 4   

 180          uchar fnGetRow(void)
 181          {
 182   1      return gCurRow;
 183   1      }
 184          uchar fnGetCol(void)
 185          {
 186   1      return gCurCol;
 187   1      }
 188          uchar fnST01(void) // 状态位STA1,STA0 判断(读写指令和读写数据)
 189          {
 190   1      uchar i;
 191   1      for(i=10;i>0;i--)
 192   1      {
 193   2      if((LCMCW & 0x03) == 0x03)
 194   2      break;
 195   2      }
 196   1      return i; // 若返回零,说明错误
 197   1      }
 198          /*
 199          uchar fnST2(void) // 状态位ST2 判断(数据自动读状态)
 200          {
 201          uchar i;
 202          for(i=10;i>0;i--)
 203          
 204          {
 205          if((LCMCW & 0x04) == 0x04)
 206          break;
 207          }
 208          return i; // 若返回零,说明错误
 209          }
 210          */
 211          uchar fnST3(void) // 状态位ST3 判断(数据自动写状态)
 212          {
 213   1      uchar i;
 214   1      for(i=10;i>0;i--)
 215   1      {
 216   2      if((LCMCW & 0x08) == 0x08)
 217   2      break;
 218   2      }
 219   1      return i; // 若返回零,说明错误
 220   1      }
 221          /*
 222          uchar fnST6(void) // 状态位ST6 判断(屏读/屏拷贝状态)
 223          {
 224          uchar i;
 225          for(i=10;i>0;i--)
 226          {
 227          if((LCMCW & 0x40) == 0x40)
 228          break;

⌨️ 快捷键说明

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