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

📄 text2.lst

📁 漏气测试12864显示 MCU STC89C51芯片
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE TEXT2
OBJECT MODULE PLACED IN Text2.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Text2.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1                          #include <reg51.h>
   2          #include<intrins.h>
   3          #define uchar unsigned char
   4          #define uint  unsigned int 
   5          sbit  ACC0=ACC^0;
   6          sbit  ACC7=ACC^7;
   7          /*-----------------------------1302:引角配置--------------------------
   8          
   9          --*/
  10          sbit Rst_1302=P2^4;
  11          sbit Io_1302=P2^3;
  12          sbit Clk_1302=P2^2;
  13          sbit RemPin0=P3^2 ;
  14          sbit RemPin =P3^3 ;
  15          uchar receive[3];
  16          
  17          unsigned char ci        ;
  18          
  19          unsigned char XPOS,YPOS;
  20          
  21          
  22          
  23          
  24          /*---------------------------12864:引脚配置---------------------------
  25          
  26          --*/
  27          #define Lcd_Bus P0  //MCU P1<------> LCM
  28          sbit Cs1_12864=P2^3;  //Master chip enable
  29          sbit Cs2_12864=P2^4;  //Slave chip enable
  30          sbit E_12864=P2^2; //6800 mode Enable single
  31          sbit Rs_12864=P2^0;  //Data or Instrument Select
  32          sbit Rw_12864=P2^1;  //Write or Read
  33          /*--------------------------12864:控制寄存器--------------------------
  34          
  35          -*/
  36          #define Disp_On  0x3f
  37          #define Disp_Off 0x3e
  38          #define Col_Add  0x40
  39          #define Page_Add 0xb8
  40          #define Start_Line 0xc0
  41          
  42           unsigned char code ok[12][32]={
  43          
  44          0x10,0xF8,0xFF,0xB7,0xFE,0xBE,0xF6,0xF0,0x26,0xBE,0x1E,0xA6,0xA6,0x3E,0x1E,0x00,
  45          0x60,0x3F,0x0F,0x04,0x1F,0x64,0x7F,0x3F,0x02,0x0D,0x0D,0x7F,0x7F,0x0D,0x0D,0x00,/*"解",0*/
  46          
  47          0x86,0xC6,0xFE,0xFE,0xC6,0xC6,0x00,0x06,0xF6,0xF6,0x86,0x86,0xFE,0xFE,0x80,0x00,
  48          0x01,0x1F,0x1F,0x0C,0x1F,0x1F,0x00,0x0C,0x0D,0x0D,0x0D,0x2D,0x61,0x7F,0x3F,0x00,/*"码",1*/
  49          
  50          0x00,0x00,0xFC,0xFC,0xCC,0xCC,0xCC,0x0C,0xFF,0xFF,0x0C,0xCF,0xCF,0x0C,0x00,0x00,
  51          0x20,0x78,0x1F,0x07,0x08,0x0F,0x6F,0x30,0x19,0x0F,0x1E,0x33,0x61,0x78,0x38,0x00,/*"成",2*/
  52          
  53          0x0C,0x0C,0xFC,0xFC,0x0C,0x0C,0x30,0x30,0xFF,0xFF,0x30,0x30,0xF0,0xF0,0x00,0x00,
  54          0x18,0x18,0x1F,0x0F,0x2C,0x6C,0x30,0x1C,0x0F,0x03,0x60,0x60,0x7F,0x3F,0x00,0x00,/*"功",3*/
  55          
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 2   

  56          0x60,0x7C,0x60,0xFF,0xFF,0x6C,0x6C,0x00,0xF6,0x36,0xBE,0xBE,0x36,0xF6,0xF6,0x00,
  57          0x24,0x67,0x60,0x3F,0x1F,0x0C,0x07,0x40,0x67,0x30,0x1F,0x0F,0x10,0x37,0x67,0x00,/*"频",2*/
  58          
  59          0x06,0x06,0x9E,0x96,0x26,0xB6,0xFF,0x6F,0xB6,0x96,0x26,0xB6,0x96,0x06,0x00,0x00,
  60          0x0C,0x0D,0x0D,0x0C,0x0D,0x0D,0x7F,0x7F,0x0D,0x0D,0x0D,0x0C,0x0D,0x0D,0x00,0x00,/*"率",3*/
  61          
  62          
  63          0x30,0x30,0xFE,0xFE,0x30,0xC0,0xF8,0xF8,0x60,0xFE,0xFE,0x30,0xF0,0xF0,0x00,0x00,
  64          0x18,0x18,0x1F,0x0F,0x0C,0x00,0x3F,0x7F,0x60,0x6F,0x6F,0x66,0x67,0x7B,0x38,0x00,/*"地",0*/
  65          
  66          0x30,0x30,0xFF,0xFF,0x30,0x00,0x00,0xF0,0xF0,0x00,0xFF,0xFF,0x60,0x60,0x60,0x00,
  67          0x18,0x18,0x0F,0x0F,0x0C,0x30,0x30,0x3F,0x3F,0x30,0x3F,0x3F,0x30,0x30,0x30,0x00,/*"址",1*/
  68          
  69          
  70          0x18,0x5B,0x7E,0x98,0xFF,0x7F,0x3E,0x5B,0xE0,0xFF,0x1F,0x18,0xF8,0xF8,0x18,0x00,
  71          0x43,0x43,0x6F,0x3F,0x1B,0x1B,0x1F,0x37,0x60,0x33,0x1F,0x1C,0x37,0x61,0x40,0x00,/*"数",0*/
  72          
  73          0x18,0x18,0xFF,0xFF,0x98,0xFF,0xFF,0xDB,0xDB,0xDB,0xFB,0xFB,0xDF,0xDF,0xC0,0x00,
  74          0x03,0x63,0x7F,0x3F,0x21,0x3F,0x1F,0x00,0x7E,0x3E,0x33,0x33,0x7E,0x7E,0x00,0x00,/*"据",1*/
  75          
  76          0x00,0xB0,0xB8,0x9E,0x9E,0x98,0x98,0xFF,0xFF,0x98,0x98,0x98,0x98,0x80,0x00,0x00,
  77          0x00,0x61,0x61,0x31,0x19,0x0D,0x07,0x03,0x07,0x0D,0x19,0x31,0x31,0x61,0x20,0x00,/*"失",0*/
  78          
  79          0x00,0xFE,0xFE,0x06,0xF6,0x06,0xFE,0x80,0xE0,0xFE,0x1E,0x18,0xF8,0xF8,0x18,0x00,
  80          0x20,0x33,0x1B,0x0C,0x07,0x18,0x53,0x41,0x61,0x37,0x1C,0x1E,0x37,0x61,0x60,0x00,/*"败",1*/
  81          };
  82          
  83          unsigned char code time_cha[2][32]={
  84          /*--  文字:  时  --*/
  85          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=16x16   --*/
  86          0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00,
  87          0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
  88          /*--  文字:  间  --*/
  89          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=16x16   --*/
  90          0x00,0xF8,0x01,0x06,0x00,0xF0,0x92,0x92,0x92,0x92,0xF2,0x02,0x02,0xFE,0x00,0x00,
  91          0x00,0xFF,0x00,0x00,0x00,0x07,0x04,0x04,0x04,0x04,0x07,0x40,0x80,0x7F,0x00,0x00};
  92          
  93          unsigned char code dian[]={
  94          /*--  文字: ":" --*/
  95          /*--  宋体12;  此字体下对应的点阵为:行x列=16x8   --*/
  96          0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,
  97          0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00
  98          };
  99          
 100          unsigned char code ok1[2][16]={
 101          
 102          0xF8,0xE0,0x00,0x00,0x00,0xE0,0xF8,0x00,0x3F,0x00,0x0F,0x30,0x0F,0x00,0x3F,0x00,/*"M",0*/
 103          
 104          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,/*".",1*/
 105          
 106          };
 107          unsigned char code time_let[11][16]={
 108          /*--  文字:  0  --*/
 109          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 110          0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,
 111          
 112          /*--  文字:  1  --*/
 113          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 114          0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,
 115          
 116          /*--  文字:  2  --*/
 117          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 3   

 118          0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,
 119          
 120          /*--  文字:  3  --*/
 121          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 122          0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,
 123          
 124          /*--  文字:  4  --*/
 125          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 126          0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,
 127          
 128          /*--  文字:  5  --*/
 129          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 130          0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,
 131          
 132          /*--  文字:  6  --*/
 133          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 134          0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,
 135          
 136          /*--  文字:  7  --*/
 137          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 138          0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,
 139          
 140          /*--  文字:  8  --*/
 141          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 142          0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,
 143          
 144          /*--  文字:  9  --*/
 145          /*--  Times New Roman12;  此字体下对应的点阵为:宽x高=8x16   --*/
 146          0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,
 147          
 148          0xF8,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x3F,0x01,0x01,0x01,0x01,0x01,0x00,0x00,/*"F",0*/
 149          
 150          };
 151          
 152           
 153          void Delay(uint t)
 154          {uint i,j;
 155   1       for (i=0;i<100;i++)
 156   1       for (j=0;j<t;j++);
 157   1      } 
 158          
 159          
 160          /*--------------------------------------------------------------------
 161          
 162          */
 163          /*                  DS1302                                            
 164          
 165          */
 166          /*                                                                     
 167          
 168          */
 169          /*--------------------------------------------------------------------
 170          
 171          -*/
 172          void write_dat_1302(unsigned char temp)     //DS1302:写入操作
 173          {
 174   1         unsigned char i;
 175   1         ACC=temp;
 176   1         for(i=8;i>0;i--)
 177   1         { 
 178   2            Io_1302=ACC0;
 179   2         Clk_1302=0;     
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 4   

 180   2            Clk_1302=1;
 181   2            ACC=ACC>>1;
 182   2         }
 183   1      }
 184          
 185          unsigned char read_dat_1302(void)        //DS1302:读取操作   
 186          {
 187   1         unsigned char i;
 188   1         for(i=0;i<8;i++)
 189   1         {
 190   2            ACC=ACC>>1;
 191   2         Clk_1302 = 1;
 192   2         Clk_1302 = 0;
 193   2            ACC7 = Io_1302;
 194   2         }
 195   1         return(ACC);
 196   1      
 197   1      }
 198          
 199          void write_1302(unsigned char addr,unsigned char temp) //DS1302:写入数
 200          {
 201   1         Rst_1302=0;    //停止工作
 202   1         Clk_1302=0;                                 
 203   1         Rst_1302=1;   //重新工作
 204   1         write_dat_1302(addr);    //写入地址
 205   1         
 206   1         write_dat_1302(temp);
 207   1         Rst_1302=0;
 208   1         Clk_1302=1;
 209   1      }
 210          
 211          unsigned char read_1302(unsigned char addr)   //DS1302:读取数据(先送地
 212          {
 213   1         unsigned char temp;
 214   1         Rst_1302=0;                        //停止工作
 215   1         Clk_1302=0;  
 216   1         Rst_1302=1;                         //重新工作
 217   1         write_dat_1302(addr);   //写入地址
 218   1         temp=read_dat_1302();
 219   1         Rst_1302=0;
 220   1         Clk_1302=1;     //停止工作
 221   1         return(temp);
 222   1      }
 223          
 224           
 225          
 226          /*--------------------------------------------------------------------
 227          
 228          */
 229          /*               12864                                           */
 230          /*                                                                     
 231          
 232          */
 233          /*--------------------------------------------------------------------
 234          
 235          -*/
 236          /*------------------------------12864:写命令-------------------------*/
 237          void write_cmd_12864(unsigned char temp)
 238          {
 239   1         Lcd_Bus=temp;
 240   1         Rs_12864=0;              //   E状态         执行动作          结果
 241   1         Rw_12864=0;              //  低/低-->高     无动作            
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 5   

 242   1         E_12864=1;               //  高             数据缓冲        配合R进
 243   1         E_12864=0;               //  高-->低                        配合/W进
 244   1      }
 245          
 246          
 247          /*------------------------------12864:写资料--------------------------
 248          
 249          --*/
 250          void write_dat_12864(unsigned char temp)
 251          { 
 252   1         Lcd_Bus=temp;
 253   1         Rs_12864=1;
 254   1         Rw_12864=0;
 255   1         E_12864=0;
 256   1         E_12864=1;
 257   1         E_12864=0;
 258   1      }
 259          
 260          /*------------------------------12864:初使化-------------------------
 261          
 262          */
 263          void ini_12864(void)
 264          {
 265   1         Cs1_12864=1;  Cs2_12864=1;
 266   1         write_cmd_12864(Disp_Off);
 267   1         write_cmd_12864(Page_Add);
 268   1         write_cmd_12864(Col_Add);
 269   1         write_cmd_12864(Start_Line);
 270   1         write_cmd_12864(Disp_On);
 271   1      }
 272          
 273          
 274          /*------------------------------12864:清零---------------------------*/
 275          void clr_12864(void)
 276          {
 277   1         unsigned char i=0,j=0;
 278   1         Cs1_12864=1; Cs2_12864=1;
 279   1         write_cmd_12864(Page_Add);
 280   1         write_cmd_12864(Col_Add);
 281   1      
 282   1         for(i=0;i<8;i++)
 283   1         {
 284   2            write_cmd_12864(Page_Add+i);
 285   2            for(j=0;j<64;j++)
 286   2              write_dat_12864(0x00);
 287   2         }
 288   1         
 289   1      }
 290          
 291          /*--------------------------------12864:显示字符  行x列:16x16点     --
 292          
 293          ------------------*/
 294          void show_cha_12864(unsigned char page, unsigned char col,unsigned char 
 295          
 296          *poi)
 297          {
 298   1         unsigned char i=0,j=0;
 299   1         for(i=0;i<2;i++)
 300   1         {
 301   2            write_cmd_12864(Page_Add+page+i);
 302   2         write_cmd_12864(Col_Add+col);
 303   2         for(j=0;j<16;j++)
C51 COMPILER V8.05a   TEXT2                                                                10/12/2007 22:10:38 PAGE 6   

 304   2            write_dat_12864( poi[16*i+j] );
 305   2         }
 306   1      }
 307          
 308          
 309          /*--------------------------------12864:显示字符  8x16点    ----------
 310          
 311          ----------*/
 312          void show_let_12864(unsigned char page, unsigned char col,unsigned char 
 313          
 314          *poi)
 315          {
 316   1         unsigned char i=0,j=0;
 317   1         for(i=0;i<2;i++)
 318   1         {
 319   2            write_cmd_12864(Page_Add+page+i);    //2行  16个点
 320   2         write_cmd_12864(Col_Add+col);
 321   2         for(j=0;j<8;j++)             // 1列  8个点              
 322   2            write_dat_12864( poi[8*i+j] );

⌨️ 快捷键说明

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