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

📄 lmb204bdc.lst

📁 不用多说
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   LMB204BDC                                                             11/16/2007 15:54:47 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE LMB204BDC
OBJECT MODULE PLACED IN LMB204BDC.OBJ
COMPILER INVOKED BY: D:\soft\isp\C51\BIN\C51.EXE LMB204BDC.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include "io.h"
   2          #include "LMB204BDC.h"
   3          //#include "key.h"
   4          //#include "interrupt.h"
   5          //
   6          
   7          uchar idata tab0[20];
   8          uchar idata tab1[20];
   9          uchar idata tab2[20];
  10          uchar idata tab3[20];
  11                                   // 1    31         30          36     0%
  12          uchar code tab_phrase1[]={0x31,0x33,0x31,0x33,0x30,0x33,0x36,0x30};//阶段,温度,湿度,时间,风门,排气门
  13          uchar code tab_phrase2[]={0x32,0x33,0x36,0x33,0x33,0x34,0x38,0x32,0x30};
  14          uchar code tab_phrase3[]={0x33,0x34,0x31,0x33,0x35,0x33,0x36,0x34,0x30};
  15          uchar code tab_phrase4[]={0x34,0x34,0x37,0x33,0x36,0x33,0x36,0x36,0x30};
  16          uchar code tab_phrase5[]={0x35,0x35,0x34,0x33,0x37,0x32,0x34,0x36,0x30};
  17          uchar code tab_phrase6[]={0x36,0x36,0x32,0x33,0x39,0x32,0x34,0x31,0x30,0x30};
  18          uchar code tab_phrase7[]={0x37,0x36,0x38,0x34,0x30,0x32,0x34,0x31,0x30,0x30};
  19          
  20          uchar lcd_buf[4];
  21          
  22          
  23          
  24          /*=======================================================
  25           显示字符串
  26          =======================================================*/
  27          void ePutstr(uchar x,uchar y, uchar  *ptr) 
  28          {
  29   1          uchar i,l=0;
  30   1              while (ptr[l] >31)
  31   1                  {
  32   2                          l++;
  33   2                      };
  34   1              for (i=0;i<l;i++) 
  35   1                  {
  36   2                          DispOneChar(x++,y,ptr[i]);
  37   2                               
  38   2                          if ( x == 20 )
  39   2                               {
  40   3                                       x = 0; 
  41   3                                       if(y<3)
  42   3                                          y=y+1;  
  43   3                                       else
  44   3                                          y=0;
  45   3                               }
  46   2                  }
  47   1      }
  48          
  49          /*=======================================================
  50           演示一行连续字符串,配合上位程序演示移动字串
  51          =======================================================*/
  52          void Display(uchar posx,uchar posy, uchar *tab) 
  53          {
  54   1      
  55   1          uchar i;
C51 COMPILER V7.06   LMB204BDC                                                             11/16/2007 15:54:47 PAGE 2   

  56   1              
  57   1              for (i=0;i<20;i++) 
  58   1               {
  59   2                      DispOneChar(posx++,posy,tab[i]);
  60   2               }
  61   1      }
  62          
  63          /*=======================================================
  64           显示光标定位
  65          =======================================================*/
  66           void LocateXY( uchar posx,uchar posy) 
  67           {
  68   1      
  69   1           uchar temp;
  70   1      
  71   1               temp = posx ;//& 0x13;
  72   1           // posy &= 0x03;
  73   1              
  74   1               if ( posy==1 )temp += 0x40;
  75   1               if ( posy==2 )temp += 0x14;
  76   1               if ( posy==3 )temp += 0x54;
  77   1      
  78   1               temp |= 0x80;
  79   1               LcdWriteCommand(temp,0);
  80   1      
  81   1      }
  82          
  83          /*=======================================================
  84           按指定位置显示数出一个字符
  85          =======================================================*/
  86          void DispOneChar(uchar x,uchar y,uchar Wdata) 
  87          {
  88   1      
  89   1              LocateXY( x, y );                               // 定位显示地址
  90   1              LcdWriteData(Wdata);                    // 写字符
  91   1      
  92   1      }
  93          
  94          /*=======================================================
  95           初始化程序, 必须按照产品资料介绍的初始化过程进行
  96          =======================================================*/
  97          void LcdReset( void ) 
  98          {
  99   1      
 100   1      
 101   1         /*   LcdWriteCommand( 0x38, 0);                      // 显示模式设置(不检测忙信号)
 102   1                      Delay5Ms();
 103   1              LcdWriteCommand( 0x38, 0);                      // 共三次
 104   1                      Delay5Ms();
 105   1              LcdWriteCommand( 0x38, 0);
 106   1                      Delay5Ms();*/
 107   1          delay_ms(200);
 108   1              LcdWriteCommand( 0x38, 1);
 109   1           delay_ms(5);
 110   1              LcdWriteCommand( 0x0c, 1);                      // 显示开及光标设
 111   1              delay_ms(5);
 112   1              LcdWriteCommand( 0x01, 1);                      // 显示清屏
 113   1              delay_ms(5);
 114   1              LcdWriteCommand( 0x06, 1);                      // 显示光标移动设置
 115   1          delay_ms(5);
 116   1      }
 117          
C51 COMPILER V7.06   LMB204BDC                                                             11/16/2007 15:54:47 PAGE 3   

 118          /*=======================================================
 119           写控制字符子程序: E=1 RS=0 RW=0
 120          =======================================================*/
 121          void LcdWriteCommand( uchar CMD,uchar AttribC ) 
 122          {
 123   1      
 124   1              if (AttribC) WaitForEnable();                           // 检测忙信号?
 125   1              
 126   1              RS = 0; 
 127   1              RW = 0; 
 128   1      //      _nop_();
 129   1              Elcm = 1;
 130   1              DataPort = CMD;
 131   1              Elcm = 0;       
 132   1          _nop_();                                    // 送控制字子程序
 133   1              
 134   1      
 135   1              _nop_();
 136   1              _nop_();
 137   1                      // 操作允许脉冲信号     
 138   1      }
 139                  
 140          /*=======================================================
 141           当前位置写字符子程序: E =1 RS=1 RW=0
 142          =======================================================*/
 143          void LcdWriteData( uchar dataW ) 
 144          {
 145   1      
 146   1              WaitForEnable();                                                        // 检测忙信号
 147   1      
 148   1              RS = 1; 
 149   1              RW = 0; 
 150   1      //      _nop_();
 151   1              Elcm = 1; 
 152   1          DataPort = dataW; 
 153   1              Elcm = 0;
 154   1              
 155   1              _nop_();
 156   1      
 157   1      
 158   1              _nop_(); 
 159   1              _nop_(); 
 160   1                      // 操作允许脉冲信号             
 161   1      
 162   1      }
 163          
 164          /*=======================================================
 165          正常读写操作之前必须检测LCD控制器状态:  CS=1 RS=0 RW=1
 166          DB7:    0  LCD控制器空闲; 1  LCD控制器忙
 167          ========================================================*/
 168          void WaitForEnable( void ) 
 169          {
 170   1      
 171   1              DataPort = 0xff;
 172   1      
 173   1              RS =0; 
 174   1              RW = 1; 
 175   1              _nop_();        
 176   1              Elcm = 1; 
 177   1      
 178   1              
 179   1              while( DataPort & Busy );
C51 COMPILER V7.06   LMB204BDC                                                             11/16/2007 15:54:47 PAGE 4   

 180   1      
 181   1              Elcm = 0;
 182   1              _nop_(); 
 183   1              _nop_();
 184   1      }       
 185          //****************************************************
 186          //function: tu_1
 187          //input   :无
 188          //output  :无                  
 189          //modify  :2007-11-14          
 190          //****************************************************                       
 191          void tu_1(void)
 192          {       
 193   1          tran_tab0();
 194   1              tran_tab1();
 195   1              tran_tab2();
 196   1              tran_tab3();
 197   1      
 198   1          Display(0,0,tab0);
 199   1          Display(0,1,tab1);
 200   1          Display(0,2,tab2);
 201   1          Display(0,3,tab3);
 202   1      }
 203          
 204          //****************************************************
 205          //function: 给TAB0赋全值
 206          //input   
 207          //output  :                    
 208          //modify  :2007-11-14          
 209          //**************************************************** 
 210          void tran_tab0(void)
 211          {
 212   1          

⌨️ 快捷键说明

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