latigo7441
16-04-2013, 10:25 AM
Mạch đếm từ 00 đến 99 dùng VĐK
Với các bạn mới làm quen với VĐK những ví dụ đầu tiên không thể thiếu là mạch đếm lên xuống . Ở bài này mình giới thiệu mạch đếm đơn giản từ 00 đến 99 dùng vđk 8051 .
http://i1082.photobucket.com/albums/j361/diendandien/dem00-99.jpg
Code :
#include"reg52.h"
//================
sbit Led1 = P3^1;
sbit Led2 = P3^0;
//=================
unsigned char
M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
int a,b,c,d,k;
void delay(unsigned int t)
{
unsigned int i;
for(i=0;i }
//=================
void main()
{
while(1)
{
for(k=0;k {
a=k/10;
b=k%10;
for(c=0;c {
Led1=1; //led dau tien sang
P2=M[a];
delay(50);
Led1=0;
P2=0xff;//xoa du lieu
Led2=1; //led 2 sang
P2=M[b];
delay(50);
Led2=0;
P2=0xff;//xoa du lieu
}
}
}
}
Với các bạn mới làm quen với VĐK những ví dụ đầu tiên không thể thiếu là mạch đếm lên xuống . Ở bài này mình giới thiệu mạch đếm đơn giản từ 00 đến 99 dùng vđk 8051 .
http://i1082.photobucket.com/albums/j361/diendandien/dem00-99.jpg
Code :
#include"reg52.h"
//================
sbit Led1 = P3^1;
sbit Led2 = P3^0;
//=================
unsigned char
M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
int a,b,c,d,k;
void delay(unsigned int t)
{
unsigned int i;
for(i=0;i }
//=================
void main()
{
while(1)
{
for(k=0;k {
a=k/10;
b=k%10;
for(c=0;c {
Led1=1; //led dau tien sang
P2=M[a];
delay(50);
Led1=0;
P2=0xff;//xoa du lieu
Led2=1; //led 2 sang
P2=M[b];
delay(50);
Led2=0;
P2=0xff;//xoa du lieu
}
}
}
}