📄 四位小数显示.c
字号:
/*用到的变量 i,sum ;*/
void ledwork(void) /*数码管工作函数*/
{ /*要用的全局变量
uint led[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uint ledp[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
uint num=0,w=0,numi,wp,wn;
float sum=0.1,tempn,nump; */
numi=(uint)sum; /*开始算位 ,这也是看是否需要,因此要放到sum函数中*/
nump=sum-numi;
wn=1;
for(j=1;j<4;j++)
{
if(numi>0)
{wn=j; numi=numi/10;}
else break;
}
for(j=0;j<3;j++)
{
if(nump>0)
{nump=nump*10;
wp=j+1;nump=nump-(uint)nump;}
else break;
}
w=wn+wp;
if(w>4)
{
wp=4-wn;
w=4;
}
tempn=sum;
for(j=0;j<wp;j++)
tempn=tempn*10;
num=(uint)tempn;
} /*算位结束,这也是看是否需要,因此要放到sum函数中*/
void ledwork(void) /*数码管工作函数*/
{
if(i==0) {led1=1;led2=1; led3=1;led0=0; P0=led[num%10];}
else if(i==1&&w>=2) {if(wp==1) P0=ledp[num/10%10]; else P0=led[num/10%10];
led2=1; led3=1; led0=1;led1=0;}
else if(i==2&&w>=3) {if(wp==2) P0=ledp[num/100%10]; else P0=led[num/100%10];
led1=1;led3=1;led2=0;}
else if(i==3&&w>=4) {if(wp==3) P0=ledp[num/1000%10]; else P0=led[num/1000%10];
led2=1; led1=1; led0=1; led3=0;}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -