Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (297.92 KB, 7 trang )
<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
Kit báo sẳn sàng chờ máy tính gửi dữ liệu xuống.
Đọc strobe cho tới khi bằng 1, để biết dữ liệu đã được gởi ra bus dữ liệu.
Xuất Busy=1, ACK=0.
Đọc dữ liệu và cho ACK=1. Lúc này kit đã nhận được dữ liệu nhưng chưa
biết dữ liệu có chắc chắn đúng khơng. Sau đó bắt đầu kiểm tra.
Đọc AF cho tới khi bằng 1, biết máy tính sẳn sàng nhận dữ liệu kiểm tra.
Xuất nible cao của dữ liệu kiểm tra (bằng 4 bit cao của port B) và bit
Error=0 (bit PB3).
Đọc AF cho tới khi bằng 0, để biết máy tính sẳn sàng nhận4 bit thấp của
dữ liệu kiểm tra.
Xuất 4 bit thấp và Error bằng 1.
Lúc này, máy tính đang nhận và so sánh dữ liệu đã gởi đi. Và kết quả so
sánh được báo cho kit ở thanh ghi dữ liệu, tức portA của 8255. Kit đọc
strobe cho tới khi strobe bằng [0] biết kết quả kiểm tra đã sẳn sàng.
Đọc port A lấy kết quả kiểm tra.
Nếu kết quả kiểm tra là đéng thì thực hiện khâu xử lý dữ liệu (lưu dữ liệu
vào nơi cần thiết) và quay lại nhận dữ liệu kế tiếp. Nếu kết quả là sai thì
bỏ qua khâu xử lý dữ liệu mà quay trở lại nhập lại dữ liệu cũ.
Quá trình xẩy ra cho đến khi khâu xử lý dữ liệu nhận ra đã nhập đến dữ liệu
cuối cùng thì kết thúc khâu xử lý sẽ thốt như lưu đồ sau đây:
<b>Hình 19: Lưu đồ chương trình xử lý dữ liệu (trang1). </b>
Start
(c) = 00h
Lấy dữ liệu vừa nhận được
làm byte cao của địa chỉ bắt
đầu vùng nhớ đặt dữ liệu.
H (B)
Lấy dữ liệu vừa nhận được
làm byte thấp của địa chỉ bắt
đầu vùng nhớ đặt dữ liệu.
L (B)
Lấy dữ liệu vừa nhận được
làm byte cao của địa chỉ chấm
dứt vùng nhớ đặt dữ liệu.
D (B)
(c) = 01h
(c) = 02h
1 A
<b>Hình 19: Lưu đồ chương trình xử lý dữ liệu (trang 2). </b>
Yù tưởng: Nhập 2 địa chỉ đầu và cuối vào 2 cặp thanh ghi HL và DE. Cặp thanh
ghi HL còn được coi là con trỏ địa chỉ trỏ đến ô sẽ chứa dữ liệu. Chương trình
sẽ so sánh địa chỉ mà con trỏ trỏ đến với địa chỉ kết thúc. Nế chưa bằng thì lưu
dữ liệu. nếu bằng thì thốt chương trình.
Giải thích lưu đồ:
Chương trình con bắt đầu ở start.
Bốn bước so sánh đầu tiên để nhập địa chỉ đầu, cuối vào 2 cặp thanh ghi.
Nếu nội dung thanh ghi C lớn hơn 3 thì 2 cặp thanh ghi đã nhận đầy đủ các
địa chỉ đầu cuối. Nên chương trình sẽ cất nội dung vủa nhận được vào ơ
nhớ có địa chỉ ghi trong cặp thanh ghi HL.
Return
Lấy dữ liệu vừa nhận được
làm byte thấp của địa chỉ bắt
đầu vùng nhớ đặt dữ liệu.
E (B)
(c) = 03h
A
1
Ñ
S
Tăng biến đếm lên một
đơn vị.
Cất byte dữ liệu vừa nhận
được vào ơ nhớ có địa chỉ nằm
trong con trỏ địa chỉ (HL)
M (B)
Tăng giá trị con trỏ địa chỉ lên
một đơn vị
HL(HL) + 1
Đã trỏ đến địa
chỉ cuối
(HL)=(DE)
Reutrn
End.
S
Ñ
Busy = 0
Nếu con trỏ đã trỏ đến địa chỉ cuối, thì chương trình đã được nhận đầy đủ,
lúc này sẽ xuất ra từ “End,” để báo hồn tất chương trình.
Qua 7 tuần ngắn ngủi, người thực hiện đề tài đã hồn tất cơng trình.
Mục đích của đề tài là hoàn thành một chương trình, như một cơng cụ
học tập, có khả năng đọc một file dữ liệu đã được lưu trên máy tính và sau đó,
lọc những nội dung cần thiết cho bài thực tập vi xử lý, rồi truyền tải nội dung
đó vào bộ nhớ RAM ở kit thực tập 8085.
Đề tài đã nhằm vào những nội dung chính sau:
Thứ nhất: giới thiệu về kit thực tập sử dụng. Trong phần này, các linh
kiện quan trọng của kit được đề cập đền như CPU 8085, ngoại vi 8255, IC
hiển thị 8279.
Thứ hai: giới thiệu về kết nối Kit và máy tính: cổng kết nối, các thanh
ghi. Bên cạnh đó là những yêu cầu để vận dụng phương pháp truyền dữ liệu
trong đề tài.
Sau cùng là nội dung chủ yếu của đề tài: những dẫn luận để xây dựng
lưu đ62 chương trình truyền và nhận dữ liệu, phương pháp và thực hiện viết
chương trình.
Tóm lại, thành quả của cơng trình là chương trình truyền dữ liệu có
những ưu điểm về mặt yêu cầu cấu hình máy tính sử dụng, cách sử dụng đơn
Tuy nhiên, đề tài cịn có một số hạn chế: cần phải có máy tính để có thể
sử dụng chương trình; phải nhập chương trình vào máy tính trước tiên ở dạng
ngôn ngữ Assembly.
CPI 00h
JNZ A1
MOV H,B ;neu dung thi cat byte thu nhat vao thanh ghi H.
INR C ;tang bien dem byte dia chi len 1 don vi.
RET
A1: MOV A,C ;kiem tra xem co phai day la byte thu hai khong ?
CPI 01h
JNZ A2
MOV L,B ;neu dung thi cat byte thu hai vao thanh ghi L.
INR C ;tang bien dem byte dia chi len 1 don vi.
RET
A2: MOV A,C ;kiem tra xem co phai day la byte thu ba khong ?
CPI 02h
JNZ A3
MOV D,B ;neu dung thi cat byte thu ba vao thanh ghi D.
INR C ;tang bien dem byte dia chi len 1 don vi.
RET
A3: MOV A,C ;kiem tra xem day co phai la byte thu tu khong ?
CPI 03h
JNZ A4
MOV E,B ;neu dung thi cat byte thu tu vao thanh ghi E.
INR C ;tang bien dem byte dia chi len 1 don vi.
RET
A4: MOV M,B ;ke tu byte thu nam tro di se duoc cat vao o nho co
INX H ;dia chi do cap thanh ghi HL quan li.
MOV A,D
CPI H
RNZ
MOV A,E
CMP L
RNZ ;thoat neu HL tro den dia chi cham dut nam trong DE.
CALL END ;cho hien thi "END." tren ba LED 7 doan.
MVI A,40h ;bao BUSY\ = 1.
OUT PortB
HLT
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
;Chuong trinh con hien thi "END." tren ba LED 7 doan.
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
END: PUSH PSW
MVI A,10h ;khoi tao 8279: hien thi 8 ki tu,loi vao phai,
STA CntI79 ;quet ban phim co lap ma, khoa ngoai 2 phim.
MVI A,3Eh ;lap trinh xung Clock = 100 KHz.
STA CntI79
MVI A,0C3h ;xoa hien thi va xoa FIFO.
STA CntI79
MVI A,01h ;tri hoan 0.1 ms > 160 us.
CALL DELAY
MVI A,90h ;bat dau ghi vao tai LED dau tien ben phai, co
STA CntI79 ;tang dia chi tu dong.
MVI A,79h ;cho hien thi "E".
STA DataI79
MVI A,54h ;cho hien thi "N".
STA DataI79
MVI A,0DEh ;cho hien thi "D.".
STA DataI79
POP PSW
RET
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
;Hai chuong trinh con sau day da co san trong thiet bi thuc tap Vi xu
;li 8085
;nen nguoi thuc hien de tai nay thay khong can thiet phai viet lai va
;trinh bay
;DELAY : Chuong trinh con tri hoan theo thoi hang 0.1 ms. He so tri
;hoan duoc
; nap vao thanh ghi A.
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++
;#####################################################################
;Khai bao cac nhan duoc su dung.
;#####################################################################
RegCNT equ 03h
PortA equ 00h
PortB equ 01h
PortC equ 02h
CntI79 equ 0A001h
DataI79 equ 0A000h
KEYBRD equ 0216h
DELAY equ 0310h
KeyGO equ 17h