• Led sáng dần 2 bên vào rồi tắt dần từ bên trong ra 8051

QC

Led sáng dần 2 bên vào rồi tắt dần từ bên trong ra 8051

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

- Em Hãy Viết Chương trình 8 Led sáng dần 2 bên vào  rồi tắt dần từ bên trong ra?

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.



PHẦN II : PHẦN MỀN.

   BƯỚC 1: CÁC BẠN TẠO PROJECT KEIL C V.4 TƯƠNG TỰ. 

     ( Xem lại 3.1 Blink led )

   BƯỚC 2:  CODE NHƯ SAU.


 Code chương trình
#include<reg51.h> 
unsigned char a,b,c;
int i;
 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()
{
  while(1) //never ending loop    
  {
a=0x80; // CO NGHIA LA  a =0b1000 0000
b=0x01; // co nghia la  b =0b0000 0001
 
 // chay vao
for(i=0;i<4;i++)
  c=a+b; //  0b1000 0000 +   0b0000 0001  = 0b1000 0001  2 led dau va cuoi sang.
  P2=c; //  c=a+b = 0b1000 0001 
  delay_ms(200);
  a=(a>>1)+0x80 ;
  b=(b<<1)+0x01 ;
}
    // chay ra;
 a=0xE0; // 0b1110 0000;
 b=0x07; // 0b0000 0111;
 c=a+b;   // c=  0b1110 0000 +  0b0000 0111 =0b1111100111;
   for(i=0;i<4;i++)
  c=a+b; //    0b0001 0000 +  0b0000 1000 = 0b1000 0001 
  P2=c; //  c=a+b = 0b1000 0001 
  delay_ms(200);
  a=a<<1 ;
  b=b>>1 ;
}
   P2=0X00; // 0b0000 0000
  }
}


Các bạn coppy nguyên code rồi Pass vào keil C là chạy ok.

KẾT QUẢ MÔ PHỎNG :


KẾT QUẢ THỰC TẾ .






Giải Toán 10 Kết nối tri thức Bài tập cuối chương III

Giải Toán 10 Kết nối tri thức Bài tập cuối chương III 1. Bài 3.12 trang 44 Toán 10 Tập 1 - Kết nối tri thức 2. Bài 3.13 trang 44 Toán 10 Tập...