Professional Documents
Culture Documents
Dựa vào bẳng trên ta thấy, muốn quét được 14 chữ số của msv thì ta phải cho nó chạy từ
phải qua trái theo ( hay là mỗi số khi hiển thị xong nó sẽ dịch qua led khác, cho đến khi
hết số để hiển thị họặc quay lại từ đầu).
Ta khai báo chương trình sử dụng AT89C51 và keil c cho đề bài như sau:
#include<reg51.h>
Unsigned int msv[14] = 2 1 1 1 5 0 5 5 1 2 0 1 0 4 ứng với : 0xF9, 0xA4, 0xA4, 0xA4,
0x92, 0xC0, 0x92, 0x92, 0xA4, 0xF9, 0xC0, 0xF9, 0xC0, 0x99
Usigned char donvi, chuc, tram, nghin
Sbit Q1= P0^0;
Sbit Q2= P0^1;
Sbit Q3= P0^2;
Sbit Q4= P0^3;
Void delay(void)
{
Long int i;
For(i=0; i <=n; i++);
}
Void Display(unsigned int n)
{
If {
Q1=1;
P2=msv[