最近又开始弄这个,亮度通过加三极管解决了,但是数据现在闪烁,用的是定时器中断来实现
void T0_init()
{
count = 0;
TMOD = 0x03;
TH0 = 253/8;
TL0 = 253%8;
TR0=1;
ET0=1;
}
void T0_inter() interrupt 1
{
unsigned char ge=0;
unsigned char shi=0;
unsigned char bai=0;
unsigned char qian = 0;
unsigned char temp ;
unsigned char j=0;
UN32 num;
num.DI=0;
temp = HX711_getdata()>>8;
temp = temp-b;
qian = temp/1000;
bai = temp/100%10;
shi = temp%100/10;
ge = temp%100%10;
du[3] = table[qian];
du[2] = table[bai];
du[1] = table[shi];
du[0] = table[ge];
count++;
if(count==1)
{
P0 = du[0];
P1 = we[0];
delayms(10);
}else if(count==2)
{
P0 = du[1];
P1 = we[1];
delayms(10);
}else if(count==3)
{
P0 = du[2];
P1 = we[2];
delayms(10);
count=0;
}
TH0 = 253/8;
TL0 = 253%8;
}
最近又开始弄这个,亮度通过加三极管解决了,但是数据现在闪烁,用的是定时器中断来实现
void T0_init()
{
count = 0;
TMOD = 0x03;
TH0 = 253/8;
TL0 = 253%8;
TR0=1;
ET0=1;
}
void T0_inter() interrupt 1
{
unsigned char ge=0;
unsigned char shi=0;
unsigned char bai=0;
unsigned char qian = 0;
unsigned char temp ;
unsigned char j=0;
UN32 num;
num.DI=0;
temp = HX711_getdata()>>8;
temp = temp-b;
qian = temp/1000;
bai = temp/100%10;
shi = temp%100/10;
ge = temp%100%10;
du[3] = table[qian];
du[2] = table[bai];
du[1] = table[shi];
du[0] = table[ge];
count++;
if(count==1)
{
P0 = du[0];
P1 = we[0];
delayms(10);
}else if(count==2)
{
P0 = du[1];
P1 = we[1];
delayms(10);
}else if(count==3)
{
P0 = du[2];
P1 = we[2];
delayms(10);
count=0;
}
TH0 = 253/8;
TL0 = 253%8;
}
举报