You are on page 1of 5

Giao tiếp với led 7 đoạn Trang 1

1.Các khái niệm cơ bản

Trong các thiết bị, để báo trạng thái hoạt động của thiết bị đó
cho người sử dụng với thông số chỉ là các dãy số đơn thuần, thường
người ta sử dụng "led 7 đoạn". Led 7 đoạn được sử dụng khi các
dãy số không đòi hỏi quá phức tạp, chỉ cần hiện thị số là đủ, chẳng
hạn led 7 đoạn được dùng để hiển thị nhiệt độ phòng, trong các
đồng hồ treo tường bằng điện tử, hiển thị số lượng sản phẩm được
kiểm tra sau một công đoạn nào đó...

Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo hình và có thêm
một led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên phải của led 7 đoạn.

8 led đơn trên led 7 đoạn có Anode(cực +) hoặc Cathode(cực -) được nối chung với
nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch điện. 8 cực còn lại trên
mỗi led đơn được đưa thành 8 chân riêng, cũng được đưa ra ngoài để kết nối với mạch
điện. Nếu led 7 đoạn có Anode(cực +) chung, đầu chung này được nối với +Vcc, các
chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín
hiệu đặt vào các chân này ở mức 0. Nếu led 7 đoạn có Cathode(cực -) chung, đầu chung
này được nối xuống Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái
sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1.

Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm bảo dòng
qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu kết nối với nguồn 5V có
thể hạn dòng bằng điện trở 330Ω trước các chân nhận tín hiệu điều khiển.

Sơ đồ vị trí các led được trình bày như hình dưới:

Các điện trở 330Ω là các điện trở bên ngoài được kết nối để giới hạn dòng điện qua led
nếu led 7 đoạn được nối với nguồn 5V.
Chân nhận tín hiệu a điều khiển led a sáng tắt, ngõ vào b để điều khiển led b. Tương tự
với các chân và các led còn lại.

2.Kết nối với Vi điều khiển

Ngõ nhận tín hiệu điều khiển của led 7 đoạn có 8 đường, vì vậy có thể dùng 1 Port
nào đó của Vi điều khiển để điều khiển led 7 đoạn. Như vậy led 7 đoạn nhận một dữ liệu
8 bit từ Vi điều khiển để điều khiển hoạt động sáng tắt của từng led led đơn trong nó, dữ
liệu được xuất ra điều khiển led 7 đoạn thường được gọi là "mã hiển thị led 7 đoạn". Có
hai kiểu mã hiển thị led 7 đoạn: mã dành cho led 7 đoạn có Anode(cực +) chung và mã
dành cho led 7 đoạn có Cathode(cực -) chung. Chẳng hạn, để hiện thị số 1 cần làm cho
các led ở vị trí b và c sáng, nếu sử dụng led 7 đoạn có Anode chung thì phải đặt vào hai
chân b và c điện áp là 0V(mức 0) các chân còn lại được đặt điện áp là 5V(mức 1), nếu sử
dụng led 7 đoạn có Cathode chung thì điện áp(hay mức logic) hoàn toàn ngược lại, tức là
phải đặt vào chân b và c điện áp là 5V(mức 1).

Bảng mã hiển thị led 7 đoạn:

• Phần cứng được kết nối với 1 Port bất kì của Vi điều khiển, để thuận tiện cho
việc xử lí về sau phần cứng nên được kết nối như sau: Px.0 nối với chân a, Px.1
nối với chân b, lần lượt theo thứ tự cho đến Px.7 nối với chân h.
• Dữ liệu xuất có dạng nhị phân như sau : hgfedcba

Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Anode chung (các led đơn
sáng ở mức 0):

Số hiển thị trên led 7 Mã hiển thị led 7 đoạn dạng Mã hiển thị led 7 đoạn dạng thập
đoạn nhị phân lục phân
hgfedcba
0 11000000 C0
1 11111001 F9
2 10100100 A4
3 10110000 B0
4 10011001 99
5 10010010 92
6 11000010 82
7 11111000 F8
8 10000000 80
9 10010000 90
A 10001000 88
B 10000011 83
C 11000110 C6
D 10100001 A1
E 10000110 86
F 10001110 8E
- 10111111 BF

Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Cathode chung (các led đơn
sáng ở mức 1):

Số hiển thị trên led 7 Mã hiển thị led 7 đoạn dạng Mã hiển thị led 7 đoạn dạng thập
đoạn nhị phân lục phân
0 00111111 3F
1 00000110 06
2 01011011 5B
3 01001111 4F
4 01100110 66
5 01101101 6D
6 01111101 7D
7 00000111 07
8 01111111 7F
9 01101111 6F
A 01110111 77
B 01111100 7C
C 00111001 39
D 01011110 5E
E 01111001 79
F 01110001 71
- 01000000 40

3.Giao tiếp Vi điều khiển với nhiều led 7 đoạn : (minh họa và thực hành với 8 led
7 đoạn )

Nếu kết nối mỗi một Port của Vi điều khiển với 1 led 7 đoạn thì tối đa kết nối được
4 led 7 đoạn. Mặt khác nếu kết nối như trên sẽ hạn chế khả năng thực hiện các công việc
khác của Vi điều khiển. Cho nên cần phải kết nối, điều khiển nhiều led 7 đoạn với số
lượng chân điều khiển từ Vi điều khiển càng ít càng tốt. Có hai giải pháp: một là sử dụng
các IC chuyên dụng cho việc hiện thị led 7 đoạn, hai là kết nối nhiều led 7 đoạn vào cùng
một đường xuất tín hiệu hiển thị. Nội phần này sẽ đề cập đến cách kết nối nhiều led 7
đoạn theo giải pháp thứ 2.

Mắt người có đặc điểm sinh lí là chỉ thu nhận 24 hình/giây để tổng hợp các hình
ảnh về thế giới xung quanh. Nếu một tín hiệu ánh sáng có chu kì sáng tắt hơn 24 lần
trong 1 giây, mắt người luôn cảm nhận đó là một nguồn sáng liên tục. Để minh họa cho
điều này, bạn hãy lấy các chương trình đã thực hiện với led đơn và làm ngắn thời gian
delay lại, đến một giá trị nào đó bạn sẽ thấy các led đều sáng liên tục.

Để kết nối nhiều led 7 đoạn vào vi điều khiển thực hiện như sau: nối tất cả các chân
nhận tín hiệu của tất cả các led 7 đoạn (chân abcdefgh) cần sử dụng vào cùng 1 Port,
trong ví dụ, 8 led 7 đoạn có các chân nhận tín hiệu cùng được được nối với P0. Dùng các
ngõ ra còn lại của Vi điều khiển điều khiển on/off cho led 7 đoạn, mỗi ngõ ra điều khiển
ON/OFF cho 1 led 7 đoạn,(ON: led 7 đoạn được cấp nguồn để hiển thị, OFF: led 7 đoạn
bị ngắt nguồn nên không hiển thị được).

Sơ đồ kết nối thực tế như hình dưới:

Click vào hình để xem ở kích thước thực


Trong sơ đồ trên, led 7 đoạn được sử dụng là loại có Anode chung, với tất cả các
chân nhận tín hiệu được kết nối với Port 0 đã qua điện trở hạn dòng. Để điều khiển
ON/OFF cho các led 7 đoạn, sử dụng transitor loại PNP, transitor này nhận dòng điều
khiển từ một ngõ ra của Vi điều khiển, led 7 đoạn sẽ được ON khi tín hiệu từ vi điều
khiển đến transitor ở mức 0. Có thể sử transitor loại A564 hoặc 2N3905 hoặc một
transitor PNP khác có thông số phù hợp. Các điện trở 4.7K và điện trở treo 4.7K đảm bảo
transitor luôn hoạt động ở chế độ ngắt/dẫn(đảm bảo khi led 7 đoạn đang ở trạng thái OFF
sẽ bị tắt hoàn toàn, không bị sáng mờ mờ).

Tại mỗi thời điểm, chỉ nên cho Vi điều khiển điều khiển cho 1 led 7 đoạn hoạt động,
do đó tại mỗi thời điểm chỉ nên có 1 ngõ ra duy nhất nối với transitor ở mức 0. Tại mỗi
thời điểm chỉ có một led 7 đoạn được ON nên sẽ không xảy ra tình trạng quá tải cho tải
và quá tải cho vi điều khiển khi điều khiển nhiều led 7 đoạn.

Trong sơ đồ kết nối trên, chẳng hạn cần hiển thị số 451, qui ước thứ tự các led 7 được
đếm từ phải sang trái, như vậy cần làm cho led 7 đoạn thứ nhất hiển thị số 1, led 7 đoạn
thứ hai hiện thị số 5, led 7 đoạn thứ 3 hiện thị số 4, các led còn lại không hiện thị. Đầu
tiên OFF tất cả các led 7 đoạn. Kế tiếp xuất mã hiển thị led 7 đoạn để hiển thị số 1, ON
led 7 đoạn thứ nhất, lúc này dòng điện chỉ đi qua led 7 đoạn thứ nhất, làm cho led 7 đoạn
thứ nhất hiển thị số 1, thời gian ON trong khoảng vài chục µs(1µs=1/10-6s). Kế tiếp xuất
mã hiển thị led 7 đoạn hiển thị số 5, OFF led 7 đoạn thứ nhất và đồng thời ON led 7 đoạn
thứ 2, lúc này chỉ có led 7 đoạn thứ hai hiển thị và hiển thị số 5. Tiếp theo xuất mã hiển
thị led 7 đoạn hiện thị số 4, OFF led 7 đoạn thứ hai và ON led 7 thứ ba, lúc này chỉ duy
nhất led 7 đoạn thứ ba hiển thị số 4. Cứ thế lặp lại quá trình trên liên tục. Thời gian
ON/OFF chỉ trong khoảng vài chục µs, và tại mỗi thời điểm chỉ có mỗi một led 7 đoạn
hiện thị số của chính nó, vì vậy mắt người thấy 3 led 7 đoạn không sáng đứt quãng, mà
sáng liên tục, mỗi led hiển thị 1 số riêng của nó. Thực hiện tương tự để mở rộng số lượng
led 7 đoạn cần sử dụng.

You might also like