通过外部按钮 控制数码管数字显示
#include "StuNum.h"
void main(void)
{
SysInit();
while(1)
{
DisplayNum(StN);
KeyScan();
}
}
void SysInit(void)
{
SegDa = AllL;
SegBH = AllH;
SegBL = AllH;
}
void DisplayNum(unsigned char *p)
{
unsigned char i;
for(i=0; i<10; i++)
{
if(i<2)
{
SegBH &= 0xfc;
SegBH |= (SegBCod[i+6]&0x03);
SegBL = AllH;
}
else
{
SegBH |= 0x03;
SegBL = SegBCod[i-2];
}
SegDa = SegDCod[*p++];
Delay(10);
SegBH |= 0x03;
SegBL = AllH;
SegDa = AllL;
Delay(10);
}
}
void Delay(unsigned char t)
{
unsigned char i,j;
for(i=0; i<20; i++)
{
for(j=0; j
;
}
}
}
void KeyScan(void)
{
if(KeyFlag==0)
{
if(Key1==0)
{
RightShift();
KeyFlag = 1;
}
else
{
;
}
}
else if(KeyFlag==1)
{
if(Key1==1)
{
KeyFlag = 0;
}
}
}
void RightShift(void)
{
unsigned char i,j;
j = StN[9];
for(i=9; i>0; i--)
{
StN[i] = StN[i-1];
}
StN[0] = j;
}



