Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 140 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
140
Dung lượng
3,75 MB
Nội dung
1
Chương 5
Thiếtkế hệvixử lý
2
Nội dung
•Giảimãđịachỉ
•Giaotiếpbộ nhớ
•Giaotiếpvới khóa (switch) và bàn phím
•Giaotiếpbộ hiểnthị (Display)
–GiaotiếpvớiLED
–GiaotiếpvớiLCD
•Giaotiếp A/D-D/A
3
5.1 Giảimãđịachỉ
• Khi vixửlý gửimột địachỉ ra bus địachỉ, thì thông tin này phải được chuyển
thành lệnh cụ thể cho thiếtbị cụ thể. Giảimãđịachỉ thựchiệntácvụ này. Nó sử
dụng thông tin bus địachỉđểxác định thiếtbị nào sẽđượctruycập.
4
Phương pháp giảimãđịachỉ
Có 2 phương pháp giảimãđịachỉ:
1. Giảimãtoànphần (Full address decoding): Mỗi
ngoạivi được gán cho một địachỉ duy nhất. Tấtcả
các bit địachỉđượcdùngđể định nghĩavị trí được
tham chiếu.
2. Giảimãmộtphần (Partial address decoding): Không
phảitấtcả các bit được dùng cho việcgiảimãđịachỉ.
Các ngoại vi có thểđáp ứngchotrênmột địachỉ.
Phương pháp làm giảm độ phứctạptrongmạch giải
mã địachỉ. Thông thường các hệ thống nhỏ sử dụng
giảimãmộtphần.
5
Thí dụ: TK mạch giải mã địa chỉ
•Vớibảng bộ nhớ sau, hãy thiếtkế mạch giảimãtoànphầnvà
mạch giảimãmộtphần cho các chip bộ nhớ (RAM 4KB và
ROM 16KB) và I/O
6
Bảng bộ nhớ/IO củaTD
7
Thí dụ giải mã địa chỉ toàn phần
8
Kỹ thuậtgiải mã mộtphần
9
Thí dụ giải mã địa chỉ mộtphần
10
kỹ thuậtgiải mã mộtphầndẫn đến:
1. Mạch giải mã đơngiảnhơn.
2. Nhiều vùng địa chỉ hơn đượccấp phát vớitầm địa
chỉ mộtphần. Thí dụ mạch giải mã cho RAM chỉ
kiểm tra A15 và kết quả là toàn bộ tầm địa chỉ từ
0000H đến 7FFFH đượccấp phát cho RAM.
3. Sự bấtlợicủagiải mã địa chỉ mộtphần là bấtcứ
khai triển nào thêm về bộ nhớ hoặcthiết bị I/O thì
cầnthiếtkế lạimạch giải mã địa chỉ. Trái lại, với
mạch giải mã toàn phầnthì bấtcứ sự thêm vào bộ
nhớ hoặcthiết bị I/O, ta không cầnsửa đổimạch
giải mã địa chỉ.
[...]... mạch có nhiều thiết bị I/O và bộ nhớ, do đó cần phải có mạch giải mã địa chỉ để tạo ra các tín hiệu chọn chip • Bus điều khiển có các tín hiệu định thì (do vixửlý cung cấp) để đồng bộ chuyển thông tin giữa vixửlý và bộ nhớ hay thiết bị I/O Tổng quát thì có 2 tín hiệu RD (Read) và WR (Write), hai tín hiệu này thông thường cũng hoạt động logic tích cực thấp Ngoài ra tùy theo vixửlý còn có thêm... tín hiệu khác như ALE, PSEN, 12 Một số chân điều khiển bộ nhớ Bộ nhớ (và hầu hết các thiết bị ngoại vi) có các đường điều khiển đặc biệt để giao tiếp với vi xửlý • /CS hoặc /CE (Chip Select hoặc Chip Enable) – được lái bởi mạch giải mã địa chỉ từ vi xửlý – thường là tích cực thấp – khi được xác định, thì chip/ngoại vi được chọn • /OE (Output Enable=cho phép xuất) hay /RD (với RAM) – thường thấy trong... – TD:74LS138, Mạch so sánh (Comparator) ROM thừa chức năng PLD: PLA, PAL, cho đáp ứng nhanh 11 5.2 Giao tiếp bộ nhớ • Vi xửlý sử dụng bộ nhớ để lưu trữ các lệnh và dữ liệu trong khi thực thi chương trình Do đó vi xửlý thực hiện nhiều tác vụ ghi/đọc với bộ nhớ trong khi thực thi chương trình • Mỗi chip bộ nhớ RAM hay ROM sẽ có một ngõ vào có tên là /CE (Chip Enable=cho phép chip [hoạt động]) hoặc... cực (thường là tích cực thấp) thì ngõ ra ở trạng thái hi-Z – đôi khi nó được xem như /RD trong RAM • /WR (Write Enable=cho phép ghi) – được lái bởi /WR của vi xửlý 13 Qui tắc chung về thiếtkế mạch giao tiếp bộ nhớ với 8051 1 Lập bảng bộ nhớ – Hệ thống và ứng dụng phụ thuộc – Giải pháp đơn giản là tách riêng 64KB bộ nhớ dữ liệu và 64KB bộ nhớ mã – Để sử dụng các địa chỉ trên 64K thì sử dụng thêm các... xuất bằng cách dịch 0 vào cột kế; và cổng nhập được đọc vào 4 Dữ liệu 1101 được ghi vào cổng xuất; và cổng nhập được đọc vào 5 Dữ liệu 1110 được ghi vào cổng xuất; và cổng nhập được đọc vào 6 Chu trình này được lặp đi lặp lại vô tận bằng cách quay về bước 1 ở trên 26 Giao tiếp với bàn phím hex Dạng sóng ở các bit cổng xuất P1.0 đến P1.3 27 Chương trình quét bàn phím ; Chương trình quét bàn phím org... current since virtually no current flows into the pin The only advantage is that a switch closure gives logic 1 •Poor circuit In the "Poor" circuit, the logic 1 is stable when the switch is closed But when the switch is open, the input floats to a noise-sensitive high rather than a low An open TTL pin is usually read as logic 1 but the pin may picks up noise like an antenna To conclude, driving a TTL... mã địa chỉ là PLD 17 5.5 Giao tiếp với khóa (switch) và bàn phím 18 Công tắc/khóa (hay phím đơn) ở các chân cổng I/O 19 Sử dụng DIP switch ở cổng I/O Đoạn chương trình đọc dữ liệu vào: mov P1,#0FFH ; đặt cấu hình nhập cho cổng P1 mov A, P1 20 Kết nối tối thiểu cho các hệ thống dùng 89C51/52 21 SWITCH ON I/O PORTS (1/2) 22 SWITCH ON I/O PORTS (2/2) •Good Circuit It is always best connecting the switch... bit ở cột lên 1 CJNE A, #0FFH, cnvrt ; nhảy đến cnvrt nếu phím được nhấn MOV A, R0 ; lấy lại các bit lái cột RL A ; xoay bit lái cột sang trái CJNE A, #0EFH, 1up ; nhảy đến quét cột kế SJMP scanner ; bắt đầu đợt quét mới 28 Chương trình quét bàn phím cnvrt: MOV MOV clup: JNB RR MOV MOV ADD MOV MOV SJMP cnvrt2: MOV SWAP c1up2: JNB RR INC SJMP xlat: MOV MOV MOVC RET A, R1 ; khôi phục phím đọc được R3, #0... đổi 2 nửa byte ACC.0, xlat; nhảy đến dịch phím đọc được A ; xoay để tìm bit 0 R3 ; tăng số đếm thêm 1 c1up2 ; nhảy đến kiểm tra bit kế A, R3 ; lấy số đếm DPTR, #keytab ; chỉ đến bảng dịch A, @A+DPTR ; lấy ký tự được dịch 29 DSPLY: RET ; trình con display giả (cụ thể sẽ đựoc vi t đầy đủ) init: ACALL scan ; lấy phím nhấn MOV R0, A ; cất ký tự CLR C ; xóa cờ nhớ để trừ SUBB A, #0AH ; kiểm tra xem có > 10... bằng cách quay về bước 1 ở trên 26 Giao tiếp với bàn phím hex Dạng sóng ở các bit cổng xuất P1.0 đến P1.3 27 Chương trình quét bàn phím ; Chương trình quét bàn phím org 2000H start: LJMP init ; nhảy đến chương trình chính scan: MOV P1, #0F0H ; kiểm tra với các phím nhấn MOV A, P1 ; bằng cách quan sát P1 CJNE A, #0F0H, scan scanner: MOV A, #0FEH ; khuôn mẫu bit bắt đầu (4 bit thấp là 1110) 1up: MOV R0, . 1
Chương 5
Thiếtkế hệ vi xử lý
2
Nội dung
•Giảimãđịachỉ
•Giaotiếpbộ nhớ
•Giaotiếpvới khóa (switch). nhanh
12
5.2 Giao tiếpbộ nhớ
Vi xử lý sử dụng bộ nhớđểlưutrữ các lệnh và dữ liệu trong khi thựcthi
chương trình. Do đ vi xử lý thựchiệnnhiềutácvụ ghi/đọcvớibộ