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

📄 lcd.lst

📁 c8051f020+CH375读写U盘文件的程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 428          ------图形文本方式变换子程序-----------------------------------------------
 429          ***************************************************************************
 430          说明:入口参数:液晶显示方式0:文本;1:图形
 431                    出口参数:无
 432          ***************************************************************************/
 433          /*void LCD_ChangMode(unsigned char mode)
 434                  {
 435                  switch(mode)
 436                          {
 437                          case 0:
 438                                  {
 439                                  FUNCTION_BASIC();
 440                                  LCD_DISP_ON();
 441                                  break;
 442                                  }
 443                          case 1:
 444                                  {
 445                                  LCD_CURSOR_OFF();
 446                                  FUNCTION_EXTEND();
 447                                  LCD_GRAPH_CLEAR();
 448                                  LCD_GRAPH_ON();
 449                                  
 450                                  break;
 451                                  }
 452                          default:
 453                                  break;
 454                          }
 455             }
 456                     */
 457          /************************************************************************
 458          -------图形方式下坐标变换子程序------------------------------------------
 459          *************************************************************************
 460          说明:入口参数:坐标,坐标
 461                    出口参数:是否成功
 462          ************************************************************************/  
 463          /*unsigned char LCD_CoorShift(unsigned char x,unsigned char y)
 464                  {
 465                  x=x-1;y=y-1;
 466                  x=x>>4;
 467                  if(x<0||x>8)    return  ERR;
 468                  if(y>=0&&y<32)
 469                                  {
 470                                  LCD_WriteCommand(0x80+y);
 471                                  LCD_WriteCommand(0x80+x);
 472                                  }
 473                  else
 474                                  {
 475                                  LCD_WriteCommand(0x80+y-32);
 476                                  LCD_WriteCommand(0x80+x+8);
 477                                  }
 478                  }
 479          
 480          code unsigned short Position[]={0x8000,0x4000,0x2000,0x1000,
 481                                                                     0x0800,0x0400,0x0200,0x0100,
 482                                                                     0x0080,0x0040,0x0020,0x0010,
 483                                                                     0x0008,0x0004,0x0002,0x0001
 484                                                                     };                                                             */
 485          /************************************************************************
 486          -------图形方式下画点子程序------------------------------------------
 487          *************************************************************************
 488          说明:入口参数:坐标,坐标
 489                    出口参数:无
C51 COMPILER V8.02   LCD                                                                   07/21/2008 09:40:00 PAGE 9   

 490          ************************************************************************/ 
 491          /*void LCD_PutPiex(unsigned char x,unsigned char y)
 492                  {unsigned short temp;
 493                  unsigned char   temp_H,temp_L;
 494                  LCD_CoorShift(x,y);
 495                  x=x-1;
 496                  x=x%16;
 497                  temp=Position[x];
 498                  temp_L=temp&0x00ff;
 499                  temp_H=(temp>>8)&0x00ff;
 500          //      temp_H|=LCD_ReadData();
 501          //      temp_L|=LCD_ReadData();
 502                  LCD_WriteData(temp_H);
 503                  LCD_WriteData(temp_L);
 504                  }
 505          
 506          
 507            */
 508          
 509          
 510          
 511          /************************************************************************
 512          -------图形方式下打印BMP图画子程序------------------------------------------
 513          *************************************************************************
 514          说明:入口参数:图画的点数组指针
 515                    出口参数:无
 516          ************************************************************************/ 
 517          
 518          /*void LCD_PutBMP(unsigned char *ptr)
 519                  {unsigned char i,j;
 520                  for(i=0;i<0x20;i++)
 521                  {for(j=0;j<8;j++)
 522                                  {
 523                                  LCD_WriteCommand(0x80+i);
 524                                  LCD_WriteCommand(0x80+j);
 525                                  LCD_WriteData(*ptr);
 526                                  ptr++;
 527                                  LCD_WriteData(*ptr);
 528                                  ptr++;
 529                                  }
 530                          }
 531                  for(i=0;i<0x20;i++)
 532                          {for(j=0;j<8;j++)
 533                                  {
 534                                  LCD_WriteCommand(0x80+i);
 535                                  LCD_WriteCommand(0x80+j+8);
 536                                  LCD_WriteData(*ptr++);
 537                                  LCD_WriteData(*ptr++);
 538                             }
 539                          }
 540             }               */
 541          
 542          /************************************************************************
 543          -------图形方式下WINDOWS窗口子程序---------------------------------------
 544          *************************************************************************
 545          说明:入口参数:TITLE OF THE WINDOWS
 546                    出口参数:无
 547          ************************************************************************/ 
 548          /*void WindowsFront(unsigned char *ptr)
 549                  {
 550                  LCD_CLEAR();
 551                  Delay1ms(100);
C51 COMPILER V8.02   LCD                                                                   07/21/2008 09:40:00 PAGE 10  

 552                  LCD_ChangMode(1);
 553                  LCD_PutBMP(WindowsFronts);
 554                  Delay1ms(100);
 555                  LCD_ChangMode(0);
 556                  LCD_CURSOR_OFF();
 557                  LCD_Printf(1,1,ptr);
 558                  }        */
 559                  
 560          
 561          /***********************************************************************
 562          ------变量值显示函数-------------------------
 563          说明:将变量的值显示到指定的位置
 564                    入口参数:显示起始位置,要显示的变量
 565                    出口参数:无
 566          ***********************************************************************/
 567          /*void  LCD_Put_Varib(unsigned char x,unsigned char y, float  variable)
 568                  {
 569                  unsigned char i;
 570                  unsigned char dispbuf[7]={0};
 571          
 572                  LCD_Goto ( (x-1), y );
 573          
 574                  if(variable<0)
 575                          {
 576                                  variable=-variable;//  print "-"
 577                                  LCD_WriteData(45);
 578                           }
 579                  LCD_Goto(x,y);
 580          
 581                  dispbuf[0]=variable/10000;                                                                                                                      // divide the data into bit;
 582                  dispbuf[1]=(variable-dispbuf[0]*10000)/1000;
 583                  dispbuf[2]=(variable-dispbuf[0]*10000-dispbuf[1]*1000)/100;
 584                  dispbuf[3]=(variable-dispbuf[0]*10000-dispbuf[1]*1000-dispbuf[2]*100)/10;
 585                  dispbuf[4]=variable-dispbuf[0]*10000-dispbuf[1]*1000-dispbuf[2]*100-dispbuf[3]*10;
 586                  dispbuf[5]=(variable-dispbuf[0]*10000-dispbuf[1]*1000-dispbuf[2]*100-dispbuf[3]*10-dispbuf[4])/0.1;
 587                  dispbuf[6]=(variable-dispbuf[0]*10000-dispbuf[1]*1000-dispbuf[2]*100-dispbuf[3]*10-dispbuf[4]-dispbuf[5]*
             -0.1)/0.01;
 588                  
 589                  
 590                  for(i=0;i<6;i++)                                        // 找出第一个不是0的位数;
 591                          {
 592                                  if(dispbuf[i]==0)
 593                                          continue;
 594                                  else
 595                                          break;
 596                          }
 597                  for(;i<7;i++)
 598                  {
 599                          
 600                          if(dispbuf[i]!=0)
 601                          {
 602                                  dispbuf[i]=tbl[ dispbuf[i] ];
 603                                  LCD_Goto(x, (y+i ));
 604                                  LCD_WriteData(dispbuf[i]);
 605                          }               
 606                  }
 607           }        */
 608          
 609          /***************************************************/
 610          //---------------清屏子函数--------------------------
 611          //入口参数:无
 612          //出口参数:无
C51 COMPILER V8.02   LCD                                                                   07/21/2008 09:40:00 PAGE 11  

 613          /***************************************************/
 614          void LCD_Clear (void)
 615                  {
 616   1              LCD_CLEAR();
 617   1              Delay1ms(200);
 618   1              }       
 619          /***************************************************/
 620          //---------------关闭光标函数--------------------------
 621          //入口参数:无
 622          //出口参数:无
 623          /***************************************************/
 624          void LCD_CursorOff(void)
 625                  {
 626   1              LCD_CURSOR_OFF();
 627   1              }
 628          
 629                  
 630          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    323    ----
   CONSTANT SIZE    =     10    ----
   XDATA SIZE       =   ----       3
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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