Red de conocimiento informático - Problemas con los teléfonos móviles - El microcontrolador STC89C52 utiliza lenguaje C para implementar el tubo digital para mostrar cualquier número de cuatro dígitos, incluido el punto decimal.

El microcontrolador STC89C52 utiliza lenguaje C para implementar el tubo digital para mostrar cualquier número de cuatro dígitos, incluido el punto decimal.

#include

#define uchar unsigned char

#define uint unsigned int

sbit wr=P1^ 0;

sbit cs1=P1^1;

sbit cs2=P1^2;

uchar q,w,a[8];

uchar código zm[]=

{

0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,

}

void wx(uchar xx)

{

wr=0;

cs2=0;

P0=xx;

wr=1;

cs2=1;

}

void wx(uchar xx)

{

wr=0;

cs1=0;

P0=xx;

wr= 1;

cs1=1;

}

void T0_time() interrupción 1

{

TH0 =(65536-1835)/256;

TL0=(65536-1835)%256;

wx(0xff);

if(q== 1)

{

dx(zm[a[q]]);

}

else

{

dx(zm[a[q]]&0x7f);//Punto decimal;

}

wx(w);

w=w<<1|0x01;

if(++q==8)

{

q=0;

w=0xfe;

}

}

void main()

{

TH0 =(65536-1835)/256;

TL0=(65536-1835)%256;

EA=1;

ET0=1;

p>

TR0=1;

mientras(1)

{

a[0]=8;

a[1]=7;

a[2]=6;

a[3]=5;

}

}