Em mới học VXL.em có mạch dùng AT89c51..khi LEd 7 đoạn chạy 2,4,6,8 thì yellow-led sáng.bro nào thương tình giúp đỡ em viết dùm em chương trình nạp cho con IC này chạy cái a.Thank nhieu.
có nhiều điều chưa biết về VXL
Collapse
X
-
vi du nhe mot chuong trinh do chu ky cua 1 tan so bat ky
su dung timer ban hay xem ma tim hieu minh moi tao ra chay dung lam day
code la
#include <REGX52.H>
sbit Data = P2^2;
sbit clock = P2^1;
sbit strobe = P2^3;
unsigned int T = 0;
unsigned int TH,TL;
unsigned char V = 0;
unsigned char led[10]={0x01,0x4f,0x12,0x06,0x4c,0x24,0x20,0x0f,0x00,0x0 4};
void wait(unsigned int i){while(i--){;}}
void dieukhien(unsigned char input){
unsigned char i;
clock = 0;
for(i=0;i<8;i++){
if(input&0x01) Data = 1;
else Data = 0;
input>>=1;
clock = 1;
clock = 0;}
}
void hienthi(unsigned int xyz){
dieukhien(led[xyz%10]);
xyz/=10;
dieukhien(led[xyz%10]);
xyz/=10;
dieukhien(led[xyz%10]);
xyz/=10;
dieukhien(led[xyz%10]);
xyz/=10;
dieukhien(led[xyz%10]);
strobe = 1;
strobe = 0;
}
/*void tang()interrupt 0{
V++;
if(V>10)
V = 0;}
void giam()interrupt 2{
V--;
if(V==255)
V=10;}*/
void main(void){
TR0 = 0;
TH = TH0;
TL = TL0;
T = TH*256+TL;
TH0 = 0;
TL0 = 0;
TR0 = 1;
strobe = 0;
Data = 0;
clock = 0;
EX0 = 1;IT0 = 1;
EX1 = 1;IT1 = 1;
EA = 1;
while(1)
hienthi(T);}
//hienthi(V);wait(50000);
void dochuki()interrupt 0{
//TR0 = 0;
//TH = TH0;
//TL = TL0;
//TH0 = 0;
//TL0 = 0;
T = TH*256+TL;
//TR0 = 1;
hienthi(V);
}
Comment
Bài viết mới nhất
Collapse

Comment