Mặc dù tự thân cồng logic không thể lưutrữ được dữ liệu nhưng khi biết kết hợp với nhau theo một cách thức cho phép tuỳ theomức độ phức tạp, quy mô kết hợp mà sẽ có mạch chốt, mạch lật,
Trang 1CHƯƠNG DẪN NHẬP1.1 Đặt vấn đề
Thông tin liên lạc là vấn đề được quan tâm trong xã hội Ngay từ ngày xưa, conngười đã biết vận dụng những gì đã có sẵn để truyền tin như: lửa, âm thanh, các dấuhiệu…
Hiện nay quảng cáo bằng hình thức quang báo không còn mới và được ứng dụngtrong nhiều lĩnh vực Nó có thể được sử dụng để quảng cáo tên nhãn hiệu sản phẩm, têncủa một công ty hay tên của một cửa hàng nào đó
Trong đó có quang báo dùng Led Ma Trận Đặc điểm lớn nhất của quảng báo dùngLed Ma Trận là có thể linh hoạt thay đổi nội dung tùy ý mà các quang báo khác khó màlàm được
phương pháp truyền thống như panô, áp phích không có được như việc điều chỉnhthông tin một cách nhanh chóng bằng cách thay đổi chương trình bằng bàn phím hayđược điều khiển thông qua máy vi tinh
ĐIỀU KHIỂN PIC18F4620 NHẬP KÝ TỰ TỪ BÀN PHÍM HEX HIỂN THỊ RA LED MA TRẬN
Nội dung nghiên cứu của đề tài chính là tạo ra một bảng quang báo ứng dụng trongviệc hiển thị thông tin
1.2 Giới hạn đề tài
Do thời gian thực hiện đề tài ít và kiến thức còn hạn chế nên đề tài của của chúng
em chỉ dùng lại việc nhập ký tự từ bàn phím, hiển thị ra led ma trận và tạo hiệu ứngchạy chữ không sử dụng ROM và RAM ngoại, các ký tự còn giới hạn, độ sáng chữhiển thị chưa đều, chưa tạo nhiều hiệu ứng
Trang 21.3 Mục đích đề tài
Trong quá trình nghiên cứu và thực hiện đề tài này nhằm giúp người học:
- Tăng khả năng tự nghiên cứu cũng như tự học
-Tìm hiểu vi điều khiển PIC 18F4620
- Các phương pháp điều khiển và xử lý dữ liệu cho bảng led ma trận
- Tìm hiểu phương pháp lập trình C
- Tìm hiểu các linh kiện
1.4.2 Mục đích gần
-Tìm hiểu nguyên lý hoạt đông của từng linh kiên
- Tìm hiểu nguyên lý hiển thị led ma trận
- Nguyên lý quét phím HEX
Trang 3CHƯƠNG II LED MA TRẬN VÀ BẢNG QUANG BÁO
Ngày nay khi nhu cầu về thông tin quảng cáo rất lớn, việc áp dụng các phương tiện
kỹ thuật mới vào các lĩnh vực trên là rất cần thiết Khi bạn đến các nơi công cộng, bạn
dễ dàng bắt gặp những áp phích quảng cáo điện tử chạy theo các hướng khác nhau vớinhiều hình ảnh và màu sắc rất ấn tượng
2.1 Led ma trận
Ma trận LED bao gồm nhiều LED cùng
nằm trong một vỏ chia thành nhiều cột và
hàng, mỗi giao điểm giữa hàng và cột có thể
có 1 LED (ma trận LED một màu) hay nhiều
LED (2 LED tại một vị trí tạo thành ma trận
LED 3 màu) Để LED tại một vị trí nào đó
sáng thì phải cấp hiệu điện thế dương giữa
Anode và Cathode
Trên cơ sở cấu trúc như vậy, ta có thể mở rộng hàng và cột của ma trận LED để tạothành các bảng quang báo
Hình 2.1 LED ma trận 5x7
Trang 4Đề tài sử dụng loại Led ma trận cathode chung (cathode cột) vì dễ dàng tìm muađược Led ma trận loại này trên thị trường linh kiện điện tử ở nước ta, đa dạng về kích
cỡ và màu sắc, có loại indoor, outdoor
2.1.3 Hình dạng thực tế và sơ đồ chân led ma trận
2.1.4 Sơ đồ nguyên lý led ma trận
Theo kích cỡ Theo màu sắc Theo hình dạng điểm chấm
Hình 2.2 Hình dạng thực tế và sơ đồ chân led ma trận 8x8
Bảng 2.1 Bảng phân loại LED ma trận
Trang 5Led ma trận m×n là Led ma trận có m cột và n hàng, tùy theo từng loại mà con những
led một màu hay 2 màu để tạo ra màu sắc khác nhau
Bảng hiện thị ma trận LED ( dot-matran display) co rất nhiều loại và đủ kích cỡ tonhỏ khác nhau, mỗi bảng gồm có rất nhiều LED đơn được ghép lại với nhau trong mộtkhối
Trong khối đó các LED đơn được sắp sếp theo các hang va các cột, tại mỗi giao điểmcủa hang với cột là một LED đơn, và người ta thường phân biệt các loại bảng LED theo
số hang và cột Một bảng LED 5x7 tức là có 5 cột dọc và 7 hàng ngang, tổng cộng sẽ
có 5x7=35 LED đơn được ghép lại Cũng nhu vậy một bảng 8x8 là có 8 hàng và 8 cột,
do 64 LED đơn ghép được lại Và nhiều loại cỡ to hơn như 6x16 hay 32x32……
Hình 2.3 Cấu trúc kết nối của led ma trận
Trên thị trường ta thường thấy các bảng LED cỡ lớn, dài hàng mét với đủ kích cở.Các bảng Led đó là do hàng nghìn Led đơn ghép lại Khi thiết kế những bảng LED tonhư vậy ta cần chú ý đến sự đồng điều về độ sang cùa LED để việc hiện thị được đồngđiều Bên cạnh đó vấn đề cấp nguồn cho mạch cũng cần được chú ý và thiết kế cho phùhợp Trong đề tài này em sử dụng 16 LED 8x8 cho việc hiện thị
2.2 Một số hình ành về bảng quang báo thực tế
Trang 62.2.1 Mẫu một dòng chữ (16 X 240 Điềm ảnh):
Hình 2.2.1 Mẫu một dòng chữ
Các thông số kỹ thuật:
- Kích thước hiển thị: chiều cao 122mm, chiều dài tuỳ ý (thường là bội của 305mm)
- Độ phân giải (số điểm ảnh): 16 x 40 x (chiều dài hiển thị/305)
- Kết nối chuẩn (Máy tính, cổng COM) tuỳ chọn (RJ45, Bàn phím)
- Bảng này có thể hiển thị một dòng chữ cao 122mm (16 điểm ảnh - như hình trên)hoặc hai dòng chữ cao 61mm (8 điểm ảnh) nhưng không dấu Tiếng Việt
- Kết nối chuẩn (Máy tính, cổng COM) tuỳ chọn (RJ45
2.2.2 Mẫu hai dòng chữ (32 X 240 Điềm ành)
Hình 2.2.2 Mẫu hai dòng chữ
Các thông số kỹ thuật:
- Kích thước hiển thị: chiều cao 244mm, chiều dài tuỳ ý (thường là bội của 305mm)
- Độ phân giải (số điểm ảnh): 32 x 40 x (chiều dài hiển thị/305)
- Kết nối chuẩn (Máy tính, cổng COM) tuỳ chọn ( RJ45)
- Bảng này có thể hiển thị hai dòng chữ cao 122mm (16 điểm ảnh – như hình trên)hoặc một dòng chữ cao 244mm (32 điểm ảnh - như hình dưới)
- Kết nối chuẩn (Máy tính, cổng COM) tuỳ chọn ( RJ45)
2.3 Bảng quang báo hiện thị led ma trận trong đồ án
Trang 7- Kích thước : chiều cao 12cm,chiều dài 48 cm
- Độ phân giải (số điểm ảnh):16 x 128
- Bảng này có khả năng hiển thị một dòng chữ cao 12 cm
- Hiển thị hai màu: xanh và đỏ
- Dùng ngôn ngữ lập trình CCS để lập trình cho vi xử lý PIC18F4620
Trang 8
CHƯƠNG III MẠCH CHỐT VÀ THANH GHI3.1 Mạch chốt
3.1.1 Mạch chốt cổng Nand
Hãy xem cấu tạo của mạch dưới đây :
Hình 3.1.3 Mạch chốt cổng Nand
Mạch gồm 2 cổng logicNand mắc chéo nhau, có 2ngõ vào là S (set : cónghĩa là đặt) và R (reset :
có nghĩa là đặt lại) 2 ngõ
ra kí hiệu là Q (đầu rabình thường) và Q (đầu rađảo, tức là có trạng tháilogic ngược lại với Q)
Vì lí do đối xứng nên hoạt động thiết lập và xoá mạch chốt ngược nhau
- Khi để ngõ vào thường nghỉ S= 1 R=1.Rõ ràng chưa thể biết ngõ ra Q và Q như thếnào
Hãy xét đến trạng thái trước đó:
Trang 9Vì vậy khi S=1 R=1 trạng thái ra không thay đổi tức là trước đó như thế nào thì sau vẫnvậy (Qo và Qo)
- Khi thiết lập và xoá cùng lúc S=0, R=0
Rõ ràng khi nãy cả 2 cổng NAND đều có mức vào là 0 nên mức ra là 1, đây là điềukiện không mong muốn vì đã quy ước Q và có trạng thái logic ngược nhau Hơn nữakhi S, R trở lại mức cao(1) thì sẽ không thể dự đoán Q và Q thay đổi; vì vậy trạng tháinày không được sử dụng còn gọi là trạng thái cấm
Như vậy, mạch có 2 trạng thái ra ổn định là 0 và 1; mạch có thể nhận tín hiệu số vào(trong trường hợp đơn giản này chỉ là 0 và 1) và đưa được nó ra, và từ đây khả năngnhớ (lưu trữ dữ liệu), đồng bộ, và một số điểm khác cũng có thể được thực hiện được
Ta sẽ tìm hiểu kĩ hơn ở những mạch sau đó Mạch hoạt động như ở trên được coi là 1mạch chốt, 1dạng mạch tuần tự cơ bản nhất
3.1.2 Chốt cổng NOR
Mạch chốt như trên có thể thay
thế 2 cổng nand bằng 2 cổng
NOR nguyên lí hoạt động
cũng tương tự nhưng ngõ vào
S, R tác động ở mức cao
Hình 3.1.2.1 Chốt cổng NOR
Trang 10Hình 3.1.2.2 Bảng trạng thái của mạch chốt cổng NOR
Thấy rằng các mạch tuần tự dù là mạch chốt đã khảo sát ở trên hay các mạch cao hơnthì đều được cấu tạo bởi cổng logic cơ bản Mặc dù tự thân cồng logic không thể lưutrữ được dữ liệu nhưng khi biết kết hợp với nhau theo một cách thức cho phép tuỳ theomức độ phức tạp, quy mô kết hợp mà sẽ có mạch chốt, mạch lật, ghi dịch hay hơn nữa
là các bộ nhớ, xử lý
3.1.3 Ứng dụng của mạch chốt
Mạch chốt như tên gọi của nó được sử dụng nhiều trong các hệ thống số cần chốt hayđệm dữ liệu trước khi được xử lý điều khiển hay truyền nhận Ngoài ra nó còn được sửdụng làm mạch chống dội và mạch tạo dạng sóng vuông
Mạch chống dội :
- Hiện tượng dội do các thiết bị cơ khí gây nên khi đóng ngắt chuyển mạch điện tử.Mạch chốt có thể được dùng để chống dội như đã thấy ở chương 1
- Mạch minh hoạ
Trang 11Hình 3.1.3.1 Chốt NAND chống dội
Mạch tạo dao động sóng vuông
Một mạch chốt cơ bản kết hợp với một số linh kiện R , C để tạo nên mạch dao độngsóng vuông do ngõ ra lật trạng thái qua lại giữa mức 1 và 0 Mạch thiết lập và xoá tựđộng theo thời hằng nạp xả của tụ C và trở R
- Tần số dao động tính theo giá trị R, C là
f = ½(R+R3)C
- Mạch minh hoạ
Hình 3.1.3.2 Ứng dụng chốt tạo dao động sóng vuông
Trang 123.2 Thanh ghi
Chúng đều có thể lưu trữ (nhớ 1 bit) và chỉ khi có xung đồng bộ thì bit đó mới truyền
tới ngõ ra (đảo hay không đảo) Bây giờ nếu ta mắc nhiều FF nối tiếp lại với nhau thì sẽnhớ được nhiều bit Các ngõ ra sẽ phần hoạt động theo xung nhịp ck Có thể lấy ngõ ra
ở từng tầng FF (gọi là các ngõ ra song song) hay ở tầng cuối (ngõ ra nối tiếp) Như vậymạch có thể ghi lại dữ liệu (nhớ) và dịch chuyển nó (truyền) nên mạch được gọi là ghidịch Ghi dịch cũng có rất nhiều ứng dụng đặc biệt trong máy tính, như chính cái têncủa nó: lưu trữ dữ liệu và dịch chuyển dữ liệu chỉ là ứng dụng nổi bật nhất
3.2.1 Cấu tạo
Ghi dịch có thể được xây dựng từ các FF khác nhau và cách mắc cũng khác nhau nhưng thường dùng FF D, chúng được tích hợp sẵn trong 1 IC gồm nhiều FF (tạo nên ghi dịch n bit) Hãy xem cấu tạo của 1 ghi dịch cơ bản 4 bit dùng FF D
Hình 3.2.1.1 Ghi dịch 4 bit cơ bản
3.2.2 Hoạt động
Thanh ghi, trước hết được xoá (áp xung CLEAR) để đặt các ngõ ra về 0 Dữ liệu cần dịch chuyển được đưa vào ngõ D của tầng FF đầu tiên (FF0) Ở mỗi xung kích lên của đồng hồ ck, sẽ có 1 bit được dịch chuyển từ trái sang phải, nối tiếp từ tầng này qua tầng
Trang 13khác và đưa ra ở ngõ Q của tầng sau cùng (FF3) Giả sử dữ liệu đưa vào là 1001, sau 4 xung ck thì ta lấy ra bit LSB, sau 7 xung ck ta lấy ra bit MSB
Nếu tiếp tục có xung ck và không đưa thêm dữ liệu vào thì ngõ ra chỉ còn là 0 (cácFFđã reset : đặt lại về 0 hết Do đó ta phải “hứng” hay ghim dữ liệu lại Một cách làm l
sử dụng 2 cổng AND, 1 cổng OR và 1 cổng NOT như hình dưới đây
Hình 3.2.2.1 Cho phép chốt dữ liệu trước khi dịch ra ngoài
Dữ liệu được đưa vào thanh ghi khi đường điều khiển R/W control ở mức cao
(Write).Dữ liệu chỉ được đưa ra ngoài khi đường điều khiển ở mức thấp (Read)
Có nhiều cách chia loại thanh ghi dịch (SR)
- Theo số tầng FF (số bit) : SR có cấu tạo bởi bao nhiêu FF mắc nối tiếp thì có bấy nhiêu bit (ra song song) Ta có SR 4 bit, 5 bit, 8 bit, 16 bit …
Có thể có SR nhiều bit hơn bằng cách mắc nhiều SR với nhau hay dùng công nghệ CMOS (các máy tính sử dụng SR nhiều bit)
- Theo cách ghi dịch có:
SISO vào nối tiếp ra nối tiếp
Trang 14SIPO vào nối tiếp ra song song
PISO vào song song ra nối tiếp
PIPO vào song song ra song song
- Theo chiều dịch có SR trái, phải, hay cả 2 chiều
- Theo mạch ra có loại thường và 3 trạng thái
Loại vào nối tiếp ra song song và ra nối tiếp
Loại vừa khảo sát ở mục 1 thuộc loại ghi dịch vào nối tiếp ra nối tiếp Đây cũng là cấu trúc của mạch ghi dịch vào nối tiếp ra song song Dữ liệu sẽ được lấy ra ở 4 ngõ Q của
4 tầng FF, vì chung nhịp đồng hồ nên dữ liệu cũng được lấy ra cùng lúc
Hình 3.2.2.2 Mạch ghi dịch vào nối tiếp ra song song
Bảng dưới đây cho thấy làm như thế nào dữ liệu được đưa tới ngõ ra 4 tầng FF
Loại được nạp song song (vào song song) ra nối tiếp và song song
Bây giờ muốn đưa dữ liệu vào song song (còn gọi là nạp song song) ta có thể tận dụng ngõ vào không đồng bộ Pr và Cl của các FF để nạp dữ liệu cùng một lúc vào các
FF Như vậy có thể dùng thêm 2 cổng nand và một cổng not cho mỗi tầng Mạch mắc như sau
Trang 15Hình 3.2.2.3 Mạch ghi dịch nạp song song
Mạch hoạt động bình thường khi nạp song song ở thấp như đã nói Khi nạp song song WRITE = 1 cho phép nạp
ABCD được đưa vào Pr và Cl đặt và xoá để Q0 = A, Q1 = B, … Xung ck và ngõ vàonổi tiếp không có tác dụng (vì sử dụng ngõ không đồng bộ Pr và Cl)
Một cách khác không sử dụng chân Pr và Cl được minh hoạ như hình dưới đây.Các cổng nand được thêm vào để nạp các bit thấp D1, D2, D3 Ngõ WRITE/SHIFT dùng để
cho phép nạp (ở mức thấp) và cho phép dịch (ở mức cao) Dữ liệu nạp và dịch vẫn được thực hiện đồng bộ như các mạch trước
Trang 16Hình 3.2.2.4 Mạch ghi dịch nạp song song ra nối tiếp
Với mạch hình 3.2.4b ngõ ra dữ liệu là nối tiếp, ta cũng có thể lấy ra dữ liệu song song như ở hình 3.2.5, Cấu trúc mạch không khác so với ở trên Dữ liệu được đưa vào cùng lúc và cũng lấy ra cùng lúc (mạch như là tầng đệm và hoạt động khi có xung ck tác động lên
Hình 3.2.2.5 Mạch ghi dịch vào song song ra song song
Trang 17Để dịch chuyển cả 2 chiều, có thể nối mạch như hình dưới đây :
Hình 3.2.2.6 Mạch ghi dịch cho phép dịch chuyển cả 2 chiều
Với mạch trên, các cổng NAND và đường cho phép dịch chuyển dữ liệu trái hay phải Bảng dưới đây minh hoạ cho mạch trên : dữ liệu sẽ dịch phải 4 lần rồi dịch trái 4 lần
Để ý là thứ tự 4 bit ra bị đảo ngược lại so với chúng ở trên
Nhận thấy rằng các ghi dịch mô tả ở trên đều dùng các FF rời, rồi phải thêm nhiều cổnglogic phụ để tạo các loại SR khác nhau Trong thực tế ghi dịch được tích hợp sẵn các
FF và đã nối sẵn nhiều đường mạch bên trong; người sử dụng chỉ còn phải làm một số đường nối bên ngoài điều khiển các ngõ cho phép thôi Các SR cũng được tích hợp sẵn các chức năng như vừa có thể dịch trái dịch phải vừa vào nối tiếp vừa nạp song song
Ở đây là một số ghi dịch hay được dùng :
7494 : 4bit vào song song, nối tiếp; ra nối tiếp
7495/LS95 : 4 bit, vào song song/nối tiếp; ra song song; dịch chuyển trái phải7495/LS96 : 5 bit, vào nối tiếp/song song; ra song song nối tiếp
74164/LS164 : 8 bit vào song song ra nối tiếp
Trang 1874165/LS765 : 8 bit, vào song song/nối tiếp; ra nối tiếp bổ túc
74166/LS166 : 8 bit; vào song song/nối tiếp; ra nối tiếp; có thể nạp đồng bộ
74194/LS194 : 4 bit vào song song/nối tiếp; ra song song; nạp đồng bộ dịch chuyển
trái phải74195/LS195 : 4 bit, vào song/nối tiếp; ra song song; tầng đầu vào ở JK
74295/LS295 : như 74194/LS194 nhưng ra 3 trạng thái
74395/LS295 : 4 bit vào song song; ra song song 3 trạng thái
Trang 19Hình 3.2.2.8 Cấu trúc bên trong ghi dịch 74LS95
Sơ đồ cấu tạo và bảng hoạt động của IC như hình trên Các chế độ hoạt động của nó như sau :
Dữ liệu vào ở 4 ngõ ABCD
Đưa điều khiển kiểu lên cao
Khi có ck1 hay ck2 thì dữ liệu sẽ được nạp vào đồng thời các tầng của ghi dịch ở cạnh lên đầu của xung ck
Thanh ghi dịch đóng vai trò cực kì quan trọng trong việc lưu trữ, tính toán số học và logic Chẳng hạn trong các bộ vi xử lí, máy tính đều có cấu tạo các thanh ghi dịch; trong vi điều khiển (8051) cũng có các ghi dịch làm nhiều chức năng hay như trong
Trang 20nhõn chia, ALU đó xột ở chương 2 ghi dịch cũng đó được đề cập đến Ở đõy khụng đi vào chi tiết mà chỉ núi khỏi quỏt ngắn gọn về ứng dụng của chỳng.
Ic 74HC595
IC 74HC595, đõy là thanh ghi dịch 8-bit vào nối tiếp ra song song Ta sử dụng IC nàynhằm mục đích tiết kiệm chân của vi điều khiển để cho việc mở rụng sau này được dễ dàng
Chức năng cỏc chõn cũa IC 74HC595
- Chõn DATA-IN (14) để đưa dữ liệu nối tiếp vào
- Chõn CLK (11) đưa xung đồng hồ
-Chõn LATCH(12) để chốt dữ liệu được gửi ra
8 đầu ra được nối đến 8 hàng của Led thụng qua
mạch đệm dũng (QA,QB,QB,QC,QD,QE,QF,QH)
- VCC và GND : chõn cấp nguồn cho IC
- Chõn QH’ chõn dựng để mở rộng nếu cú
ghộp hơn 79HC595 Hỡnh 3.4.1 Sơ đồ chõn của74HC595
Hỡnh 3.4.2 Cấu tạo bờn trong của 74HC595
Nguyờn tắc hoạt động
Trang 21Cho 1 bit vào SERIAL DATA INPUT và tác động vào chân SHIFT CLOCK, bít dữliệu (1) sẽ được đặt sẳn ở ngõ ra QA của 74HC595, tiếp tục đưa vào bít (2) và tác độngvào SHIFT CLOCK thì bít dữ liệu (1) sẽ đặt sẳn ở ngõ ra QB, bít dữ liệu (2) sẽ đượcđặt sẳn ở ngỏ ra QA, tương tư đến bít cuối cùng Chú ý là dữ liệu chỉ được chuẩn bị sẳn
ở các ngõ ra và chỉ được xuất ra khi tác động vào chân LATCH CLOCK Bạn có thểxuất dữ liệu bất cứ lúc nào không phải cần chuẩn bị đến bít cuối cùng
3.2.3 Lưu trữ và dịch chuyển dữ liệu
Đây là ứng dụng cơ bản và phổ biến nhất của chúng Ghi dịch n bit sẽ cho phép lưu trữ được n bit dữ liệu một thời gian mà chừng nào mạch còn được cấp điện Hay nói cách khác dữ liệu khi dịch chuyển đã được trì hoãn một khoảng thời gian, nó tuỳ thuộc vào :
- Số bit có thể ghi dịch (số tầng FF cấu tạo nên ghi dịch)
- Tần số xung đồng hồ
3.2.4 Tạo kí tự hay tạo dạng song điều khiển
Ta có thể nạp vào ghi dịch, theo cách nạp nối tiếp hay song song, một mã nhị phân của một chữ nào đó (A, B, ) hay một dạng sóng nào đó Sau đó nếu ta nối ngõ ra nối tiếp của ghi dịch vòng trở lại ngõ vào nối tiếp thì khi có xung ck các bit sẽ dịch chuyển vòng quanh theo tốc độ của đồng hồ Cách này có thể điều khiển sáng tắt của các đèn (sắp xếp trên vòng tròn hay cách nào khác) Như mô phỏng sau là dạng sáng tắt của đènled Với tải cổng suất thì cần mạch giao tiếp công suất như thêm trans, rờ le, SCR, đã nói ở chương 1 cũng sẽ được dùng Cũng có thể tạo ra dạng sóng tín hiệu tuần hoàn cho mục đích thử mạch bằng cách này Ta có thể thay đổi dạng sóng bằng cách thay đổi mã số nhị phân nạp cho ghi dịch, và thay đổi tần số xung kích ck được cấp từ mạch dao động ngoài từ 0 đến 200MHz tuỳ loại mạch ghi dịch
Trang 22Hình 3.4.3 Tạo dạng sóng điều khiển bởi ghi dịch
3.2.5 Chuyển đổi dữ liệu nối tiếp sang song song và ngược lại
Các máy tính hay các bộ vi xử lí khi giao tiếp với nhau hay với các thiết bị ngoài thường trao đổi dữ liệu dạng nối tiếp khi giữa chúng có một khoảng cách khá xa Ngoàicách dùng các bộ dồn kênh tách kênh ở 2 đầu truyền mà ta đã nói ở chương 2 thì ghi dịch cũng có thể được dùng Các ghi dịch chuyển song song sang nối tiếp sẽ thay thế cho mạch dồn kênh và các ghi dịch chuyển nối tiếp sang song song sẽ thay thế cho mạch tách kênh Bên cạnh ghi dịch, cũng cần phải có các mạch khác để đồng bộ, chốngnhiễu, rò sai… nhằm thực hiện quá trình truyền nối tiếp hiệu quả
Hình 3.4.4 Truyền dữ liệu nối tiếp
3.2.6 Bus truyền dữ liệu
Trang 23Bây giờ liệu với 8 đường dữ liệu song song vừa nhận được từ tách kênh đó (còn gọi là
1 byte), ta có thể dùng chung cho nhiều mạch được không? Sở dĩ có yêu cầu đó là vì trong máy vi tính có rất nhiều mạch liên kết với nhau bởi các đường dữ liệu địa chỉ gồm nhiều bit dữ liệu 8, 16, 32… mà ta đã biết đến nó với cái tên là bus Vậy bus chính
là các đường dữ liệu dùng chung cho nhiều mạch (chẳng hạn bus giữa các vi xử lí, các chíp nhớ bán dẫn, các bộ chuyển đổi tương tự và số,…
Chỉ có một đường bus mà lại dùng chung cho nhiều mạch, do đó để tránh tranh chấp giữa các mạch thì cần phải có một bộ phận điều khiển quyết định cho phép mạch nào được thông với bus, các mạch khác bị cắt khỏi bus Vậy ở đây thanh ghi hay các bộ đệm 3 trạng thái được dùng
Hình dưới minh hoạ cho đường bus 8 bit nối giữa vi xử lí với bộ đếm 8 bit, bàn phím,
và bộ 8 nút nhấn
Hình 3.4.5 Bus dữ liệu
Trang 24Giả sử rằng cả thiết bị đều cần giao tiếp với vi xử lí, nhưng chỉ có một đường truyền nếu tất cả đồng loạt đưa lên thì có thể bị ảnh hưởng lẫn nhau giữa các dữ liệu, và thông tin nhận được là không chính xác Do đó ở đây vi xử lí sẽ quyết định: chẳng hạn nó đặt ngõ OE1 cho phép bộ đếm cho mạch đếm đưa dữ liệu lên bus còn chân OE2 và OE3 ngưng làm dữ liệu từ bàn phím và nút nhấn bị ngắt (chờ) tức ngõ ra các bộ đệm hay thanh ghi 3 trạng thái ở trạng thái tổng trở cao Tương tự khi vi xử lí cần giao tiếp với các mạch khác Với tốc độ xử lí hàng trăm hàng ngàn MHz thì việc dữ liệu phải chờ là không đáng kể do đó giữa các thiết bị giao tiếp với nhau rất nhanh và dường như đồng thời.
3.3 Giải mã và mã hóa
3.3.1 Mả hóa
Mã hóa và giải mã không có gì xa lạ và là tất yếu trong đời sống chúng ta Nó đượcdùng để dễ nhớ, dễ đặt, dễ làm,…là quy ước chung cũng có thể phổ biến cũng có thể bímật Chẳng hạn dùng chữ để đặt tên cho 1 con đường, cho 1con người; dùng số trong
mã số sinh viên, trong thi đấu thể thao; quy ước đèn xanh, đỏ, vàng tương ứng là chophép đi,đứng, dừng trong giao thông; rồi viết bức thư sử dụng chữ viết tắt, kí hiệu riêng
để giữ bí mật hay phức tạp hơn là phải mã hoá các thông tin dùng trong tình báo, vv…Thông tin đã được mã hoá rồi thì khi dũng cũng phải giải mã nó và ta chỉ giải được khichấp nhận, thực hiện theo đúng những quy ước, điều kiện có liên quan chặt chẽ tới mãhoá Trong mạch số, tất nhiên thông tin cũng phải được mã hoá hay giải mã ở dạngsố.Trong những mục này, ta sẽ xem xét cụ thể cách thức, cấu trúc, ứng dụng của mãhoá giải mã số như thế nào
Trong các hệ thống số kể cả viễn thông, máy tính, các đường điều khiển tuỳ chọn hay
dữ liệu được truyền đi hay xử lí đều phải ở dạng số hệ 2 chỉ gồm 1 và 0; có nhiềuđường tín hiệu chỉ có 1 bit như đường điều khiển mở nguồn cho mạch ở mức 1; rồi cónhiều đường địa chỉ nhiều bit chẳng hạn 110100 để CPU xác định địa chỉ trong bộ nhớ;
Trang 25rồi dữ liệu dạng hex gửi xuống máy in cho in ra kí tự Tất cả các tổ hợp bit đó được gọi
là các mã số (code) hay mã Và mạch tạo ra các mã số gọi là mạch mã hoá (lập mã:encoder)
Mã hóa 8 sang 3 đường
Mạch mã hoá 8 đường sang 3 đường còn gọi
là mã hoá bát phân sang nhị phân (có 8 ngõ
vào chuyển thành 3 ngõ ra dạng số nhị phân
3 bit Trong bất cứ lúc nào cũng chỉ có 1
ngõ vào ở mức tích cực tương ứng với chỉ
Hình 3.3.1 1Khối mã hoá 8 sang 3
Bảng 3.3.1.1: Bảng trạng thái mạch mã hoá 8 sang 3
Từ bảng trên, ta có :
Trang 26Y0 = I1 + I3 + I5 + I7
Y2 = I4 + I5 + I6 +I7
Dựa vào 3 biểu thức trên ta có thể vẽ được mạch logic như hình dưới đây :
Hình 3.3.1.2 Cấu trúc mạch mã hoá 8 sang 3
Mã hóa 10 đường sang 8 đường
Mạch gồm bàn phím 10 phím nhấn từ SW0 đến SW9 Các phím thường hở để cácđường I0 đến I9 ở thấp do có điện trở khoảng nối xuống mass Trong 1 thời điểm chỉ có
1 phím được nhấn để đường đó lên cao, các đường khác đều ở thấp Khi 1 phím nào đóđược nhấn thì sẽ tạo ra 1 mã nhị phân tương ứng và sẽ làm sáng led nào nối với bit 1của mã số ra đó Mã này có thể được bộ giải mã sang led 7 đoạn để hiển thị
Ví dụ khi nhấn phím SW2 mã sẽ tạo ra là 0010 và led hiển thị số 2 Như vậy mạch đã
sử dụng 1 bộ mã hoá 10 đường sang 4 đường hay còn gọi là mạch chuyển đổi mã thậpphân sang BCD
Trang 27Hình 3.3.1.3 Mạch mã hoá 10 sang 4 và đèn led hiển thị
Rõ ràng với 10 ngõ vào, 4 ngõ ra; đây là 1 bài toán thiết kế mạch logic tổ hợp đơn giản
sử dụng các cổng nand như hình dưới đây :
Hình 3.3.1.4 Cấu trúc mạch mã hoá 10 sang 4
Trang 28Bảng 3.3.1.2 Bảng trang thái của mạch mã hoá 10 đường sang 4 đường
Trong thực tế hệ thống số cần sử dụng rất nhiều loại mã khác nhau như mã hex,nạp cho
vi điều khiển, mã ASCII mã hoá từ bàn phím máy tính dạng in kí tự rồi đến các mãphức tạp khác dùng cho truyền số liệu trên mạng máy tính, dùng trong viễn thông, quân
sự Tất cả chúng đều tuân theo quy trình chuyển đổi bởi 1 bộ mã hoá tương đương
3.3.2 Giải mã
Là mạch có chức năng ngược lại với mạch mã hoá tức là nếu có 1 mã số áp vào ngõvào thì tương ứng sẽ có 1 ngõ ra được tác động, mã ngõ vào thường ít hơn mã ngõ ra.Tất nhiên ngõ vào cho phép phải được bật lên cho chức năng giải mã Mạch giải mãđược ứng dụng chính trong ghép kênh dữ liệu, hiển thị led 7 đoạn, giải mã địa chỉ bộnhớ
Giải mã 3 sang 8
Mạch giải mã 3 đường sang 8 đường bao gồm 3 ngõ vào tạo nên 8 tổ hợp trạng thái,ứng với mỗi tổ hợp trạng thái được áp vào sẽ có 1 ngõ ra được tác động
Trang 29Hình 3.3.1.5 Khối giải mã 3 sang
8
Bảng 3.3.1.3 Bảng trạng thái của mạch giải
mã 3 sang 8
Từ bảng sự thật ta có thể vẽ được sơ đồ mạch logic của mạch giải mã trên
Hình 3.3.1.6 Cấu trúc mạch giải mã 3 sang 8
Rút gọn hàm logic sử dụng mạch giải mã :
Nhiều hàm logic có ngõ ra là tổ hợp của nhiều ngõ vào có thể được xây dựng từ mạchgiải mã kết hợp với một số cổng logic ở ngõ ra(mạch giải mã chính là 1 mạch tổ hợpnhiều cổng logic cỡ MSI) Mạch giải mã đặc biệt hiệu quả hơn so với việc sử dụng cáccổng logic rời trong trường hợp có nhiều tổ hợp ngõ ra
Ví dụ sau thực hiện mạch cộng 3 số X, Y, Z cho tổng là S và số nhớ là C thực hiệnbằng mạch giải mã :
Trang 30Giả sử mạch cộng thực hiện chức năng
logic như bảng sau :
Mạch giải mã BCD sang thập phân
74LS42 là IC làm nhiệm vụ giải mã 4 đường sang 10
đường Cấu tạo logic và bảng hoạt động của nó sẽ
minh hoạ rõ hơn cho mạch giải mã này :
001111
110011
010101
101011
010111
Trang 31Hình 3.3.1.8 Kí hiệu khối của 74LS42
Hình 3.3.1.9 Cấu trúc mạch của 74LS42, giải mã 4 sang 10
Bảng 3.3.1.4 Bảng trạng thái của 74LS42
Để ý là vì có 4 ngõ vào nên sẽ có 16 trạng tháilogic ngõ ra Ở đây chỉ sử dụng 10 trạng thái logic
Trang 32đầu, 6 trạng thái sau không dùng Với mạch giải mã 4 sang 16 thì sẽ tận dụng hết sốtrạng thái ra Một điểm nữa là các ngõ ra của 7442 tác động ở mức thấp
Về nguyên tắc ta có thể mã hoá từ n đường sang m đường và ngược lại giải mã từ mđường sang n đường, chức năng giữa mã hoá và giải mã không rõ rệt lắm, chúng đềulàm nhiệm vụ chuyển đổi từ mã này sang mã khác (những mạch ở trên đều nói đến mã
hệ 2, thực ra còn nhiều loại mã khác) Cũng chỉ có một số chúng được tích hợp sẵntrong IC như 7441, 7442 là giải mã BCD sang thập phân, 7443 là giải mã thừa 3 sangthập phân, …
Nhiều mạch giải mã còn có thêm mạch chịu dòng hay thế cao hơn mạch logic TTLthông thường nên còn gọi là mạch giải mã thúc
Mạch sau minh hoạ cách kết hợp mạch đếm sẽ học ở chương sau với mạch giải mã đểcung cấp các hoạt động định thời và định thứ tự, IC giải mã thúc 7445 được dùng vì tải
là động cơ có áp lớn dòng lớn ngoài sức cung cấp của các IC giải mã thường
Trang 33Hình 3.3.1.10 Ứng dụng 74LS45
Hình trên cho thấy, mạch đếm tạo ra 16 tổ hợp trạng thái cho mạch mã hoá Phải 4 chu
kì xung ck thì Q3 mới xuống thấp, cho phép động cơ được cấp nguồn; còn đèn được
mở chỉ sau 8 chu kì xung ck Thời gian mở của tải là 1 chu kì xung ck Ta có thể điềuchỉnh thời gian này từ mạch dao động tạo xung ck Về nguyên tắc hoạt động của mạchđếm 74LS90 ta sẽ tìm hiểu ở chương sau
Giải mã BCD sang led 7 đoạn
Một dạng mạch giải mã khác rất hay sử dụng trong hiển thị led 7 đoạn đó là mạch giải
mã BCD sang led 7 đoạn Mạch này phức tạp hơn nhiều so với mạch giải mã BCDsang thập phân đã nói ở phần trước bởi vì mạch khi này phải cho ra tổ hợp có nhiềungõ ra lên cao xuống thấp hơn (tuỳ loại đèn led anode chung hay cathode chung) đểlàm các đoạn led cần thiết sáng tạo nên các số hay kí tự
Led 7 đoạn
Trước hết hãy xem qua cấu trúc và loại đèn led 7 đoạn của một số đèn được cấu tạo bởi
7 đoạn led có chung anode (AC) hay cathode (KC); được sắp xếp hình số 8 vuông (nhưhình trên) ngoài ra còn có 1 led con được đặt làm dấu phẩy thập phân cho số hiện thị;
nó được điều khiển riêng biệt không qua mạch giải mã Các chân ra của led được sắpxếp thành 2 hàng chân ở giữa mỗi hàng chân là A chung hay K chung Thứ tự sắp xếpcho 2 loại như trình bày ở dưới đây
Trang 34
Hình 3.3.1.11 Cấu trúc và chân ra của 1 dạng led 7 đoạn
Hình 3.3.1.12 Led 7 đoạn loại anode chung và cathod chung cùng
với mạch thúc giải mã
Để đèn led hiển thị 1 số nào thì các thanh led tương ứng phải sáng lên, do đó, cácthanh led đều phải được phân cực bởi các điện trở khoảng 180 đến 390 ohm với nguồncấp chuẩn thường là 5V IC giải mã sẽ có nhiệm vụ nối các chân a, b, g của led xuốngmass hay lên nguồn (tuỳ A chung hay K chung)
74LS47
Trang 35Với mạch giải mã ở trên ta có thể dùng 74LS47 Đây là IC giải mã đồng thời thúc trựctiếp led 7 đoạn loại Anode chung luôn vì nó có các ngõ ra cực thu để hở và khả năngnhận dòng đủ lớn Sơ đồ chân của IC như sau :
Hình 3.3.1.13 Kí hiệu khối và chân ra 74LS47
Trang 36Hình 3.3.1.14 Cấu trúc bên trong của 74LS47 và dạng số hiển thị
Hoạt động của IC được tóm tắt theo bảng dưới đây
Trang 37Bảng 3.3.1.5 Bảng trạng thái của 74LS47
- Nhận thấy các ngõ ra mạch giải mã tác động ở mức thấp (0) thì led tương ứng sáng
- Ngoài 10 số từ 0 đến 9 được giải mã, mạch cũng còn giải mã được 6 trạng thái khác,
ở đây không dùng đến (ghi chú 2)
- Để hoạt động giải mã xảy ra bình thường thì chân LT và BI/RBO phải ở mức cao
- Muốn thử đèn led để các led đều sáng hết thì kéo chân LT xuống thấp (ghi chú 5)
- Muốn xoá các số (tắt hết led) thì kéo chân BI xuống thấp (ghi chú 3)
Khi cần giải mã nhiều led 7 đoạn ta cũng có thể ghép nhiều tầng IC, muốn xoá số 0 vônghĩa ở trước thì nối chân RBI của tầng đầu xuống thấp, khi này chân ra RBO cũngxuống thấp và được nối tới tầng sau nếu muốn xoá tiếp số 0 vô nghĩa của tầng đó (ghi
Trang 38chú 4) Riêng tầng cuối cũng thì RBI để trống hay để mức cao để vẫn hiển thị số 0 cuốicùng
Những IC giải mã thúc led 7 đoạn khác
Ngoài 74LS47 ra còn có một số IC cũng làm chức năng giải mã thúc led 7 đoạn được
kể ra ở đây :
Một số IC còn có khả năng tổng hợp mạch đếm, chốt và giả mã thúc trong cùng 1 vỏnhư 74142, 74143, 74144 thậm chỉ bao gồm cả led trong đó như HP5082, TIL308
IC giải mã thúc loại CMOS
-Họ CMOS cũng có các IC giải mã thúc led 7 đoạn tương ứng, ở đây giới thiệu qua về
Hình 3.3.1.15 Kí hiệu khối và chân ra của 4511
Trang 39Vì cấu trúc có sẵn mạch thúc 8421 trong nó nên 4511 còn có thể thứ trực tiếp thúc haythúc được tải lớn hơn như đèn khí nóng sáng, tinh thể lỏng, huỳnh quang chân không Những ứng dụng chính của nó là mạch thúc hiển thị trong các bộ đếm, đồng hồDVM…, thúc hiển thị tính toán máy tính, thúc giải mã trong các bộ định thời, đồng hồkhác nhau
IC 74HC154
IC 74HC154 là Ic giải mã/ giải đa hợp Chíp CMOS này được dung để giải mã cột, 4đường vào , 16 đường ra 16 đường ra này được nối đến 16 cột để làm nhiệm vụ đưa tínhiệu cho phép ra cột
Chức năng các chân của IC 74HC154
- Chân Vcc, GND (24, 12) : nguồn cấp cho IC
- Chân A0, A1, A2, A3: ngõ chọn chân kênh ra
(mã nhi phân đưa vào)
- Các chân ngõ ra (chân 2chân 11 và
chân 13 chân17)
- Chân 18 và chân 19 chân cho phép hoặc
có thể mở rộng thêm IC 74HC154 Hình 3.3.1.16 Sơ đồ chân 74HC154
Nguyên lý hoạt động
Trong một thời điểm chỉ có 1 chân tích cự ở mức 0 các chân còn lại được tích cực mứccao,mã nhị phân ngõ vào bao nhiêu ở ngõ ra sẽ tích cự mức 0 đúng với vị trí của mứcđó
Vd:
+Cho dữ liệu mã nhị phân vào và A0=0, A1=0, A2=0, A3=0 Khi đó ngõ ra tương
ứng: chân số 1 bằng 0 và các chân còn lại đều bằng 1
+Cho dữ liệu mã nhị phân vào và A0=1, A1=0, A2=0, A3=0 Khi đó ngõ ra tương ứng:chân số 2 bằng 0 và các chân còn lại đều bằng 1
Trang 40Bảng 3.3.1.6: Bảng trạng thái của 74HC154