📄 tlc549_c.c
字号:
#include<reg51.h>
unsigned char d[4],n;
unsigned char code tab[11]={0x3f,6,0x5b,0x4f,
0x66,0x6d,0x7d,7,0x7f,0x6f,0};
unsigned char code digit[4]={0xf8,0xf4,0xf2,0xf1};
sbit adcs=0x96;
sbit adclk=0x95;
sbit addata=0x94;
unsigned char bdata adc;
sbit adclow=adc^0;
unsigned char adconvert()
{ unsigned char i;
adcs=1;
adcs=0;
adclk=0;
for(i=0;i<8;i++)
{ adclk=1;
adclow=addata;
adclk=0;
if(i<7) adc=adc<<1;
}
adclk=0;
adcs=1;
return(adc);
}
vtobcd(unsigned int hexs)
{ unsigned int va;
unsigned char ii;
va=10000;
d[0]=10;
for(ii=1;ii<4;ii++)
{ d[ii]=hexs/va;
hexs=hexs % va;
va=va/10;
}
}
void delay(unsigned char dy)
{
while(--dy);
}
timer() interrupt 1 using 1
{
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
n=n++;
if(n>3) n=0;
P0=0;
P2=digit[n];
P0=tab[d[n]];
if(n==0)P0=tab[d[n]]+0x80;
}
main()
{ unsigned char ad,j;
unsigned int k,v;
TMOD=0X21;
TR0=1;
ET0=1;
EA=1;
n=0;
k=193;
while(1)
{
ad=adconvert();
v=ad*k;
vtobcd(v);
for(j=0;j<200;j++) delay(250);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -