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

📄 lcd501.lst

📁 凌阳SPDA1000 MP3开发资料
💻 LST
📖 第 1 页 / 共 4 页
字号:
 234   2                              write_SPLC501CD(0);//whne the bitrate is 0,show space.
 235   2                      }
 236   2      */
 237   2                      SPLC501_Disp_LittleChar(0);
 238   2              }else{
 239   2                      SPLC501_Disp_LittleChar(Data[0]);
 240   2                      SPLC501_Disp_LittleChar(Data[1]);
C51 COMPILER V7.20   LCD501                                                                07/12/2006 09:59:42 PAGE 5   

 241   2                      SPLC501_Disp_LittleChar(Data[2]);
 242   2              #if 0
                              #if (Glass_ColumnNum==132)
                              SPLC501_Disp_LittleString(3,34+2,Data,3);
                              #else
                              SPLC501_Disp_LittleString(3,34,Data,3);
                              #endif
                      #endif
 249   2      }
 250   1                      for(i=0;i<16;i++)
 251   1                      {
 252   2                              write_SPLC501CD(BMP_KBPS[i]);
 253   2                      }
 254   1                      write_SPLC501CD(0);
 255   1      }
 256          //======================================================================================================
 257          void LCD501_HEX_BCD(unsigned int num,U8 *Hi,U8 *MidH, U8 *MidL, U8 *Low)
 258          {
 259   1              *Hi=num/1000;
 260   1              *MidH=(num-((unsigned int)*Hi*1000) )/100;
 261   1              *MidL=(num- ((unsigned int)*Hi*1000) - ((unsigned int)*MidH*100) )/10;
 262   1              *Low=num%10;
 263   1              if(*Hi>10){ 
 264   2                      *Hi=*Hi%10;
 265   2              }
 266   1      }
 267          //======================================================================================================
 268          void LCD501_Disp_FileIndex_InDIR(unsigned int FileIndex,unsigned int DirTotalFile)
 269          {
 270   1              U8 Data[5];
 271   1              LCD501_HEX_BCD(FileIndex,(Data+2),(Data+2),(Data),(Data+1));
 272   1              LCD501_HEX_BCD(DirTotalFile,(Data+2),(Data+2),(Data+3),(Data+4));
 273   1              Data[2]=11;            //11 offset means '/'
 274   1              #if (Glass_ColumnNum==132)
 275   1              SPLC501_Disp_TrackOrTime(Data,102);
 276   1              #else
                      SPLC501_Disp_TrackOrTime(Data,98);
                      #endif
 279   1      }
 280          //======================================================================================================
 281          void LCD501_Disp_HHMMSS(unsigned int LCD_SecondNum)//show the time
 282          {
 283   1              U8 Time[5];
 284   1              Time[1]=(U8)(LCD_SecondNum/60);
 285   1              Time[0]=(Time[1]/10)%10;Time[1]=Time[1]%10;
 286   1      
 287   1              Time[4]=LCD_SecondNum%60;
 288   1              Time[3]=Time[4]/10;Time[4]=Time[4]%10;
 289   1      
 290   1              Time[2]=10; //10 offset means ':'
 291   1              #if (Glass_ColumnNum==132)
 292   1              SPLC501_Disp_TrackOrTime(Time,74);
 293   1              #else
                      SPLC501_Disp_TrackOrTime(Time,70);
                      #endif
 296   1      }
 297          //======================================================================================================
 298          void LCD501_Playing_Pause_Stop_Record(U8 XState)
 299          {
 300   1      
 301   1              SPLC501_Playing_Pause_Stop_Record(XState);
 302   1      }
C51 COMPILER V7.20   LCD501                                                                07/12/2006 09:59:42 PAGE 6   

 303          //======================================================================================================
 304          void LCD501_Disp_NoFile(U8 selectDir)
 305          {
 306   1              SPLC501_Disp_NoFile(selectDir);
 307   1      }
 308          //======================================================================================================
 309          U8 LCD501_Disp_FileName(U8 *DataBuf, U8 nByte,U8 DispOnOff)
 310          {
 311   1              U8 i,Column;
 312   1              U8 Tmp_DataBuf[24];
 313   1              U8 Sts;
 314   1              //L2_MCUClock_Select(L2K_MCU06to24);
 315   1      //  USER_MCUClock_Select(0);
 316   1              i=0;
 317   1              Column=7;
 318   1              while(i<nByte)
 319   1              {
 320   2                      if(DispOnOff)
 321   2                      {
 322   3                      
 323   3                              X_HZK_Get_BMP(*(DataBuf+i),*(DataBuf+i+1),Tmp_DataBuf);
 324   3                      }
 325   2                      //      printf("data1=%bx\n",*(DataBuf+i));
 326   2                      //      printf("data2=%bx\n",(DataBuf+i+1));
 327   2                      if( ((*(DataBuf+i))&0x80) && (G_CurrentHZK!=Language_German))
 328   2                      {//Chinese characters
 329   3                              if((Column+12)>Glass_ColumnNum)
 330   3                              {
 331   4                                      Sts=1;
 332   4                                      goto DispOver;
 333   4                              }
 334   3                              if(DispOnOff)
 335   3                              {
 336   4                                      LCD_disp_HZKCharBMP(1,Column,Tmp_DataBuf,IsWord,0);
 337   4                              }
 338   3                              Column+=12;
 339   3                              i+=2;
 340   3                      }else{
 341   3                              if((Column+8)>Glass_ColumnNum)
 342   3                              {
 343   4                                      Sts=1;
 344   4                                      goto DispOver;
 345   4                              }
 346   3                              if(DispOnOff)
 347   3                              {
 348   4                                      LCD_disp_HZKCharBMP(1,Column,Tmp_DataBuf,IsChar,0);
 349   4                              }
 350   3                              Column+=8;                      
 351   3                              i++;
 352   3                      }
 353   2              }
 354   1              Sts=0;
 355   1      DispOver:
 356   1              while(Column<Glass_ColumnNum && DispOnOff)//没显示的地方补零
 357   1              {
 358   2                      SPLC501_Set_PageNColumn_Address(1,Column);
 359   2                      write_SPLC501CD(0x00);
 360   2                      SPLC501_Set_PageNColumn_Address(2,Column);
 361   2                      write_SPLC501CD(0x00);
 362   2                      Column++;
 363   2      /*
 364   2                      for(i=0;i<24;i++)
C51 COMPILER V7.20   LCD501                                                                07/12/2006 09:59:42 PAGE 7   

 365   2                      {
 366   2                              Tmp_DataBuf[i]=0x00;
 367   2                      }
 368   2                      if(DispOnOff)
 369   2                      {
 370   2                              LCD_disp_HZKCharBMP(1,Column,Tmp_DataBuf,IsWord);
 371   2                      }
 372   2                      Column+=12;
 373   2      */
 374   2              }
 375   1              if(Sts)
 376   1              {
 377   2                      if( ((*DataBuf)&0x80) && (G_CurrentHZK!=Language_German))
 378   2                      {
 379   3                              gw_DispFileName_ByteOffset++;
 380   3                      }
 381   2                      gw_DispFileName_ByteOffset++;
 382   2              }else{
 383   2                      gw_DispFileName_ByteOffset=0;
 384   2              }
 385   1              //L2_MCUClock_Select(L2K_MCU24to06);
 386   1      //printf("Sts=%bu\n",Sts);
 387   1              return Sts;//overstep display area
 388   1      }
 389          //======================================================================================================
 390          void LCD501_Disp_StorageError(U8 ErrNo)
 391          {
 392   1      
 393   1              U8  XDOSERROR[] = {'D','O','S',' ','E','R','R','O','R',' ',' '};
 394   1              U8 code XPLSFORMAT[]={'P','L','E','A','S','E',' ','F','O','R','M','A','T'};
 395   1              LCD501_Clear_ALL();
 396   1          //printf("doss error = %bx\n",ErrNo);
 397   1          XDOSERROR[10] = (ErrNo >> 4) ;
 398   1          XDOSERROR[11] = (ErrNo & 0x0f) ;
 399   1              SPLC501_Disp_LittleString(1,20,XDOSERROR,12);
 400   1              SPLC501_Disp_LittleString(2,10,XPLSFORMAT,13);
 401   1      }
 402          //======================================================================================================
 403          void LCD501_Disp_TotalMemory()
 404          {
 405   1          U8 i         ;
 406   1              U8 Data[7];
 407   1          U32 tdw_CARD_TotalSizeMB;
 408   1              U8 code *TotalMemory[]={"Total Memory:","总容量:",};
 409   1      
 410   1          tdw_CARD_TotalSizeMB=USER_Get_SYSInformation(1);//lyh add
 411   1      //      printf("tdw_CARD_TotalSizeMB = %lx\n",tdw_CARD_TotalSizeMB);//lixt memory
 412   1              LCD501_Clear_ALL();
 413   1              LCD501_HEX_BCD(tdw_CARD_TotalSizeMB,(Data+1),(Data+2),(Data+3),(Data+4));//modified by lyh!
 414   1              //Data[3]='.';Data[4]='0';Data[5]='M';Data[6]='\0';
 415   1          Data[5]='M';Data[6]='\0';
 416   1              Data[0]=' ';
 417   1          for( i =0; i <4;i++)
 418   1           if (Data[i] == 0) Data[i] =' ';
 419   1         
 420   1      
 421   1      #if (Glass_ColumnNum==132)
 422   1              SPLC501_Printf(0x00,0x07,TotalMemory[gc_MenuHZK]);
 423   1              SPLC501_Printf(0x02,50,Data);
 424   1      #else
                      SPLC501_Printf(0x00,0x00,TotalMemory[gc_MenuHZK]);
                      SPLC501_Printf(0x02,50,Data);
C51 COMPILER V7.20   LCD501                                                                07/12/2006 09:59:42 PAGE 8   

              #endif
 428   1      }
 429          //======================================================================================================
 430          void LCD501_Disp_FreeMemory()
 431          {  
 432   1              U8 Data[8];
 433   1              U8 code *FreeMemory[]={"Free Memory:","剩余容量:",};
 434   1      
 435   1              LCD501_Clear_ALL();
 436   1              if(/*_G_FAT32Error||*/gc_DOS_ErrorStatus)//xyq modify 040614
 437   1              {
 438   2                      gdw_Dos_FreeMemorySizeMB=0;
 439   2              }  
 440   1              LCD501_HEX_BCD(gdw_Dos_FreeMemorySizeMB,(Data),(Data+1),(Data+2),(Data+4));
 441   1              //Data[0]=gdw_Dos_FreeMemorySizeMB/1000;
 442   1              if(Data[0]==0)
 443   1              {
 444   2                      Data[0]=' ';
 445   2                      if(Data[1]==0) Data[1]=' ';
 446   2              }
 447   1              Data[3]='.';
 448   1              Data[5]='M';
 449   1              Data[6]='\0';
 450   1      //printf("Data[0]=%bu\n",Data[0]);
 451   1      //printf("Data[1]=%bu\n",Data[1]);
 452   1      //printf("Data[2]=%bu\n",Data[2]);
 453   1      //printf("Data[3]=%bu\n",Data[3]);
 454   1      //printf("Data[4]=%bu\n",Data[4]);
 455   1      
 456   1      /*
 457   1          if(Data[0] >= 10)
 458   1          {
 459   1               for ( i=0;i<6;i++)
 460   1                  Data[7-i]=Data[6-i];
 461   1           Data[1] = Data[0] %10;    
 462   1           Data[0] = Data[0] /10;     
 463   1          }
 464   1          for ( i=0;i<7;i++)
 465   1                      if(Data[i]==0)Data[i]='0';
 466   1      */
 467   1              if(Data[1]==0) Data[1]='0';
 468   1              if(Data[2]==0) Data[2]='0';
 469   1              if(Data[4]==0) Data[3]='M';
 470   1      #if (Glass_ColumnNum==132)
 471   1              SPLC501_Printf(0x00,0x07,FreeMemory[gc_MenuHZK]);
 472   1              SPLC501_Printf(0x02,50,Data);
 473   1      #else
                      SPLC501_Printf(0x00,0x00,FreeMemory[gc_MenuHZK]);

⌨️ 快捷键说明

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