Tài liệu Đếm số nút nhấn 0-9 hiện thị lên LED 7 - Pdf 96

Đếm số nút nhấn 0-9 hiện thị lên LED 7
Ngu

n:biendt.biz
Trong phần này tôi sẽ giới thiệu với các pác số cách đếm số nút nhấn hiện thị
lên LED 7 seg.Ta dùng 1 nút nhấn để nhận tín hiệu vào chíp. Đây là cách nhận
tín hiệu từ bên ngoài vào cho chíp xử lý. Phương pháp này người ta còn gọi là
đọc bàn phím nhưng ở đây là chúng ta đọc 1 phím. Nhấn 1 lần thì hiện thị số 1,
nhấn tiếp hiện thị số 2 cứ thế cho tới đến lần nhấn thì nó lại quay trở
về ban
đầu. Sau đây là cách làm như sau:

1: Lắp mạch.

Cái này mình phải dùng loại LED 7seg thì mới hiện thị được các số lần nhấn
được. Hiện nay trên thị trường có 2 loại LED 7 thanh đó là loại chung Anot và
chung catot Cấu tạo của nó gồm 8 con LED đơn được ghép với nhau 1 là chung Anot 2 là
chung Catot. có 1 chân cấp nguồn và 8 chân đầu ra hay vào tùy theo Anot
chung hay catot chung.Và trên đó nó được chia ra làm 7 thanh tương ứng với
A,B,C,D,E,F,G và 1 chân dot.

Ở bài này tôi dùng LED 7 thanh có Anot chung! Cái này các pác có thể ra chợ
mua được giá chỉ có 2k 1 con thôi!

Sơ đồ nguyên lý mạch hiện thị!

điện trở 1k và đầu kia được nối lên VCC. Khi công tắc được đóng thì mạch sẽ tự
reset. Còn 1 tụ được nối giữa chân 28 và 14 là để không bị mất nguồn trong
khoảng thời gian ngắn

2 : Nguyên lý hoạt động

Psoc có sự hơi khác so với các dòng vi sử lý khác nó ta phải tự thiết lập phần
cứng khi đưa ra các tín hiệu ra Port. Đối với bài tập này các pác phải thiết lập
chế độ như sau:

Port2 : Tất cả để ở chế độ Strong

Port1_7 " Để ở chế độ Pull up

Nguyên lý ở đây là nguyên lý đếm số nút nhấn. Nên thế ta phải cho nó 1 biến
đếm để khi ta nhấn thì nó sẽ t
ăng thêm 1 (Tăng 2 ,3 cũng được) và biến đếm
đó phải được lưu trong Ram. Khi biến đếm đó được nhấn 9 lần thì phải trở về 0
do ở đây ta dùng 1 LED 7 nên nó chỉ hiện thị được từ 0-9 thôi. Dùng 1 hàm để
hiện thị các giá trị này. Nói chung cái này khá đơn giản nên các pác có thể tham
khảo chương trình là hiểu ngay ấy mà!

3 : Chương trình:

//
// Dem so lan nut nhan hien thi tren LED 7 vach tu 0-9
// Viet boi : Biendt -
// Dung P2 lam hien thi so ra LED
// Dung P1-7 lam nut nhan!
// C main line

void hienthi(unsigned char x)
{
switch(x)
{
case 0:{PRT2DR=0xff;PRT2DR=0x40;break;} //so 0
case 1:{PRT2DR=0xff;PRT2DR=0xf9;break;}
case 2:{PRT2DR=0xff;PRT2DR=0x24;break;}
case 3:{PRT2DR=0xff;PRT2DR=0x30;break;}
case 4:{PRT2DR=0xff;PRT2DR=0x99;break;}
case 5:{PRT2DR=0xff;PRT2DR=0x12;break;}
case 6:{PRT2DR=0xff;PRT2DR=0x82;break;}
case 7:{PRT2DR=0xff;PRT2DR=0x78;break;}
case 8:{PRT2DR=0xff;PRT2DR=0x80;break;}
case 9:{PRT2DR=0xff;PRT2DR=0x10;break;}// So 9
}
} /* Ham chinh*/
void main()
{
unsigned char m;
PRT1DR=0xff;
PRT2DR=0xff;
while(1)
{
m=dongcongtac();
hienthi(m);
}
}


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status