các đại ka ơi xem hộ em cái code này vơi:
em viết 1 code rùi ép và chạy cũng thấy ổn.nhưng chưa được tối ưu.
và em viết lại code này nhưng khi ép vào ic thì nó lại ko chạy .
các đại ka xem hộ em cái.
http://www.ziddu.com/download/17397650/vxl1223333.rar.html
thanks các đại ka nhiều
em viết 1 code rùi ép và chạy cũng thấy ổn.nhưng chưa được tối ưu.
và em viết lại code này nhưng khi ép vào ic thì nó lại ko chạy .
các đại ka xem hộ em cái.
http://www.ziddu.com/download/17397650/vxl1223333.rar.html
- Code:
#include <REGX51.H>
//=== thiet lap cac chan dieu khien=====//
sbit CE1 = P3^0; //ic1
sbit AB1 = P3^1;
sbit CE2 = P3^2; //ic2
sbit AB2 = P3^3;
sbit CE3 = P3^4; //ic3
sbit AB3 = P3^5;
sbit OE = P3^6; // chot
sbit LE = P3^7;
//==== thiet lap cac nut========//
sbit NUT1 = P1^0;
sbit NUT2 = P1^1;
sbit NUT3 = P1^2;
unsigned char j,i,k;
unsigned char mang[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
unsigned char so[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x02,0xf8,0x00,0x10};
//======== ham tao tre ==========//
void delay(unsigned char ms)
{
unsigned char i;
for(i=0;i<ms;i++)
{
TMOD=0X01;
TH0=0XFC;
TL0=0X17;
TR0=1;
while(!TF0)
TR0=0;
TF0=0;
}
}
// chuong trinh hien thi led don========//
void out_data1(void)
{
OE=0;
LE=1;
AB1=1;
CE1=0;
CE2=CE3=1;
for(i=0;i<4;i++)
{
for(j=0;j<8;j++)
{
P2=mang[j];
delay(200);
}
P2=0x01;delay(200);
P2=0x03;delay(200);
P2=0x07;delay(200);
P2=0x0f;delay(200);
P2=0x1f;delay(200);
P2=0x3f;delay(200);
P2=0x7f;delay(200);
P2=0xff;delay(200);
}
}
//===== chuong trinh hien thi led 7 thanh====//
void out_data2(void)
{
OE=0;
LE=0;
CE1=CE3=1;
AB2=1;
CE2=0;
for(i=0;i<10;i++)
{
P2=so[i];
delay(1000);
}
}
//====== chuong trinh in data========//
void in_data(void)
{
CE3=0;
AB3=0;
CE2=CE1=1;
OE=0;
LE=0;
if(P2==0x01)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X01;
}
if(P2==0x02)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X02;
}
if(P2==0x04)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X04;
}
if(P2==0x08)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X08;
}
if(P2==0x10)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X10;
}
if(P2==0x20)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X20;
}
if(P2==0x40)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X40;
}
if(P2==0x80)
{
LE=1;
CE1=0;
AB1=1;
CE3=1;
P2=0X80;
}
}
//========MAIN=======//
void main(void)
{
P1=0x00;
while(1)
{
if(NUT1==1)
{
out_data1();
if(NUT2==1)
{
out_data2();
if(NUT3==1)
{
in_data();
}
}
}
if(NUT2==1)
{
out_data1();
if(NUT1==1)
{
out_data2();
if(NUT3==1)
{
in_data();
}
}
}
if(NUT3==1)
{
out_data1();
if(NUT2==1)
{
out_data2();
if(NUT1==1)
{
in_data();
}
}
}
}
}
thanks các đại ka nhiều