- Em Hãy Viết Chương trình Hiển Thị Từ 1 đến 9 led anode ( dương chung)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
Dương chung , cấp âm vị trí nào thì vị trí đó sáng.
Ví dụ cấp âm (0)vị trí a thì thanh a sáng ...
Xem Kỹ Bài 4.1 nhé !BƯỚC 2 : Chuẩn bị phần cứng như sau.
Code Chương trình | |
#include<reg51.h> unsigned char SEG[10] ={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; int i=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() { while(1) //never ending loop { // dem len 0-9 for(i=0;i<10;i++) { P2=SEG[i]; delay_ms(500); } // dem xuong tu 8 ve 1 for(i=8;i>=1;i--) { P2=SEG[i]; delay_ms(500); } } } |
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é ).