Tải bản đầy đủ (.pdf) (10 trang)

Giáo trình phân tích quy trình ứng dụng điều chế thiết bị bán dẫn chứa các mạch logic điện tử p4

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 (263.17 KB, 10 trang )

w

bu

y

N

O
W

!

PD

k

to

34

.c

I.

ĐÔI NÉT VỀ NGÔN NGỮ C:
I.1. Nguồn gốc:
C được phát minh và cài đặt đầu tiên bởi Dennis Ritchie chạy trên hệ điều
hành Unix, được Martin Richards phát triển trong thập niên 70. C sử dụng chuẩn
ANSI được đề nghò lần cuối cùng vào năm 1989.
I.2. C là ngôn ngữ bậc trung:


Được xem là ngôn ngữ bậc trung vì C tổ hợp những thành phần tốt nhất của
các ngôn ngữ bậc cao với sự điều khiển và tính linh hoạt của ngôn ngữ Assembly. C
cho phép thao tác trên các bit, các byte và các đòa chỉ – những phần tử cơ bản với
các chức năng của máy tính, mã của chương trình C cũng mang tính khả chuyển.
I.3. C là ngôn ngữ của lập trình viên:
C được các lập trình viên làm việc thật sự tạo ra, thúc đẩy và kiểm tra, để rồi
C lại mang về cho họ những gì họ mong muốn: ít hạn chế, ít lời phàn nàn, các cấu
trúc khối, các hàm đơn lẻ, và môt tập đóng kín những từ khóa.
II. CÁC PHƯƠNG PHÁP LẬP TRÌNH:
II.1. Phương pháp lập trình lệnh:

Chương trình là một dãy các lệnh.

Lập trình là xác đònh các lệnh cùng với thứ tự các lệnh đó.

Phương pháp này chỉ có giá trò với chương trình lệnh ( < 100
lệnh).
II.2. Phương pháp lập trình thủ tục:

Chương trình là một hệ thống các thủ tục và hàm, mỗi thủ tục
hay hàm là một dãy các lệnh.

Lập trình là đi xác đònh những thủ và hàm, và xác đònh các
lệnh bên tring thủ tục và hàm đó.

Phương pháp này tiến bộ hơn phương pháp trên.
II.3. Phương pháp lập trình đơn thể:

Chương trình là một hệ thông các đơn thể (module).


Mỗi đơn thể là một hệ thống thủ tục, hàm có cùng ý nghóa nào
đó. Mỗi thủ tục và hàm là một dãy các lệnh.

Các đơn thể có được lưu trữ và biên dòch phân cách, nên dễ
dàng lắp ghép. Tuy nhiên phương pháp này còn thiếu tự
nhiên, ngài ra nếu chương trình quá rộng và quá sâu thì không
thể quản lý được.
II.4. Phương pháp lập trình hướng đối tượng:

Chương trình là một hệ thống các đối tượng, các đối tượng
trong thực tế được diễn tả bằng ngôn ngữ tin học.

Lập trình là đi xác đònh những đối tượng cùng những quan hệ
của chúng.

Tính tự nhiên của phương pháp này làm nó trở nên sinh động,
mỗi đối tượng có thuộc tính và hành động riêng như trong
thực tế do đó dễ hình dung, dễ quản lý. Ngoài ra, nhờ dựa
trên các đối tượng nên tính tiến hóa và mở rộng rất cao.

.d o

m

o

m

w


o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y
bu
C

lic

k

to

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o


XC

er

.

w

w

w

F-

w

C

h a n g e Vi
e

!

XC

er

PD

F-


c u -tr a c k

.c


w

bu

y

N

O
W

!

PD

k

to

35

.c

Trong phần viết chương trình giao diện vi tính, người viết đã chọn phương pháp

lập trình hướng đối tương. Nhờ những ưu điểm trên, phương pháp này cho phép bổ
sung một cách dễ dàng, tạo điều kiện thuận lợi cho việc bổ sung sau này nếu cần.
III. PHƯƠNG PHÁP LẬP TRÌNH HƯỚNG ĐỐI TƯNG TRONG C
III.1. Các khái niệm:
Thế giới thực
Phương pháp lập trình
Ngôn ngữ lập trình
Đối tượng bất kỳ trong thế Đối tượng
Biến có kiểu lớp
giới thực
(tương tự kiểu cấu trúc)
Khái niện chung của một Lớp đối tượng
Kiểu lớp(Class-tương tự
đối tương
kiểu cấu trúc)
Thuộc tính được quan tâm Thuộc tính
Thành phần dữ liệu của
của đối tượng
kiểu lớp
Khả năng có thể thực hiện Hành động
Thủ tục, hàm của kiểu lớp
của một đối tương
III.2. Phương pháp:
III.2.1. Xác đònh các lớp đối tượng, quan hệ qua các lớp này
(xây dựng sơ đồ lớp)
III.2.2. Thiết kế các lớp (biểu diễn trên máy tính)

Thành phần dữ liệu (thuộc tính).

Thành phần xử lý (hành động).

III.2.3. Cài đặt các lớp: Viết hàm main()
III.2.4. Thử nghiệm.
IV. Thực hiện viết chương trình DownLoad:
IV.1. Yêu cầu của giao diện:
 Cho phép chọn file sẽ truyền.
 Bằng cách gõ vào tên file
 Bằng cách click chuột để chọn
 Xem trước vùng nhớ cần thiết sẽ sử dụng ở RAM ở Kit 8085
 Chọn cổng truyền.
 Truyền file có kiểm tra.
IV.2. Chọn ngôn ngữ lập trình:
 Chọn ngôn ngữ C viết ở môi trường Dos
 Lý do: yêu cầu thiết bò (máy tính) không cao, phù hợp kiến thức
người viết.
 Ưu điểm: C là một công cụ lập tình gọn nhẹ, chạy nhanh, hiệu quả
và khép kín. Vì sử dụng C ở môi trường Dos nên không cần phải
kiểm soát các driver như nếu viết ở môi trường Windows. Ngôn
ngữ C cho phép truy cập trực tiếp các port, dể dàng kiểm soát từng
bit dữ liệu.
 Khuyết điểm: Vùng nhớ trống ở môi trường Dos chỉ có 640Kbyte,
và sau khi khởi động xong (ở màn hình dos) thì chỉ còn lại trên dưới
400Kbyte, không cho phép tạo một giao diện phức tạp. Độ phân
giải ở chế độ graph trong Dos không thể so sánh với môi trường
Windows.

.d o

m

o


m

w

o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C

LUÂÄN VĂN TỐT NGHIỆP

w

w


.d o

XC

er

.

w

w

w

F-

w

C

h a n g e Vi
e

!

XC

er

PD


F-

c u -tr a c k

.c


w

bu

y

N

O
W

!

PD

.c

IV.3. Chương trình Download:
Danh sách các lớp:
Tên lớp
Công dụng
Button.hpp

Tạo các nút nhấn, và chứa các hành động liên quan
Disklist.hpp
Liệt kê các ổ đóa trong máy, và chứa các hành động liên quan
List.hpp
Để vẽ bảng liệt kê các thư mục và file, và chứa các hành động liên
quan
Mouse.h
Chứa các thao tác về chuột
Screen.h
Chứa các tham số về giao diện màn hình, và chứa các hành động
liên quan
Textbox.hpp
Vẽ khung nhập liệu (tên file, loại file,..) , và chứa các hành động
liên quan
Xuat.hpp
Chứa các thao tác, hành động liên quan đến truyền file
Lưu đồ của hàm main():

Begin

InitGraphics()

InitValues(…)

InitScreen()

InitMouse(…)

Khởi tạo
thành công


S

CT báo lỗi

Đ

Hình 13: lưu đồ
hàm Main() của
chương trình
DownLoad.

Mainpro()

Đóng chế độ
đồ họa

closegraph()

Thoát

Giải thích lưu đồ:
End

to
k
.d o

m


o

m

w

o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C

36

LUÂÄN VĂN TỐT NGHIỆP

w


w

.d o

XC

er

.

w

w

w

F-

w

C

h a n g e Vi
e

!

XC


er

PD

F-

c u -tr a c k

.c


w

bu

y

N

O
W

!

PD

.c

 Chương trình bắt đầu ở begin.
 InitGraphisc():Khởi tạo chế độ đồ họa, vì chương trình này có sử dụng màn hình

ở chế độ đồ họa trong môi trường Dos. Nếu khởi tạo không thành công thì thông
báo lổi khởi tạo và thoát khỏi chương trình.
 InitValues(…): hàm này còn khởi tạo các giá trò ban đầu cho màn hình: kích thước
cửa sổ, kích thước ký tự.
 InitScreen(): Vẽ màn hình với các giá trò đã khởi tạo
 InitMouse(): Khởi tạo chuột.
 Khởi tạo thành công: kiểm tra, nếu khởi động chuột thành công thì tiếp tục công
việc, nếu không thành công thì xuất ra thông báo lỗi và thoát khỏi chương trình.
 MainPro là chương trình quản lý mọi thao tác của toàn bộ chương trình, từ các
thao tác nhập xuất đến các thao tác lựa chọn các tùy chọn.
 Closegraph(): Đóng chế độ đồ họatrước khi thoát khỏi chương trình.
 End: kết thúc chương trình.
Hàm Main() này được viết bằng ngôn ngữ C :
void main(void)
{
InitGraphics();
InitValues("Chuong trinh truyen du lieu ra RAM");
InitScreen();
if (!InitMouse(&MainWindow.rViewPort))
{
OutMessage("Mouse driver not found. Init mouse and
return");
getch();
closegraph();
exit(1);
}
ShowMouse();
MainProgram();
closegraph();
}


void main(void): void cho biết rằng hàm main() không trả về môt giá trò nào, nghóa
là trong hàm main này không có lệnh return() hoặc lệnh là một lệnh return không có
tham sô. (void) cho biết hàm main không cần đối số đưa vào.
Lưu đồ hàm Mainpro():
Begin

Khởi tạo các giá trò
cho các ô nhập text

Khởi tạo các giá trò
cho các nút chọn

A

to
k
.d o

m

o

m

w

o

c u -tr a c k


h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C

37

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o

XC

er


.

w

w

w

F-

w

C

h a n g e Vi
e

!

XC

er

PD

F-

c u -tr a c k

.c



h a n g e Vi
e

c u -tr a c k

w

N
bu

y
to
k
lic

.c

A

Xuất các ô nhập
text ra màn hình

Xuất các nút chọn
ra màn hình

GetEvent()

Click vào

ô Open File

Gọi chương trình
nhập vào đường dẫn

Click Nút
pull down

Gọi chương trình
xuất cửa sổ chọn file

Click nút
Send

Xác đònh
file chọn

Click nút
Exit

Xác nhận
thoát

Nhấn Esc

Return

Hình 14: Lưu đồ của hàm MainPro().
Giải thích lưu đồhàm MainPro():


Truyền
file

.d o

m

o

m

w

o

.d o

38
w

w

w

w

w

C


lic

k

to

bu

. LUÂÄN VĂN TỐT NGHIỆP

C

y

N

O
W

!

XC

er

O
W

F-


w

PD

h a n g e Vi
e

!

XC

er

PD

F-

c u -tr a c k

.c


w

bu

y

N


O
W

!

PD

k

to

39

.c

 Khởi tạo các giá trò cho các ô nhập text: trên màn hình sẽ có khung cho phép gõ
vào tên file, chương trình con này sẽ khởi tạo các tọa độ, màu chữ cho text.
 Khởi tạo các giá trò cho các nút chọn: cũng giống như trên, nhưng đối với các nút
Send, Exit và nút Pulldown.
 Xuất các ô nhập text ra màn hình.
 Xuất các nút chọn ra màn hình.
 GetEvent: chương trình con lấn biến cố chuột. Biến cố này chứa các thông tin về
tọa độ chuột, phím nào của chuột được click, thời gian click lần cuối, … để xáx
đònh các lệnh kế tiếp cần thực hiện.
 Click vào ô Open File: nếu biến cố click chuột xẩy ra tại tọa độ của của ô Open
file thì kết quả click vào ô này là TRUE, thực hiện chương trình con nhập vào
file cần xuất. Ngược lại thì bỏ qua.
 Click vào nút Pulldown: nếu biến cố click chuột xẩy ra tại tọa độ của của nút
Pulldown thì kết quả click vào ô này là TRUE, gọi chương trình xuất ra cửa sổ
chọn File, ngược lại thì bỏ qua.

 Click nút Send: nếu biến cố click chuột xẩy ra tại tọa độ của của nút Send thì
kết quả click vào ô này là TRUE, thực hiện xác nhận file xuất đã nhập vào chưa,
nếu file xuất chưa nhập vào thì báo lỗi và bỏ qua lệnh Send, nếu file xuất đã có
tên rồi thì xuất file.
 Click nút Exit: nếu biến cố click chuột xẩy ra tại tọa độ của của nút Exit thì kết
quả click vào ô này là TRUE, thực hiện xác nhận muốn thoát khỏi chương trình,
nếu xác nhận đúng thì thoát, ngược lại thì bỏ qua lệnh Exit.
 Nhấn Esc: nếu người dùng nhấn vào nút Esc trên bàn phím thì biến cố Nhấn Esc
sẽ là TRUE, thực hiện xác nhận muốn thoát khỏi chương trình, nếu xác nhận
đúng thì thoát, ngược lại thì bỏ qua lệnh thoát bằng nút Esc.
Sau đó, chương trình lại thực hiện vòng lặp tại hàm lấy biến cố chuột cho tới
khi có thao tác mới.
Giả sử click chuột vào ô Open File, ô này sẽ đổi trạng thái, các kýtự trong ô sẽ
đổi màu báo trạng thái chờ nhập, nhập vào một tên fie có phần mở rộng là “prn” với
đầy đủ đường dẫn, sau đó gõ phímEnter thì tên file sẽ được lưu vào một biến toàn
cục, và các đòa chỉ đầu và đòa chỉ cuối của chương trình ngôn ngữ máy sẽ được hiện
lên ở khung “Free memory request”, và một dòng thông bào bên dưới báo cho biết
click Send để truyền file.
Giả sử tiếp tục click Send thì một thông báo xác nhận sẽ xuất hiện, muốn xác
nhận có chắc là người dùng muốn truyền file không. Nếu trả lời Ok thì chương trình
truyền file sẽ được gọi thi hành.
Sau đây là lưu đồ của chương trình con thực hiện việc truyền File.
Giải thích lưu đồ:
 Gọi chương trình cắt file: chương trình cắt file thực chất là một chương trình con
có nhiệm vụ lọc ra những thông tin quan trọng trong file “x.prn” sẽ được truyền
đi, và lưu chúng trong một file “x.tmp” chỉ xuất hiện trong khoảng thời gian
chương trình đang cắt file. Sau đó file “x.tmp” này sẽ bò xoá đi khi quá trình
truyền file hoàn tất. Quá trình truyền file phải sử dụng bước này để các quá trình
bắt tay giữa máy tính và Kit được ổn đònh (thực nghiệm), và việc viết chương
trình được rõ ràng hơn.


.d o

m

o

m

w

o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C


LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o

XC

er

.

w

w

w

F-

w

C

h a n g e Vi
e

!


XC

er

PD

F-

c u -tr a c k

.c


!
O
W

w

N
y
bu
to
k
lic

o

 Gọi chương trình xuất file: chương trình này sẽ đọc file có tên là “x.tmp” được

tạo từ chương trình cắt file. Chương trình này sẽ tuần tự đọc file, nhận tín hiệu
bắt tay và gởi dữ liệu cho đến khi hết file.
 Trong quá trình truyền file, nếu có sự cố, giả sử không bắt tay được vì lý do nào
đó, thì chươn trình sẽ đợi, thời gian kéo dài sẽ coi như việc truyền file bi lỗi, và
thông báo lỗi sẽ xuất hiện.
 Nếu truyền thành công thì thông báo hoàn tất công việc.
 Return: Quay trở về chương trình MainPro.
Trong hàm MainPro(), cần quan tâm chương trình con truyền file.
Begin

Gọi chương trình
Cắt file

Gọi chương trình
xuất file

Sai
Thành công
Đúng
Thông báo hoàn
tất công việc

Thông báo lỗi
công việc

Return.
Hình 15: Lưu đồ chương trình con có nhiệm vụ truyền file.
Trong phần này, ta quay lại công việc cắt file đã giới thiệu ở mục III của chương V.
Chương trình con cắt file là để tạo ra một file tạm thời có phần mở rộng .tmp. file
này sẽ là một file có cấu trúc đơn giản hơn file .prn rất nhiều nhằm để giúp cho việc

truyền file thêm đơn giản.
Trước hết hãy khảo sát một file *.prn, file này được dòch ra bởi 1 chương trình dòch
Assembler.
Trong chương trình, byte lệnh đều tiên bắt đầu ở đòa chỉ 0000hex. Nhận xét rằng
mỗi dòng lệnh bắt đầu bở một đòa chỉ bộ nhớ, và liền sau đòa chỉ này là một dấu
nháy đơn, mà dấu nháy đơn đầu tiên chỉ xuất hiện tại đòa chỉ của dòng lệnh đầu tiên.
 để tìm đòa chỉ đầu tiên thì có thể tìm dấu nháy đơn đầu tiên.

.d o

o

m

w

.c

m

C

O
W
N
y
bu
to
k
lic

C
c u -tr a c k

h a n g e Vi
e

er

40

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o

XC

.
w

w

w

F-

w


PD

h a n g e Vi
e

!

XC

er

PD

F-

c u -tr a c k

.c


w

bu

y

N

O

W

!

PD

.c

Còn đòa chỉ cuối cùng là đòa chỉ của byte cuối cùng của dòng lệnh cuối cùng. Dòng
lệnh cuối cùng là dòng lệnh nằm gần từ “Macros” nhất. Từ macros này cũng là từ
macros duy nhất.
 cách tìm đòa chỉ cuối cùng như sau:
 Tìm từ Macros
 Dò ngược trở về phíc trên cho đến khi gặp dấu nháy đơn đầu tiên
 Tiếp tục dò ngược về trước, nếu trong vòng 10 ký tự mà gặp môt ký tự xuống
dòng thì thì dấu nháy đơn vừa rồi nằm ngay sau dòng lệnh cuối cùng.
 Trong dòng lệnh cuối cùng, tìm byte cuối cùng sẽ tính được đòa chỉ cuối cùng.
Cách tìm một dòng lệnh:
 Khi gặp một dấu nháy đơn, thì tìm một ký tự khác dấu nháy đơn hoặc khoảng
trắng.
 Khi gặp ký tự đầu tiên, đó chính là ký tự đầu tiên của byte lệnh.
 Nếu sau 2 ký tự của lệnh là một khoảng trắng thì 2 ký tự vừa rồi chính là một mã
lệnh.
 Nếu sau 2 lý tự của môt byte lệnh không có khoảng trắng nào, thì 2 ký tự vừa rồi
chính là 2 của 4 ký tự báo một đòa chỉ.
 Nếu sau 2 ký tự tính từ lúc bắt đầu một lệnh là 2 khoảng trắng trở lên thì 2 byte
vừa rồi là 2 byte cuối cùng của một dòng lệnh.
 Bắt đầu một chu kỳ mới tìm dòng mã lệnh.
Lưu mã lệnh vào file *.tmp:
 Đầu tiền lưu đòa chỉ đầu, đòa chỉ cuối vào file.

 Nếu gặp mã lệnh (2 ký tự) thì ghi tiếp vào file.
 Nếu gặp mã đòa chỉ thì đổi chổ 2 ký tự sau với 2 ký tự trước của đòa chỉ.
 Đến khi gặp đòa chỉ cuối cùng thì ghi vào 2 ký tự cuối cùng và đóng file.
MACRO-80 3.4
Org
0000' 3E 00
0002' 32 A001
0005' 3E 80
0007' 32 A001
000A' 3E 06
000C' 32 A000
000F' 76
MACRO-80 3.4
Macros:

01-Dec-80
PAGE 1
0000h
MVI A,00h
STA 0A001h
MVI A,80h
STA 0A001h
MVI A,06h
STA 0A000h
HLT
01-Dec-80
PAGE S

Symbols:
No Fatal error(s)

Công
trên được mô tả bằng lưu đồ sau:

việc

to
k
.d o

m

o

m

w

o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y

bu
to
k
lic
C

41

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o

XC

er

.

w

w

w

F-


w

C

h a n g e Vi
e

!

XC

er

PD

F-

c u -tr a c k

.c


w

bu

y

N


O
W

!

PD

.c

Begin
Nhận đòa chỉ đầu
Begin

Nhận đòa chỉ cuối
Mở file nguồn

Busy=1

Sai

Đúng

Mở file đích

Xuất dliệu ra bus

Strobe=1

Tìm dấu “ ‘”
Sai


ACK=1 & Error=0

Đọc 2 ký tự lệnh

Đúng
AF=1

Xét ký tự tiếp theo
Đ
Không là
khoảng trắng

s
a
Đọc Error=0

Đọc 2 ký tự tiếp theo
Đúng
Thu nible cao

S

Lưu 2 ký tự sau

Đ

Là một
khoảng trắng


AF=0

Lưu 2 ký tự
sai

S

Error=1
Đúng

2
khoảng trắng

Đ

Xuất 00 ra
data bus

S

Thu nible thấp

sai

Ktra dữ liệu

S
>AF=0
đòa chỉ
cuối

Strobe=0

Xuất FF ra data bus

Đ

AF=0 Strobe=0

End
Chuẩn bò dữ liệu
kế tiếp

Hình 16: Lưu đồ chương trình con Cắt file
Hết dữ liệu

sai

Đúng
Return

to
k
.d o

m

o

m


w

o

c u -tr a c k

h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C

42

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o


XC

er

.

w

w

w

F-

w

C

h a n g e Vi
e

!

XC

er

PD


F-

c u -tr a c k

.c


w

bu

y

N

O
W

!

PD

k

to

44

.c


Sau khi cắt file, một file mới đã được tạo ra. Chương trình truyền file đến bước
xuất file. Dó nhiên trước khi xuất file cũng cần có những thủ tục mở file, đặt các mức
logic cần thiết để khởi động cổng: mở file hợp lệ, cho bit AF=0, strobe=0.
Giải thích lưu đồ chương trình xuất file:
 Trước tiên, máy tính xuất strobe=0, AF=0 bằng chách xuất ra port 37Ahex
số 03hex (xem lại thanh ghi điều khiển ở mục IV chương IV);
 Chương trình xuất bắt đầu tại begin.
 Đọc Busy\ cho tới khi bằng [1]: đợi kit phát ra Busy=[0] báo hiệu đã sẳn
sàng nhận dữ liệu.
 Nếu nhận được Busy\=[1] thì bước xuất dữ liệu được thực hiện, tức là lúc
đó máy tính đọc 2 ký tự đầu tiên của file .tmp và xuất ra port 378 của máy
tính.
 Strobe=[1]: để báo cho kit biết dữ liệu đã được gửi ra port để kit biết mà
đọc dữ liệu vào.
 ACK=[1] và Error=[0]: khi nhậndl xong kit sẽ báo ACK=[1], Error=0 để
báo cho máy tính biết Kit sẽ gửi dữ liệu để kiểm tra đúng hay sai.
 AF=[1]: báo cho Kit biết máy tính sẳn sàng nhận dữ liệu.
 Máy tính đọc bit Error cho tới khi Error = [0] để biết Kit đã gửi về dữ liệu
để kiểm tra.
 Thu Nible cao: Nhận dữ liệu để kiểm tra.
 Cho AF=[0]: đã nhận xong dữ liệu.
 Đọc Error cho tới khi Error=[1] để biết đã có dữ liệu mới.
 Thu nible thấp.
 Kiểm tra dữ liệu: máy tính sẽ phải ghép nối nible cao với nible thấp lại rồi
so sánh với dữ liệu vừa xuất ra, nếu 2 dữ liệu giống nhau thì kết quả xuất
dữ liệu sẽ là đúng. Máy tính sẽ xuất ra số FFhex ở thanh ghi data để báo
đúng, và xuất AF=0 & strobe=0 để báo xuất xong 1 byte dữ liệu. Ngược lại
thì xuất 00hex ra thanh ghi data và xuất AF=0, strobe =0 để báo kết quả
sai.
 Nếu kết quả sai thì quay lại xuất lạ byte vừa rồi đã xuất.

 Quay lại từ đầu chương trình xuất dữ liệu cho đến khi hết dữ liệu.
IV.4. Chương trình nhận dữ liệu ở Kit:
Giải thích lưu đồ chương trình nhận dữ liệu:
 Chương trình bắt đầu tại begin.
 Trước tiên phải khởi tạo 8255 với các chế độ qui đònh như sau:
 Port A: nhận dữ liệu từ thanh ghi data theo ket nối phần cứng.
 Port B: xuất trạng thái Kít trả về máy tính.
 Port C: nhận tín hiệu điều khiển từ thanh ghi điều khiển của máy tính.
 Sau đó báo cho máy tính biết trạng thái bận. Mục đích của công việc này là
để đồng bộ thời điểm bắt đầu chương trình nhận dữ liệu với chương trình
xuất dữ liệu từ máy tính.
 Reset biến đếm đòa chỉ đầu và cuối, nơi đặt vùng dữ liệu nhận được từ máy
tính.
 Xuất chử Ready báo cho người sử dụng biết trạng thái sẳn sàng nhận dữ
liệu của kit. Chờ người sử dụng gõ phím Go.

.d o

m

o

m

w

o

c u -tr a c k


h a n g e Vi
e

lic

O
W
N
y
bu
to
k
lic
C

LUÂÄN VĂN TỐT NGHIỆP

w

w

.d o

XC

er

.

w


w

w

F-

w

C

h a n g e Vi
e

!

XC

er

PD

F-

c u -tr a c k

.c




×