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

📄 display.c

📁 MP3播放器源代码, VS1003B
💻 C
字号:
/** \file display.c * Functions for high level display. */#include "display.h"#include "lcd.h"#include "board.h"#include "string.h"volatile xdata char displayPosition;xdata char displayTitle[16];xdata char displayText[DS_TEXTLENGTH+1];xdata char displayLength;xdata char displayStyle;xdata char displayValue; /** Reset display and print initial values */char InitDisplay(char style, char *title, char *text, int value){  LcdReset();  //Init display title array  for(displayPosition=0; displayPosition<8; displayPosition++){    displayTitle[displayPosition]=' ';  }  displayTitle[8]=0; //ending zero  strcpy(displayTitle, title);    displayLength = strlen(text);  //Init display text array  //Clear display text array to spaces  for(displayPosition=0; displayPosition<DS_TEXTLENGTH; displayPosition++){    displayText[displayPosition]=' ';  }  displayText[DS_TEXTLENGTH] = 0; //ending zero  strcpy(displayText, text);  displayPosition = 0;  displayStyle = style;  displayValue = value;  LcdPutString(displayTitle);  LcdLocateLine2();  LcdPutString(displayText);  UpdateDisplay();  return 0;}/** Paint display */void UpdateDisplay(){  signed char temp;  LcdLocateHome();  LcdPutChar(displayTitle[0]);  LcdPutChar(displayTitle[1]);  LcdPutChar(displayTitle[2]);  LcdPutChar(displayTitle[3]);  LcdPutChar(displayTitle[4]);  LcdPutChar(displayTitle[5]);  LcdPutChar(displayTitle[6]);  LcdPutChar(displayTitle[7]);  LcdLocateLine2();    if (displayStyle == DS_STATIC){    for (temp=0; temp<8; temp++){      LcdPutChar(displayText[temp]);    }  }  if (displayStyle == DS_TEXT){    for (temp=displayPosition; temp<displayPosition + 8; temp++){      if (temp<0){	LcdPutChar(' ');      }else{	if (displayText[temp]){     	  LcdPutChar(displayText[temp]);      	}else{	  LcdPutChar(' ');	}      }          }  }  if (displayStyle == DS_NUMERIC){    LcdPutUInt(displayValue);    LcdPutConstantString("        ");  }  if (displayStyle == DS_NO_YES){    LcdPutConstantString(" No<>Yes");  }  if (displayStyle == DS_ARROWS){    LcdPutConstantString(" <-   ->");  }  if (displayStyle == DS_PERCENTAGE){    unsigned char majorp, minorp;    if (displayValue>100){      displayValue=100;    }        majorp = (displayValue-4) / 12;    minorp = ((displayValue-4) % 12) >> 1;    for (temp=0; temp<8; temp++){      if (majorp>temp){	LcdPutChar(4);      }else{	if (majorp<temp){	  LcdPutChar(' ');	}else{	  switch(minorp){	  case 0:	    LcdPutChar(' ');	    break;	  case 1:	    LcdPutChar(0);	    break;	  case 2:	    LcdPutChar(1);	    break;	  case 3:	    LcdPutChar(2);	    break;	  case 4:	    LcdPutChar(3);	    break;	  case 5:	    LcdPutChar(4);	    break;	  }//switch	}      }    }             //LcdPutUInt(displayValue);    //LcdPutConstantString("%       ");  }  if (displayStyle==DS_RAWTEXT){    LcdPutChar(displayTitle[8]);    LcdPutChar(displayTitle[9]);    LcdPutChar(displayTitle[10]);    LcdPutChar(displayTitle[11]);    LcdPutChar(displayTitle[12]);    LcdPutChar(displayTitle[13]);    LcdPutChar(displayTitle[14]);    LcdPutChar(displayTitle[15]);  }}

⌨️ 快捷键说明

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