1. Cấu tạo
Led 7 đoạn gồm 7 đoạn led sắp xếp như hình bên dưới, chân led được đánh nhãn từ a đến g đại diện cho từng đoạn led, chân còn lại được nối chung với nhau. Dựa vào cách kết nối chung mà chia thành hai loại đó là anot chung và catot chung. Ngoài 7 đoạn này còn có đoạn thứ 8, đánh nhãn là dp tượng trưng cho dấu chấm.
Nhờ cách kết nối này mà các đoạn led có thể điều khiển để sáng riêng rẽ theo ý muốn, tùy cách kết hợp của cách đoạn sáng này mà tạo ra các số từ 0 đến 9, hoặc các ký tự đơn giản.
2. Tính điện trở hạn dòng cho led
Khi kết nối để điều khiển led 7 đoạn, để tránh làm quá dòng làm hỏng led ta tính toán các điện trở hạn dòng. Điện áp rơi lên led khi led phân cực thuận khoảng 2 đến 2.2 (led xanh da trời và led trắng cao hơn có thể lên đến 3.6 V).
Điển hình khi điều khiển Led 7 đoạn màu đỏ, dòng đi qua led khoảng 15 mA. Vì vậy điện trở hạn dòng qua led được tính như sau R= (5v – 2v)/15mA. Ta tính ra R =220 Ohm
3. Bảng mã hiển thị của led 7 đoạn từ 0-9
Điều khiển led 7 đoạn tức là điều khiển từng led để sáng, sự kết hợp sáng của các led để hiển thị các số ví dụ như hiển thị số 5 ta phải cấp nguồn các đoạn a, c, d, f, g và tắt các đoạn còn lại b, e. Tức là (a=1, b=0, c=1, d=1, e=0, f=1, g=1 đối với catot chung) và (a=0, b=1, c=0, d=0, e=1, f=0, g=0 đối với anot chung). Bảng mã dưới đây hiển thị số từ 0-9 tương ứng với loại anot và canot chung.
3.1 Loại anot chung
Số hiển thị trên led 7 đoạn | Mã hiển thị led 7 đoạn dạng nhị phân | Mã hiển thị led 7 đoạn dạng thập lục phân |
h g f e d c b a | ||
0 | 1 1 0 0 0 0 0 0 | C0 |
1 | 1 1 1 1 1 0 0 1 | F9 |
2 | 1 0 1 0 0 1 0 0 | A4 |
3 | 1 0 1 1 0 0 0 0 | B0 |
4 | 1 0 0 1 1 0 0 1 | 99 |
5 | 1 0 0 1 0 0 1 0 | 92 |
6 | 1 1 0 0 0 0 1 0 | 82 |
7 | 1 1 1 1 1 0 0 0 | F8 |
8 | 1 0 0 0 0 0 0 0 | 80 |
9 | 1 0 0 1 0 0 0 0 | 90 |
A | 1 0 0 0 1 0 0 0 | 88 |
B | 1 0 0 0 0 0 1 1 | 83 |
C | 1 1 0 0 0 1 1 0 | C6 |
D | 1 0 1 0 0 0 0 1 | A1 |
E | 1 0 0 0 0 1 1 0 | 86 |
F | 1 0 0 0 1 1 1 0 | 8E |
- | 1 0 1 1 1 1 1 1 | BF |
3.2 Loại canot chung
Số hiển thị trên led 7 đoạn | Mã hiển thị led 7 đoạn dạng nhị phân | Mã hiển thị led 7 đoạn dạng thập lục phân |
h g f e d c b a | ||
0 | 0 0 1 1 1 1 1 1 | 3F |
1 | 0 0 0 0 0 1 1 0 | 06 |
2 | 0 1 0 1 1 0 1 1 | 5B |
3 | 0 1 0 0 1 1 1 1 | 4F |
4 | 0 1 1 0 0 1 1 0 | 66 |
5 | 0 1 1 0 1 1 0 1 | 6D |
6 | 0 1 1 1 1 1 0 1 | 7D |
7 | 0 0 0 0 0 1 1 1 | 07 |
8 | 0 1 1 1 1 1 1 1 | 7F |
9 | 0 1 1 0 1 1 1 1 | 6F |
A | 0 1 1 1 0 1 1 1 | 77 |
B | 0 1 1 1 1 1 0 0 | 7C |
C | 0 0 1 1 1 0 0 1 | 39 |
D | 0 1 0 1 1 1 1 0 | 5E |
E | 0 1 1 1 1 0 0 1 | 79 |
F | 0 1 1 1 0 0 0 1 | 71 |
- | 0 1 0 0 0 0 0 0 | 40 |
Chương trình ví dụ đếm từ 0 đến 99 và hiển thị ra led 7 đoạn (anode chung)
#include <16f887.h> #device *=16 ADC=10 #use delay(clock=1000000) #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT unsigned char Code7Seg[] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90}; void main(void) { int i; for(i=0;i<=99;i++) { output_c(Code7Seg[i%10]); // hien thi phan don vi output_b(Code7Seg[i/10]);// hien thi phan chuc delay_ms(1000);// delay 1 giay } } |
Tải file nguồn và mô phỏng Link
Font chữ mẫu cho led 7 đoạn:
Không có nhận xét nào:
Đăng nhận xét