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

📄 test_01.lst

📁 不用多说
💻 LST
📖 第 1 页 / 共 2 页
字号:
 251   1      
 252   1         delay5ms();
 253   1         //delay5ms();
 254   1         //delay5ms();
 255   1          LCD_RW=0;
 256   1          LCD_RS=0;
 257   1          //delay(5);
 258   1              LCD_E=1;
 259   1         DATABUS=cmd;
 260   1          //delay(5);
 261   1          LCD_E=0;
 262   1          //delay(5);
 263   1      
 264   1      }
 265          
 266          void LcdWriteData(uchar dataW)
 267          {
 268   1              delay5ms();
 269   1              //delay5ms();
 270   1              //delay5ms();
 271   1              //delay5ms();
 272   1          LCD_RW=0;
 273   1          LCD_RS=1;
 274   1          //delay(5);
 275   1              LCD_E=1;
 276   1         DATABUS=dataW;
 277   1          //delay(5);
 278   1          LCD_E=0;
 279   1          //delay(5);
 280   1      }
 281          /*void display(uchar dd)
 282          {
 283              uchar i;
 284              for(i=0;i<20;i++)
 285                  {
 286                       DispOneChar(i,1,dd++);
 287                       dd&=0x7f;
 288                       if(dd<32)dd=32;
 289                  }
 290          }*/
 291          
 292          void lcd_init()
 293          {
 294   1      //
 295   1           LCD_E=0;
 296   1           delay5ms();
 297   1           delay5ms();
 298   1           delay5ms();
 299   1           delay5ms();
 300   1                  delay5ms();
 301   1           delay5ms();
 302   1           delay5ms();
C51 COMPILER V7.06   TEST_01                                                               11/22/2007 09:09:04 PAGE 6   

 303   1           delay5ms(); 
 304   1           delay5ms();
 305   1           delay5ms();
 306   1           delay5ms();
 307   1      
 308   1           LcdWriteCommand(0x38);
 309   1               Delay_us(100);
 310   1      
 311   1           LcdWriteCommand(0x38);
 312   1               delay5ms();
 313   1               Delay_us(100);          
 314   1          LcdWriteCommand(0x0e);
 315   1               Delay_us(100);
 316   1      
 317   1         LcdWriteCommand(0x01);
 318   1               delay5ms();
 319   1      
 320   1      
 321   1          LcdWriteCommand(0x06);
 322   1               Delay_us(100);
 323   1      
 324   1      }
 325          
 326            
 327              
 328              
 329          /*=======================================================
 330           显示字符串
 331          =======================================================*/
 332          void ePutstr(uchar x,uchar y, uchar  *ptr) 
 333          {
 334   1          uchar i,l=0;
 335   1              //LcdWriteCommand(0x01,1);
 336   1          //Delay_us(1520);
 337   1              while (ptr[l] >31)
 338   1                  {
 339   2                          l++;
 340   2                      };
 341   1              for (i=0;i<l;i++) 
 342   1                  {
 343   2                          DispOneChar(x++,y,ptr[i]);
 344   2                               
 345   2                          if ( x == 20 )
 346   2                               {
 347   3                                       x = 0; 
 348   3                                       if(y<3)
 349   3                                          y=y+1;  
 350   3                                       else
 351   3                                          y=0;
 352   3                               }
 353   2                  }
 354   1      }
 355          
 356          /*=======================================================
 357           演示一行连续字符串,配合上位程序演示移动字串
 358          =======================================================*/
 359          void Display_1(uchar posx,uchar posy, uchar *tab) 
 360          {
 361   1      
 362   1          uchar i;    
 363   1              for (i=0;i<20;i++) 
 364   1               {
C51 COMPILER V7.06   TEST_01                                                               11/22/2007 09:09:04 PAGE 7   

 365   2                      DispOneChar(posx++,posy,tab[i]);
 366   2      
 367   2                              tab[i] &= 0x7f;
 368   2                          if (tab[i]<32) tab[i]=32;
 369   2               }
 370   1      }
 371          
 372          
 373          /*=======================================================
 374           显示光标定位
 375          =======================================================*/
 376           void LocateXY( uchar posx,uchar posy) 
 377           {
 378   1      
 379   1           uchar temp=0;
 380   1      
 381   1              if(posy==0)
 382   1                   {temp=posx ;}//& 0x13;
 383   1           // posy &= 0x03;
 384   1              
 385   1              if(posy==1)
 386   1                  {temp=posx+0x40;}
 387   1              if(posy==2)
 388   1                  {temp=posx+0x14;}
 389   1              if(posy==3) 
 390   1                  {temp=posx+0x54;}
 391   1      
 392   1               temp|= 0x80;
 393   1               //LcdWriteCommand(temp&0xf0,0);
 394   1           LcdWriteCommand(temp);
 395   1                 Delay_us(37);
 396   1               //LcdWriteCommand((temp&0x0f)<<4,0);
 397   1      
 398   1      
 399   1      }
 400          
 401          /*=======================================================
 402           按指定位置显示数出一个字符
 403          =======================================================*/
 404          void DispOneChar(uchar x,uchar y,uchar Wdata) 
 405          {
 406   1      
 407   1              LocateXY( x, y );
 408   1          LcdWriteData(Wdata);
 409   1              delay5ms();
 410   1      
 411   1      }
 412              
 413              
 414          void delay(unsigned int t)
 415            {
 416   1           unsigned int i;
 417   1           for(i=0;i<t;i++); 
 418   1        }
 419          void Delay_us(uint value)
 420          {
 421   1              for(value=value/4+1 ; value ; value--);
 422   1      }
 423          
 424              
 425          
 426          void time0_int(void) interrupt 1 using 1
C51 COMPILER V7.06   TEST_01                                                               11/22/2007 09:09:04 PAGE 8   

 427          {
 428   1          //TF2=0;
 429   1          time0_temp=65536-time0*fosc/12;
 430   1              //TL0=(65536-50000)%256;            //50ms time
 431   1          //TH0=(65536-50000)/256;
 432   1          TL0=time0_temp%256;
 433   1          TH0=time0_temp/256;
 434   1          
 435   1          count++;
 436   1          if(count==20)
 437   1              {
 438   2                  count=0;             //1s            
 439   2                  if(disp_temp[17]!=0x20)
 440   2                                  {disp_temp[17]=0x20;}
 441   2                              else
 442   2                                  {disp_temp[17]=':';}
 443   2                              if(disp_temp[37]!=0x20)
 444   2                                  {disp_temp[37]=0x20;}
 445   2                              else
 446   2                                  {disp_temp[37]=':';}
 447   2                  sec_count++;
 448   2                  if(sec_count==60)
 449   2                      {
 450   3                          sec_count=0;
 451   3                          mint_count++;
 452   3                          if(mint_count==60)
 453   3                              {
 454   4                                  mint_count=0;
 455   4                                  hour_count++;
 456   4                              }
 457   3                      }
 458   2                      //dian_buf=0x3a;     //: display per second
 459   2                              //delay_ms(40);
 460   2                              //dian_buf=0x20;
 461   2      
 462   2              }
 463   1      }
 464          
 465          
 466          void changhextodec_mtime(void)
 467          {
 468   1          uchar i;
 469   1          mtime_buf[0]=mint_count%10+0x30;
 470   1              mtime_buf[1]=mint_count/10+0x30;
 471   1              mtime_buf[4]=hour_count/100+0x30;
 472   1              i=hour_count%100;
 473   1              mtime_buf[2]=i%10+0x30;
 474   1              mtime_buf[3]=i/10+0x30;
 475   1      }
 476          
 477          
 478          
 479          
 480          
 481          
 482          
 483          
 484          
 485          
 486          
 487          
 488          
C51 COMPILER V7.06   TEST_01                                                               11/22/2007 09:09:04 PAGE 9   

 489          
 490          
 491          
 492          
 493          
 494          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    669    ----
   CONSTANT SIZE    =    281    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13      16
   IDATA SIZE       =     80    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  1 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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