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

📄 jzj.cpp

📁 许继的2812开发全套驱动程序,很全很实用的.rar
💻 CPP
📖 第 1 页 / 共 3 页
字号:
}
//---------------- 将一字符串转换为NameText型------------------
void HexTO_String(char * String,uINT Num)
{
  if((Num>=100)&&(Num<=999))
  {
    String[0]=Num/100+0x30;
    String[1]=(Num%100)/10+0x30;
    String[2]=Num%10+0x30;
    String[3]=0x00;
  }
  else if((Num>=10)&&(Num<=99))
  {
    String[0]=Num/10+0x30;
    String[1]=Num%10+0x30;
    String[2]=0x00;
  }
  else if(Num<=9)
  {
    String[0]=Num/10+0x30;
    String[1]=0x00;
  }
}
//--------------开始菜单变为返回菜单---------------
void DisPlay_StartView(uCHAR Is_Start)//1为返回, 0为开始
{
  int midx,midy,Line=0,i=0,j=0;
  midx=getmaxx()/2;
  midy=getmaxy()/2;
  unsigned char TempChar=0x00;
  unsigned char mask[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
  int StartX=186;
  int StartY=261;
  int DISSCALE=1;
  for(int k=0;k<24;k++)

  {
    for(int Line=0;Line<5;Line++)
    {
      TempChar=START[Line+k*5];
      for(i=0;i<8;i++)
      {
	    if(TempChar&mask[i])
	    {
	      for(j=0;j<1;j++)
	      {
		     putpixel(StartX+i+Line*8,StartY+k,63);
//		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,63);
  //		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,63);
	      }
	    }
	    else
	    {
	      for(j=0;j<DISSCALE;j++)
	      {
		  putpixel(StartX+i+Line*8,StartY+k,0);
//		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);
    //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,0);
      //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);

	      }
	    }
      }
    }
  }

  unsigned char String[32]="开始";
  Display_String(192,264,String,0);

}
//------------------画每个页面边框-------------------
void Draw_Frame(uCHAR Type)//0 为普通边框  1为其他边框
{
  unsigned char String[32];
  rectangle(0,0,240,320);
  line(0, 40, 240, 40);
  line(0, 296, 240, 296);

  line(64, 0, 64, 40);
  line(150, 0, 150, 40);
}
//------------------显示XJ标签-------------------
void Display_XJMark()
{
  int midx,midy,Line=0,i=0,j=0;
  midx=getmaxx()/2;
  midy=getmaxy()/2;
  unsigned char TempChar=0x00;
  unsigned char mask[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
  int StartX=4;
  int StartY=4;
  int DISSCALE=1;
  for(int k=0;k<32;k++)

  {
    for(int Line=0;Line<7;Line++)
    {
      TempChar=XJCODE[Line+k*7];
      for(i=0;i<8;i++)
      {
	    if(TempChar&mask[i])
	    {
	      for(j=0;j<1;j++)
	      {
		     putpixel(StartX+i+Line*8,StartY+k,63);
//		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,63);
  //		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,63);
	      }
	    }
	    else
	    {
	      for(j=0;j<DISSCALE;j++)
	      {
		  putpixel(StartX+i+Line*8,StartY+k,0);
//		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);
    //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,0);
      //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);

	      }
	    }
      }
    }
  }

}
//------------------显示XJ标签-------------------
void Display_TopMark()
{
  int midx,midy,Line=0,i=0,j=0;
  midx=getmaxx()/2;
  midy=getmaxy()/2;
  unsigned char TempChar=0x00;
  unsigned char mask[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
  int StartX=4;
  int StartY=44;
  int DISSCALE=1;
  for(int k=0;k<24;k++)

  {
    for(int Line=0;Line<9;Line++)
    {
      TempChar=TOP[Line+k*9];
      for(i=0;i<8;i++)
      {
	    if(TempChar&mask[i])
	    {
	      for(j=0;j<1;j++)
	      {
		     putpixel(StartX+i+Line*8,StartY+k,63);
//		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,63);
  //		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,63);
	      }
	    }
	    else
	    {
	      for(j=0;j<DISSCALE;j++)
	      {
		  putpixel(StartX+i+Line*8,StartY+k,0);
//		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);
    //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,0);
      //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);

	      }
	    }
      }
    }
  }
  for(int k=0;k<24;k++)

  {
    for(int Line=0;Line<9;Line++)
    {
      TempChar=TOP[Line+k*9];
      for(i=0;i<8;i++)
      {
	    if(TempChar&mask[i])
	    {
	      for(j=0;j<1;j++)
	      {
		     putpixel(StartX+72+i+Line*8,StartY+k,63);
//		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,63);
  //		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,63);
	      }
	    }
	    else
	    {
	      for(j=0;j<DISSCALE;j++)
	      {
		  putpixel(StartX+72+i+Line*8,StartY+k,0);
//		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);
    //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,0);
      //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);

	      }
	    }
      }
    }
  }

  for(int k=0;k<24;k++)

  {
    for(int Line=0;Line<9;Line++)
    {
      TempChar=TOP[Line+k*9];
      for(i=0;i<8;i++)
      {
	    if(TempChar&mask[i])
	    {
	      for(j=0;j<1;j++)
	      {
		     putpixel(StartX+144+i+Line*8,StartY+k,63);
//		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,63);
  //		     putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,63);
	      }
	    }
	    else
	    {
	      for(j=0;j<DISSCALE;j++)
	      {
		  putpixel(StartX+144+i+Line*8,StartY+k,0);
//		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);
    //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE,0);
      //		  putpixel(midx-320*DISSCALE+StartX*DISSCALE+i*DISSCALE+j+k*8,midy-240*DISSCALE+StartY*DISSCALE+Line*DISSCALE+j,0);

	      }
	    }
      }
    }
  }

}
void ChangeNewTimeToStr(char * TimeStr,struct time CTime,unsigned char NeedMSecond)
{
   char Temp[5];
   strcpy(TimeStr," ");
   itoa(CTime.ti_hour,Temp,10);
   if(CTime.ti_hour<10)
   {
      strcat(TimeStr,"0");
      strcat(TimeStr,Temp);
   }
   else strcat(TimeStr,Temp);
   strcat(TimeStr,":");
   itoa(CTime.ti_min,Temp,10);
   if(CTime.ti_min<10) strcat(TimeStr,"0");
   strcat(TimeStr,Temp);
   strcat(TimeStr,":");
   itoa(CTime.ti_sec,Temp,10);
   if(CTime.ti_sec<10) strcat(TimeStr,"0");
   strcat(TimeStr,Temp);
   strcat(TimeStr," ");
   if(NeedMSecond)
   {
      int MSecond;
      strcat(TimeStr," ");
      MSecond=CTime.ti_hund*10;
      itoa(MSecond,Temp,10);
      strcat(TimeStr,Temp);
      strcat(TimeStr,"ms");
   }
}
//将struct date结构的时间转换为字符串2000/12/12
void ChangeDateToStr(char * DateStr,struct date CDate)
{
   char Temp[5];
   itoa(CDate.da_year,Temp,10);
   strcpy(DateStr,Temp);
   strcat(DateStr,"-");
   itoa(CDate.da_mon,Temp,10);
   if(CDate.da_mon<10) strcat(DateStr,"0");
   strcat(DateStr,Temp);
   strcat(DateStr,"-");
   itoa(CDate.da_day,Temp,10);
   if(CDate.da_day<10) strcat(DateStr,"0");
   strcat(DateStr,Temp);
}
//------------------显示系统时间-------------------
DateTime GetCurDateTime()
{
   DateTime ReturnTime;
   getdate(&(ReturnTime.MyDate));
   gettime(&(ReturnTime.MyTime));
   return ReturnTime;
}

void Display_DateTime()
{
  char String[32];
  int i=0;
 // struct DATETIME New_Time=Get_DateTime();//当前采样的时间
   DateTime CurDateTime;
   CurDateTime=GetCurDateTime();//得到当前时间
  // getdate(&(ReturnTime.MyDate));
  // gettime(&(ReturnTime.MyTime));
   ChangeDateToStr(String,CurDateTime.MyDate);
   for(i=0;i<strlen(String);i++)
   {
     Display8Eng(156+8*i,8,String[i],0);
   }
   ChangeNewTimeToStr(String,CurDateTime.MyTime,0);
 //  ValueText=GetTextFromStr(String);
   for(i=0;i<strlen(String);i++)
   {
     Display8Eng(156+8*i,24,String[i],0);
   }
 // ChangeDateTimeToStr(String,New_Time);
 // Display_String(148,4,String,0);

}
//------------------显示电池充电状态-------------------
void Display_WorkState()
{
  char String[32]; 
  char TempString[32];
  uINT  SetTimeHour=0;
  uINT  SetTimeMinute=0;
  uCHAR TempNo;
  if(Battery_Count==1)
  {
    TempNo=0; 
  }  
  else
  {
    TempNo=Current_DisPlayNo;
  }   
  if(Work_Mode[TempNo]==0)
  {
    strcpy(String,"浮充");
    Display_String(88,8,String,0);
  }
  else  if(Work_Mode[TempNo]==1)
  {
    strcpy(String,"均充");
    SetTimeHour=(int)(Equal_Timer[TempNo]/3600);
    if(SetTimeHour>24) SetTimeHour=24;
    GetString_FromInt(SetTimeHour,TempString);
    strcat(String,TempString);
    SetTimeMinute=(((int)(Equal_Timer[TempNo]))%3600)/60;
    if(SetTimeMinute>=59) SetTimeMinute=59;
    GetString_FromInt(SetTimeMinute,String);
    strcat(String,TempString);
    Display_String(80,8,String,0);
  }
  else
  {
    strcpy(String,"放电");
    Display_String(88,8,String,0);
  }
}
//---------------------显示设置菜单的图标-----------------------
void Display_SetBitmap()
{

}
//--------------------显示查看菜单的图标------------------------
void Display_ViewBitmap()
{
   // DisPlay_StartView(0);
}
//-----------------------显示光标------------------------------
void Display_Cursor(uCHAR Is_Visible,uINT StartX,uINT StartY)
{
  // if(Is_Visible)
   //  SetCursor(StartX,StartY,1);
   //else
   //  SetCursor(StartX,StartY,0);
}
//------------------------------------------------------------
void Display_KeyFrame(uCHAR Key)
{

}
//----------------------------用于报警名称读取----------------
void GetString_FromIndex(uINT Index,char * TempString)
{
  switch(Index)
  {
    case 0:
    {
       strcpy(TempString,"定界符大分定界符大");   
       break;
    }    
  }
}

⌨️ 快捷键说明

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