Chương 14:
LẬP TRÌNH CHO VI MẠCH
8251 A
Để thực hiện việc truyền tin nối tiếp, vi xử lý phải thông
tin cho 8251 A tất cả các tín hiệu thông tin như: Mode hoạt
động, tốc độ Baud, các bit: STOP, START, Parity,….
Do đó trước khi truyền dữ liệu, một tập hợp các từ điều
khiển phải được tải vào thanh ghi điều khiển 16 bit của 8251 A.
Ngoài ra vi xử lý còn phải kiểm tra sự sẳn sàng của một ngoại vi
bằng cách đọc thanh ghi trạng thái.
Từ điều khiển được chia thành hai dạng các từ chọn Mode và từ
lệnh. Từ chọn Mode nêu rõ các đặt tính chung của hoạt động
(như tốc độ Baud chẳn lẻ, số lượng các bit dừng).
Từ lệnh cho phép việc truyền hoặc nhận dữ liệu từ trạng
thái cung cấp thông tin liên quan đến trạng thái thanh ghi và các
lỗi trong việc truyền.
Hình 2.3: Trình bày sự đònh nghóa cho các từ này.
Để khởi tạo 8251 A ở Mode đồng bộ, một trình tự nào đó
của các từ điều khiển phải tuân theo. Sau khi Reset (Reset hệ
thống hoặc thông qua lệnh), một từ chọn Mode phải được ghi
vào thanh ghi điều khiển theo sau một từ lệnh. Bất kỳ từ điều
khiển nào được ghi vào thanh ghi điều khiển ngay sau một từ
chọn Mode sẽ được hiểu như là một từ lệnh. Điều đó có nghóa là
một từ lệnh có thể thay đổi bất cứ lúc nào trong quá trình hoạt
động.
Hình 2.4 . Cấu trúc từ lệnh.
Tuy nhiên, 8251 A sẽ được đặt lại trước lúc ghi một từ
chọn Mode mới và có thể đặt lại nhờ sử dụng bit Reset bên
trong (D
6
) trong từ lệnh.
Thanh ghi điều khiển:
Dùng để ghi:
Từ điều khiển chế độ (chọn Mode)
Từ lệnh
Dùng để đọc từ trạng thái
Hình 2.5. Cấu trúc từ trạng thái
Bit trạng thái TxRDY khác với chân TxRDY. Bit TxRDY
không được đònh điều kiện bởi CTS và TxEN. Chân TxRDY phụ
thuộc vào điều kiện của cả hai CTS và TxEN.
Phát một kýtự:
Để phát một ký tự, bit TxEN trong thanh ghi lệnh phải ở
logic cao và chân
CTS
phải ở mức thấp.
Đợi cho đến khi chân TxRDY ở mức cao hoặc cho đến khi bit
TxRDY trong tranh ghi trạng thái ở mức cao.
Ghi ký tự cần phát vào thanh ghi đệm phát.
Thu một ký tự:
Để thu một ký tự và kiểm tra trạng thái lỗi của ký tự này,
cần phải thực hiện các bước sau:
Đợi cho đến khi RxRDY ở mức cao hoặc cho đến khi bit
RxRDY trong thanh ghi trạng thái ở mức cao.
Đọc trạng thái lỗi từ thanh ghi trạng thái (có thể kết hợp
với các bước trước khi đọc bit RxRDY).
Đọc ký tự từ thanh ghi đệm thu.
Đặt lại trạng thái lỗi bằng cách ghi bit ER = 1 trong thanh
ghi lệnh.
Tốc độ phát và thu bit được quyết đònh bởi tần số của xung
đồng hồ đưa vào chân
RxC
và
TxC
chia theo hệ số (1,16 hoặc 64)
đã được chọn trong từ chọn Mode.
2.4.GIAO TIẾP GIỮA 8251 A VỚI VI XỬ LÝ 8085 A
Đối với hệ thống này, 8251 A phải được khởi tạo ở Mode
bất đồng bộ nối tiếp vì xung đồng hồ cấp cho
TxC
và
RxC
khác
với xung đồng hồ của máy vi tính.
Xung đồng hồ cấp cho hai phần thu và phát của 8251 A
được lấy từ ngõ OUT …
Muốn cho 8251 A truyền dữ liệu với tốc độ bao nhiêu
Baud chỉ cần lập trình số đếm cho bộ đếm COUNTER và lập
trình hệ số tốc độ (1, 16 và 64) trong 8251 A.
Thông tin giữa máy thu phát ký tự và máy tính được truyền
tải thông qua cáp chuẩn RS232C.
Bảng 2.2: Tên các chân cấm của RS-232C
Châ
n
Chức năng (tên gọi) Lối vào – ra
1
2
3
4
DCD – Data Carrier Detect
RxD – Receive Data
TxD – Transmit Data
DTR – Data Teminal Ready
Lối vào
Lối vào
Lối ra
Lối ra