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.
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é ).