ex5-7.lst

来自「单片机实验代码包括A/D」· LST 代码 · 共 481 行 · 第 1/2 页

LST
481
字号
C51 COMPILER V8.02   EX5_7                                                                 01/03/2008 21:05:34 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE EX5_7
OBJECT MODULE PLACED IN EX5-7.OBJ
COMPILER INVOKED BY: D:\keil c\files\C51\BIN\C51.EXE EX5-7.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2          标题:范例 5-7
   3          版本:1.0
   4          Target:89S51
   5          程序描述:这个程序利用89X51连接绘图型LCD,然后显示出:
   6          现在时间是:
   7          12:30:00
   8          /05/09/01 */
   9          /* ***************************************************** */
  10          #include <REGX51.H>
  11          
  12          /* 绘图型LCD 指令 */
  13          #define  GLCD_OFF               62 //关闭绘图型LCD
  14          #define  GLCD_ON                63 //打开绘图型LCD
  15          #define  GLCD_START_LINE_0     192 //设定绘图型LCD左半边的起始行
  16          #define  SET_PAGE              184 //设定绘图型LCD的页数
  17          #define  SET_Y_ADDRESS_0        64 //设定绘图型LCD的y轴位置
  18          #define  CLEAR                   0  //清除绘图型LCD
  19          /* 绘图型LCD 控制线 */
  20          #define  ENABLE                  1
  21          #define  DISABLE                 0
  22          #define  READ                    1
  23          #define  WRITE                   0
  24          #define  COMMAND                 0
  25          #define  DATA                    1
  26          #define  GLCD_RESET              P2_2
  27          #define  GLCD_CS2                P2_3
  28          #define  GLCD_CS1                P2_4
  29          #define  GLCD_D_I                P2_5
  30          #define  GLCD_R_W                P2_6
  31          #define  GLCD_ENABLE             P2_7
  32          typedef  struct {
  33                   char    hour;
  34                   char    minute;
  35                   char    second;
  36          } time;
  37          typedef  struct {
  38                   char    year;
  39                   char    month;
  40                   char    day;
  41          } date;
  42          time now;
  43          date today;
  44          unsigned char gx,gy;
  45          static unsigned timer0_tick;
  46          char code int2char[]="0123456789";
  47          char code monthday[]={31,28,31,30,31,30,31,31,30,31,30,31};
  48          char code weekday[7][4]={"MON","TUE","WED","THU","FRI","SAT",
  49                                   "SUN"};
  50          unsigned char code digit[10][4][8]=
  51          //0
  52          {{
  53          {0X00,0X00,0X00,0XFC,0XFE,0X03,0X01,0X81},
  54          {0XC1,0X61,0X31,0X1B,0XFE,0XFC,0X00,0X00},
  55          {0X00,0X00,0X00,0X0F,0X1F,0X36,0X23,0X21},
C51 COMPILER V8.02   EX5_7                                                                 01/03/2008 21:05:34 PAGE 2   

  56          {0X20,0X20,0X20,0X30,0X1F,0X0F,0X00,0X00}},
  57          //1
  58          {
  59          {0X00,0X00,0X00,0X00,0X00,0X04,0X06,0XFF},
  60          {0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
  61          {0X00,0X00,0X00,0X00,0X20,0X20,0X20,0X3F},
  62          {0X3F,0X20,0X20,0X20,0X00,0X00,0X00,0X00}},
  63          //2
  64          {
  65          {0X00,0X00,0X00,0X1C,0X1E,0X03,0X01,0X81},
  66          {0XC1,0X41,0X61,0X33,0X3E,0X1C,0X00,0X00},
  67          {0X00,0X00,0X00,0X3C,0X3E,0X33,0X31,0X31},
  68          {0X30,0X30,0X30,0X30,0X30,0X3C,0X00,0X00}},
  69          //3
  70          {
  71          {0X00,0X00,0X00,0X0C,0X0E,0X02,0X01,0X41},
  72          {0X41,0XE1,0XE1,0XB2,0X1E,0X0C,0X00,0X00},
  73          {0X00,0X00,0X00,0X0C,0X1C,0X10,0X20,0X20},
  74          {0X20,0X20,0X20,0X11,0X1F,0X0E,0X00,0X00}},
  75          //4
  76          {
  77          {0X00,0X00,0X80,0XC0,0X60,0X30,0X18,0X0C},
  78          {0X06,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00},
  79          {0X00,0X07,0X07,0X04,0X04,0X04,0X04,0X24},
  80          {0X24,0X3F,0X3F,0X24,0X24,0X04,0X00,0X00}},
  81          //5
  82          {
  83          {0X00,0X00,0X00,0XFF,0XFF,0X43,0X23,0X23},
  84          {0X23,0X23,0X23,0X43,0XC3,0X80,0X00,0X00},
  85          {0X00,0X00,0X00,0X0C,0X1C,0X10,0X20,0X20},
  86          {0X20,0X20,0X20,0X10,0X1F,0X0F,0X00,0X00},},
  87          //6
  88          {
  89          {0X00,0X00,0X00,0XFC,0XFE,0X82,0X41,0X41},
  90          {0X41,0X41,0X41,0XC7,0X86,0X00,0X00,0X00},
  91          {0X00,0X00,0X00,0X0F,0X1F,0X30,0X20,0X20},
  92          {0X20,0X20,0X20,0X10,0X1F,0X0F,0X00,0X00}},
  93          //7
  94          {
  95          {0X00,0X00,0X00,0X0F,0X03,0X03,0X03,0X03},
  96          {0X83,0XC3,0X63,0X33,0X1F,0X0F,0X00,0X00},
  97          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F},
  98          {0X3F,0X00,0X00,0X00,0X00,0X00,0X00,0X00}},
  99          //8
 100          {
 101          {0X00,0X00,0X00,0X1C,0XBE,0XE2,0X41,0X41},
 102          {0X41,0X41,0XE2,0XBE,0X1C,0X00,0X00,0X00},
 103          {0X00,0X00,0X0E,0X1F,0X11,0X20,0X20,0X20},
 104          {0X20,0X20,0X20,0X11,0X1F,0X0E,0X00,0X00}},
 105          //9
 106          {
 107          {0X00,0X00,0X00,0X7C,0XFE,0X82,0X01,0X01},
 108          {0X01,0X01,0X82,0XC6,0XFC,0XF8,0X00,0X00},
 109          {0X00,0X00,0X00,0X0C,0X1C,0X18,0X21,0X21},
 110          {0X21,0X21,0X10,0X1C,0X0F,0X03,0X00,0X00}}};
 111          unsigned char code slash[4][8]=
 112          ///
 113          {
 114          {0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0X60},
 115          {0X30,0X18,0X0C,0X06,0X03,0X01,0X00,0X00},
 116          {0X30,0X18,0X0C,0X06,0X03,0X01,0X00,0X00},
 117          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00}};
C51 COMPILER V8.02   EX5_7                                                                 01/03/2008 21:05:34 PAGE 3   

 118          //:
 119          unsigned char code comma[4][8]=
 120          {
 121          {0X00,0X00,0X00,0X00,0X00,0X00,0X10,0X38},
 122          {0X38,0X10,0X00,0X00,0X00,0X00,0X00,0X00},
 123          {0X00,0X00,0X00,0X00,0X00,0X00,0X02,0X07},
 124          {0X07,0X02,0X00,0X00,0X00,0X00,0X00,0X00}};
 125          unsigned char code space[4][8]=
 126          {
 127          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 128          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 129          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 130          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00}};
 131          //年
 132          unsigned char code yearp[4][8]=
 133          {
 134          {0X08,0X00,0X08,0X08,0X0F,0XFC,0X11,0X00},
 135          {0X21,0X10,0X5F,0XF8,0X11,0X00,0X11,0X00},
 136          {0X11,0X04,0XFF,0XFE,0X01,0X00,0X01,0X00},
 137          {0X01,0X00,0X01,0X00,0X00,0X00,0X00,0X00}};
 138          //星
 139          unsigned char code weekp[2][4][8]=
 140          {{
 141          {0X3F,0XF8,0X20,0X08,0X3F,0XF8,0X20,0X08},
 142          {0X3F,0XF8,0X01,0X00,0X21,0X08,0X3F,0XFC},
 143          {0X21,0X00,0X41,0X10,0XBF,0XF8,0X01,0X00},
 144          {0X01,0X04,0XFF,0XFE,0X00,0X00,0X00,0X00}},
 145          //期
 146          {
 147          {0X22,0X04,0X22,0X7E,0X7F,0X44,0X22,0X44},
 148          {0X3E,0X7C,0X22,0X44,0X3E,0X44,0X22,0X44},
 149          {0X22,0X7C,0XFF,0XC4,0X24,0X44,0X22,0X84},
 150          {0X41,0X14,0X82,0X08,0X00,0X00,0X00,0X00}}};
 151          unsigned char code weekdayp[7][4][8]=
 152          {{
 153          //一
 154          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 155          {0X00,0X00,0X00,0X00,0X00,0X04,0XFF,0XFE},
 156          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 157          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00}},
 158          //二
 159          {
 160          {0X00,0X00,0X00,0X00,0X00,0X10,0X3F,0XF8},
 161          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 162          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X04},
 163          {0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00}},
 164          //三
 165          {
 166          {0X00,0X00,0X00,0X08,0X7F,0XFC,0X00,0X00},
 167          {0X00,0X00,0X00,0X00,0X00,0X10,0X3F,0XF8},
 168          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X04},
 169          {0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00}},
 170          //四
 171          {
 172          {0X00,0X00,0X00,0X04,0XFF,0XFE,0X44,0X44},
 173          {0X44,0X44,0X44,0X44,0X44,0X44,0X44,0X44},
 174          {0X48,0X3C,0X50,0X04,0X40,0X04,0X7F,0XFC},
 175          {0X40,0X04,0X00,0X00,0X00,0X00,0X00,0X00}},
 176          //五
 177          {
 178          {0X00,0X08,0X7F,0XFC,0X02,0X00,0X02,0X00},
 179          {0X02,0X00,0X02,0X10,0X3F,0XF8,0X04,0X10},
C51 COMPILER V8.02   EX5_7                                                                 01/03/2008 21:05:34 PAGE 4   

 180          {0X04,0X10,0X04,0X10,0X08,0X10,0X08,0X10},
 181          {0X08,0X10,0XFF,0XFE,0X00,0X00,0X00,0X00}},
 182          //六
 183          {
 184          {0X04,0X00,0X02,0X00,0X03,0X00,0X01,0X04},
 185          {0XFF,0XFE,0X00,0X00,0X00,0X00,0X04,0X40},
 186          {0X0C,0X20,0X08,0X10,0X10,0X18,0X10,0X0C},
 187          {0X20,0X0C,0X40,0X04,0X00,0X00,0X00,0X00}},
 188          //日
 189          {
 190          {0X00,0X10,0X3F,0XF8,0X20,0X10,0X20,0X10},
 191          {0X20,0X10,0X20,0X10,0X3F,0XF0,0X20,0X10},
 192          {0X20,0X10,0X20,0X10,0X20,0X10,0X20,0X10},
 193          {0X3F,0XF0,0X20,0X10,0X00,0X00,0X00,0X00}}};
 194          //月
 195          unsigned char code monthp[4][8]=
 196          {
 197          {0X00,0X10,0X1F,0XF8,0X10,0X10,0X10,0X10},
 198          {0X1F,0XF0,0X10,0X10,0X10,0X10,0X1F,0XF0},
 199          {0X10,0X10,0X10,0X10,0X10,0X10,0X10,0X10},
 200          {0X20,0X50,0X40,0X20,0X00,0X00,0X00,0X00}};
 201          unsigned char code token[7][4][8]=
 202          {
 203          {
 204          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 205          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 206          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
 207          {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00}},
 208          //现
 209          {
 210          {0X42,0X42,0XFE,0X43,0X42,0X00,0X00,0XFE},
 211          {0X49,0X49,0X49,0X49,0XFF,0X00,0X00,0X00},
 212          {0X08,0X18,0X0F,0X04,0X22,0X20,0X20,0X13},
 213          {0X0E,0X01,0X01,0X3E,0X23,0X20,0X30,0X00}},
 214          //在
 215          {
 216          {0X02,0X02,0X02,0X84,0X64,0X1C,0X87,0X84},
 217          {0X84,0XF4,0X84,0X84,0XC4,0X86,0x04,0X00},
 218          {0X04,0X02,0X01,0X3F,0X00,0X10,0X10,0X10},
 219          {0X10,0X1F,0X10,0X10,0X10,0X18,0X10,0X00}},
 220          //时
 221          {
 222          {0XFC,0X44,0X44,0XFC,0X80,0X92,0X92,0X52},
 223          {0X52,0X5F,0X52,0XF2,0X9A,0XD2,0X80,0X00},
 224          {0X0F,0X04,0X04,0X0F,0X00,0X00,0X02,0X04},
 225          {0X80,0X00,0X40,0X1F,0X00,0X00,0X00,0X00}},
 226          //间

⌨️ 快捷键说明

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