• Hiển Thị Led 7 đoạn Từ 00 -99 Và Ngược Lùi lại 8051

QC

Hiển Thị Led 7 đoạn Từ 00 -99 Và Ngược Lùi lại 8051

 YÊU CẦU BÀI TOÁN :

- Em Hãy Viết Chương trình Hiển Thị Từ 00 đến 99 led catot chung và ngực về lại. với 300ms giây. 

HƯỚNG DẪN GIẢI QUYẾT VẤN ĐỀ :

PHẦN I : PHẦN CỨNG

BƯỚC 1  :  Vẽ Mạch Protues.


BƯỚC 2 :  Chuẩn bị phần cứng như sau.





Led Thật tế :




Nối 2 Com với điện trở 330 nhé . Thật Ra phải đấu abcdefg với điện trở 330 ohm. nhưng tại không gian test board nhỏ quá nên mình cắm vậy chơi lợi diện tích.
Mình Vứt Luôn 2 con trở luôn nhé !
Code Chương Trình
#include<reg51.h> 
sbit COM2=P3^0;
sbit COM1=P3^1;
 unsigned char SEG[10] ={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
 int DV,CH;
 int i,j=0;
 void delay_ms(unsigned int t) // khi ban su dung thach anh 12 mhz
{
unsigned int x,y;
for(x=0;x<t;x++)
{
for(y=0;y<=120;y++);
}
}
// chuong trinh chính
void main()
{
COM1=0;
COM2=0;
  while(1) //never ending loop    
  {


  // dem len   0-99
  for(i=0;i<100;i++)
     {
  DV=i%10;
  CH=i/10;

  for(j=0;j<50;j++)
  {
    
P2=SEG[DV];COM1=1;delay_ms(1);COM1=0;
P2=SEG[CH];COM2=1;delay_ms(1);COM2=0;

  }
     }

   // dem xuong 98 ve 1
  for(i=98;i>=1;i--)
     {
  DV=i%10;
  CH=i/10;

  for(j=0;j<50;j++)
  {
    
P2=SEG[DV];COM1=1;delay_ms(1);COM1=0;
P2=SEG[CH];COM2=1;delay_ms(1);COM2=0;

  }
     }

  }
}

Coppy và pass vào keilc V4 sau đó Build chương trình:
Kết quả mô phỏng Protues :


Kết quả mô phỏng Thực tế : Mình rút con trở ra lun vì led mình dùng chịu được.( các bạn không được rút trở ra nhé ).



Test_creep

 abcdd