📄 c_sub_bitdata.c
字号:
//===============================================================================================
// 函数:sub
// 描述:子函数
//============================================================================================
//#include "SPCE061V004.H"
extern flag;
unsigned int can,bt=0,d1,d2,d3,d4,d5,d6;
unsigned int guideled[6];
void c_sub(int can)
{
//unsigned int temp; //bit tem
//unsigned int datab; //字形 tem
//unsigned int bw,sw,gw;
//unsigned int i,j;
//unsigned int dispbuf[6];
unsigned int data;
float vv;
unsigned int au,t;
unsigned int disptab1[]={0x00bf,0x0086,0x00db,0x00cf,0x00e6,0x00ed,0x00fc,0x0087,0x00ff,0x00ef}; //'0.''1.''2.''3.''4.''5.''6.''7.''8.''9.'的代码
unsigned int bittab[]={0x0100,0x0200,0x0400,0x0800,0x1000,0x2000};
unsigned int disptab[]={0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f}; //'0''1''2''3''4''5''6''7''8''9'的代码
if(flag==0)
{vv=can*220.00/1024.00; // A/D值运算:line0(0~220v)
d6=0x203e;
guideled[5]=d6;}
else
{vv=can*100.00/1024.00; // A/D值运算:line1(0~100A)
d6=0x2077;guideled[5]=d6;}
//=================================================100~220============
if(vv>=100)
{
switch(bt)
{
case 0:
guideled[0]=disptab[(int)vv/100]+bittab[0];break;
case 1:
guideled[1]=disptab[(int)vv%100/10]+bittab[1];break;
case 2:
guideled[2]=disptab1[(int)vv%10]+bittab[2];break;
case 3:
guideled[3]=0x083f;break; //显示0
}
}
//===============================================10.0~99.9============
else if(vv>=10.0)
{
vv*=10;
switch(bt)
{
case 0:
guideled[0]=disptab[(int)vv/100]+bittab[0];break;
case 1:
guideled[1]=disptab1[(int)vv%100/10]+bittab[1];break;
case 2:
guideled[2]=disptab[(int)vv%10]+bittab[2];break;
case 3:
guideled[3]=0x083f;break; //显示0
}
}
//=================================================1.00~9.99============
else if(vv>=1.00)
{
vv*=100;
switch(bt)
{
case 0:
guideled[0]=disptab1[(int)vv/100]+bittab[0];break;
case 1:
guideled[1]=disptab[(int)vv%100/10]+bittab[1];break;
case 2:
guideled[2]=disptab[(int)vv%10]+bittab[2];break;
case 3:
guideled[3]=0x083f;break; //显示0
}
}
//=================================================0.000~0.999============
else if(vv>=0.000)
{
vv*=1000;
switch(bt)
{
case 0:
guideled[0]=0x01bf;break; //显示0.
case 1:
guideled[1]=disptab[(int)vv/100]+bittab[1];break;
case 2:
guideled[2]=disptab[(int)vv%100/10]+bittab[2];break;
case 3:
guideled[3]=disptab[(int)vv%10]+bittab[3];break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -