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

📄 data_function.h

📁 msp430和nrf905的例子,联系qqliuyong007@163.com
💻 H
📖 第 1 页 / 共 2 页
字号:

/*-----------数据显示函数-----------*/
void Display_unit(unsigned char unit[8],unsigned char n,unsigned char m)
{
 DisplayChar_new(8,12,unit,n);
 DisplayChar_new(13,12,unit,n);
 DisplayChar_new(18,12,unit,n);
 if(m==3)
   return;
 DisplayChar_new(23,12,unit,n);
 }
 void Display_phase(unsigned char phase[8],unsigned char n)
 {
 DisplayChar_new(7,12,"PHASE A",7);
 DisplayChar_new(12,12,"PHASE B",7);
 DisplayChar_new(17,12,"PHASE C",7);
 if(phase[0]== 0 )
   return;
 DisplayChar_new(22,12,phase,n);
 }
 
/***************display dianliu*********************/
void Display_DianLiu(void)
{
 GCDisplay(24,1,CTable8);
 GCDisplay(24,3,CTable31);
 GCDisplay(24,5,CTable46);
 Display_phase("PHASE N",7);
 switch(flag.setup)
 {
 case 0:
 {
 
 DisplayChar_new(4,8,"CUR",3);
 Data_disply(48,2,SPI.I[0],2);
 Data_disply(88,2,SPI.I[1],2);
 Data_disply(128,2,SPI.I[2],2);
 Data_disply(168,2,SPI.I[3],2);
 
  Display_unit("A",1,4);
 break;
 }
case 1:
 {
 DisplayChar_new(4,8,"MAX",3);
 Data_disply(48,2,myMAXMIN.imaxmin[0][0],2);
 Data_disply(88,2,myMAXMIN.imaxmin[1][0],2);
 Data_disply(128,2,myMAXMIN.imaxmin[2][0],2);
 Data_disply(168,2,myMAXMIN.imaxmin[3][0],2);
  Display_unit("A",1,4);
  //显示最大值时间
 DisplayChar_new(8,14,"attime",6);
 DisplayChar_new(13,14,"attime",6);
 DisplayChar_new(18,14,"attime",6);
 DisplayChar_new(23,14,"attime",6);
 break;
 }
case 2:
 {
 DisplayChar_new(4,8,"MIN",3);
 Data_disply(48,2,myMAXMIN.imaxmin[0][1],2);
 Data_disply(88,2,myMAXMIN.imaxmin[1][1],2);
 Data_disply(128,2,myMAXMIN.imaxmin[2][1],2);
 Data_disply(168,2,myMAXMIN.imaxmin[3][1],2);
  Display_unit("A",1,4);
   //显示最小值时间
 DisplayChar_new(8,14,"attime",6);
 DisplayChar_new(13,14,"attime",6);
 DisplayChar_new(18,14,"attime",6);
 DisplayChar_new(23,14,"attime",6);
 break;
 }
 case 3:
 {
 DisplayChar_new(4,8,"THD",3);
 Data_disply(48,2,SPI.iTHD[0],2);
 Data_disply(88,2,SPI.iTHD[1],2);
 Data_disply(128,2,SPI.iTHD[2],2);
 Data_disply(168,2,SPI.iTHD[3],2);
 
 DisplayChar_new(8,12,"%THD I",6);
 DisplayChar_new(13,12,"%THD I",6);
 DisplayChar_new(18,12,"%THD I",6);
 DisplayChar_new(23,12,"%THD I",6);
 break;
 }
 default:flag.setup=0;break;
 }
//GCDisplay(8,1,CTable0);
//RRWL(unsigned char row ,unsigned char col,unsigned int wordcode)
}
/*****************Display_XDianYa****************/
void Display_XDianYa(void)
{
 GCDisplay(24,1,CTable18);
 GCDisplay(24,3,CTable8);
 GCDisplay(24,5,CTable32);
 GCDisplay(24,7,CTable46);

 Display_phase(0,0);
      
  switch(flag.setup)
  {
   case 0:
    {    
     DisplayChar_new(4,9,"CUR",3); 
     Data_disply(48,2,SPI.U[0],1);
     Data_disply(88,2,SPI.U[1],1);
     Data_disply(128,2,SPI.U[2],1);
     //Data_disply(168,5,SPI.XU[0],1);//加上求电流平均值
     Display_unit("V",1,3);
     break;
    }
   case 1:
    {
     DisplayChar_new(4,9,"MAX",3);
     Data_disply(48,2,myMAXMIN.umaxmin[0][0],1);
     Data_disply(88,2,myMAXMIN.umaxmin[1][0],1);
     Data_disply(128,2,myMAXMIN.umaxmin[2][0],1);
     Display_unit("V",1,3);
     //显示最大值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     //DisplayChar_new(23,14,"attime",6);
     break;
    }
   case 2:
    {
     DisplayChar_new(4,9,"MiN",3);
     Data_disply(48,2,myMAXMIN.umaxmin[0][1],1);
     Data_disply(88,2,myMAXMIN.umaxmin[1][1],1);
     Data_disply(128,2,myMAXMIN.umaxmin[2][1],1);
     Display_unit("V",1,3);
     //显示最小值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     //DisplayChar_new(23,14,"attime",6);
     break;
    }
     case 3:
    {
     DisplayChar_new(4,9,"THD",3);
     Data_disply(48,2,SPI.uTHD[0],2);
     Data_disply(88,2,SPI.uTHD[1],2);
     Data_disply(128,2,SPI.uTHD[2],2);
     
     DisplayChar_new(8,12,"%THD V",6);
     DisplayChar_new(13,12,"%THD V",6);
     DisplayChar_new(18,12,"%THD V",6);
     
     break;
    }
   default:flag.setup=0;break;
  }
 }
 /*******Display_LDianYa*************************/
 void Display_LDianYa(void)
{
 GCDisplay(24,1,CTable20);
 GCDisplay(24,3,CTable8);
 GCDisplay(24,5,CTable32);
 GCDisplay(24,7,CTable46);

 Display_phase(0,0);
     
  switch(flag.setup)
  {
   case 0:
    {    
     DisplayChar_new(4,9,"CUR",3); 
     Data_disply(48,2,SPI.XU[0],1);
     Data_disply(88,2,SPI.XU[1],1);
     Data_disply(128,2,SPI.XU[2],1);
     //Data_disply(168,5,SPI.XU[0],1);//加上求电流平均值
     Display_unit("V",1,3);
     break;
    }
   case 1:
    {
     DisplayChar_new(4,9,"MAX",3);
     Data_disply(48,2,myMAXMIN.xumaxmin[0][0],1);
     Data_disply(88,2,myMAXMIN.xumaxmin[1][0],1);
     Data_disply(128,2,myMAXMIN.xumaxmin[2][0],1);
     Display_unit("V",1,3);
     //显示最大值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     //DisplayChar_new(23,14,"attime",6);
     break;
    }
   case 2:
    {
     DisplayChar_new(4,9,"MiN",3);
     Data_disply(48,2,myMAXMIN.xumaxmin[0][1],1);
     Data_disply(88,2,myMAXMIN.xumaxmin[1][1],1);
     Data_disply(128,2,myMAXMIN.xumaxmin[2][1],1);
     Display_unit("V",1,3);
     //显示最小值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     //DisplayChar_new(23,14,"attime",6);
     break;
    }
   case 3:
    {
     DisplayChar_new(4,9,"THD",3);
     Data_disply(48,2,SPI.xuTHD[0],2);
     Data_disply(88,2,SPI.xuTHD[1],2);
     Data_disply(128,2,SPI.xuTHD[2],2);
     
     DisplayChar_new(8,12,"%THD V",6);
     DisplayChar_new(13,12,"%THD V",6);
     DisplayChar_new(18,12,"%THD V",6);
     break;
    }
   default:flag.setup=0;break;
  }
 }
 /************************Disply_Gonglv*********************/
 void Disply_Gonglv(unsigned char flagp)
 {
 unsigned long tempgonglv[4],temp_gl_mami[4][2];
 unsigned char i,k;
 GCDisplay(24,5,CTable33);
 GCDisplay(24,7,CTable34);
 GCDisplay(24,9,CTable46);
 
 Display_phase("TOTAL",5);

 Display_unit("kW",2,4);
 switch(flagp)
 {case 0:
         {
         for(i=0;i<3;i++)
          { 
            tempgonglv[i]=PatchCode(SPI.ActPwr[i]);
            if(tempgonglv[i]!=SPI.ActPwr[i])//显示负号
             GCDisplay((56+40*i),0,CTable102);
            for(k=0;k<2;k++)
            {
            temp_gl_mami[i][k]=PatchCode(myMAXMIN.actpwrmaxmin[i][k]);
            if(temp_gl_mami[i][k] != myMAXMIN.actpwrmaxmin[i][k])//显示负号
             {if(flag.setup==(k+1))
                GCDisplay((56+40*i),0,CTable102);
             }
            }
             //总功率相对与一般功率来说最大值高一个数量级,显示向右移一位。
            tempgonglv[3]=PatchCode(SPI.ActPwr[3])/10;
            if(tempgonglv[3]!=SPI.ActPwr[3]/10)//显示负号
             GCDisplay((56+40*i),0,CTable102);    
            for(k=0;k<2;k++)
            {
            temp_gl_mami[3][k]=PatchCode(myMAXMIN.actpwrmaxmin[3][k])/10;
             if(temp_gl_mami[3][k]!=myMAXMIN.actpwrmaxmin[3][k]/10)//显示负号
             {if(flag.setup==(k+1))
                GCDisplay((56+40*3),0,CTable102);
             }
            }
           
          }
          GCDisplay(24,1,CTable36);
          GCDisplay(24,3,CTable33);
         break;}
  case 1:
        { 
        for(i=0;i<3;i++)
          { tempgonglv[i]=PatchCode(SPI.ReaPwr[i]);
            for(k=0;k<2;k++)
            {
            temp_gl_mami[i][k]=PatchCode(myMAXMIN.reapwrmaxmin[i][k]);
            }
          }
            tempgonglv[3]=PatchCode(SPI.ReaPwr[3])/10;
           for(k=0;k<2;k++)
            {
            temp_gl_mami[3][k]=PatchCode(myMAXMIN.reapwrmaxmin[3][k])/10;
            }
          
          GCDisplay(24,1,CTable37);
          GCDisplay(24,3,CTable33);
         break;
        }
  case 2:
          {
          for(i=0;i<3;i++)
          { tempgonglv[i]=PatchCode(SPI.AppPwr[i]);
            for(k=0;k<2;k++)
            {
            temp_gl_mami[i][k]=PatchCode(myMAXMIN.apppwrmaxmin[i][k]);
           }
            tempgonglv[3]=PatchCode(SPI.AppPwr[3])/10;
           for(k=0;k<2;k++)
            {
              temp_gl_mami[3][k]=PatchCode(myMAXMIN.apppwrmaxmin[3][k])/10;
            }
          
          }
          GCDisplay(24,1,CTable38);
          GCDisplay(24,3,CTable39);
          break;
          }
  default: break;
  }
  
 switch(flag.setup)
{
case 0:
{
 DisplayChar_new(4,11,"CUR",3);
 Data_disply(48,2,tempgonglv[0],2);
 Data_disply(88,2,tempgonglv[1],2);
 Data_disply(128,2,tempgonglv[2],2);
 Data_disply(168,2,tempgonglv[3],1);
 
 break;
 }
 case 1:
 {
 DisplayChar_new(4,11,"MAX",3);
 Data_disply(48,2,temp_gl_mami[0][0],2);
 Data_disply(88,2,temp_gl_mami[1][0],2);
 Data_disply(128,2,temp_gl_mami[2][0],2);
 Data_disply(168,2,temp_gl_mami[3][0],1);
 
 //显示最大值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     DisplayChar_new(23,14,"attime",6);
 break;
 }
 case 2:
 {
 DisplayChar_new(4,11,"MiN",3);
 Data_disply(48,2,temp_gl_mami[0][1],2);
 Data_disply(88,2,temp_gl_mami[1][1],2);
 Data_disply(128,2,temp_gl_mami[2][1],2);
 Data_disply(168,2,temp_gl_mami[3][1],1);
 
 //显示最小值时间
     DisplayChar_new(8,14,"attime",6);
     DisplayChar_new(13,14,"attime",6);
     DisplayChar_new(18,14,"attime",6);
     DisplayChar_new(23,14,"attime",6);
 break;
 }
 default:flag.setup=0;break;
 }
}
/******************GLYS*****************/
 void Display_GLYS(void)
{
 GCDisplay(24,1,CTable33);
 GCDisplay(24,3,CTable34);
 GCDisplay(24,5,CTable28);
 GCDisplay(24,7,CTable10);
 GCDisplay(24,9,CTable46);
 
Display_phase("TOTAL",5);
Display_unit("$",1,4);

⌨️ 快捷键说明

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