You are on page 1of 7

Led 7 đoạn

Trần Thị Thiêm


Cách kết nối Led 7 đoạn với 16F887

Led 7 đoạn của cả 2 hình đều là Anode chung. (Cathode chung  nối đất)
Lập trình cho Led 7 đoạn
1. Giải mã
- Tách số (DV, CH, TR,...): 1 Led 7 đoạn chỉ hiện thị 1 chữ số
- Giải thuật: Chia 10 nhiều lần
(%: chia lấy số dư /: chia lấy số nguyên)
- Lấy mã 7 đoạn của số đếm (Anode chung  0: sáng, 1: tắt)
+ Tạo mã Kết quả hiển dp g f e d c b a Số Hex
thị
0 1 1 0 0 0 0 0 0 C0
1 1 1 1 1 1 0 0 1 F9

+ Lưu mã:
Const unsigned char Ma7doan[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82,
0xF8, 0x80, 0x90};
Học thuộc/Chép vào giấy A4
Lập trình cho Led 7 đoạn
 Xây dựng hàm giải mã:

Lấy mã 7 đoạn của số đếm = Đặt số đếm vào Void GiaiMa()


trong mảng {
DV = Ma7doan[Dem%10];
Vd: DV=1
MaDV = Ma7doan[DV] = Ma7doan[1] = 0xF9 CH = Ma7doan[Dem/10%10];
TR = Ma7doan[Dem/100];
//Xoa so 0 vo nghia
if (TR == 0xC0)
{
TR = 0xFF;
if (CH == 0xC0)
CH = 0xFF;
}
}
Lập trình cho Led 7 đoạn

2. Hàm hiển thị


Void HienThi()
{
//Tuy vao phan cung
output_d(DV);
output_c(CH);
output_b(TR);
}
VD
VD1. Hãy vẽ mạch nguyên lý và viết chương trình đếm từ 0 – 9. Hiển thị trên Led 7
đoạn gắn ở Port D.
BT
1. Hãy vẽ mạch nguyên lý và viết chương trình cho nút nhấn gắn ở E2 điều khiển
biến đếm (0-25). Xuất giá trị đếm ra Led 7 đoạn gắn ở Port B, D tương ứng giá
trị Chục, Đơn vị.
2. Hãy vẽ mạch nguyên lý và viết chương trình cho nút Up, Down gắn ở E0, E1
điều khiển biến đếm lên, xuống (0-25). Xuất giá trị đếm ra Led 7 đoạn gắn ở Port
B, D tương ứng giá trị Chục, Đơn vị.

You might also like