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

Quá trình hình thành tư liệu hướng dẫn cách xây dựng giao diện trên màn hình máy tính trong KIT vi xử lý p1 pptx

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 (197.74 KB, 8 trang )

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

2

I. ĐẶT VẤN ĐỀ:
Khi nhu cầu học tập ngày càng cao thì thiết bò, phương tiện dạy học càng đóng
vai trò quan trọng, nó giúp người thầy dỡ vất vả trong việc truyền thụ kiến thức,
giúp người học nhanh chóng tiếp thu, ngoài ra còn để minh họa, chứng thực môt
cách cụ thể những bài học mơ hồ trừu tượng.
Trong bài này, người thực hiện muốn đề cập đến môn học vi xử lý, lập trình vi
xử lý, một môn học mang ý nghóa thiết thực trong xã hội mà quá trình công nghiệp
hóa, hiện đại hóa diễn ra từng ngày. Khi học môn này, người học không chỉ được
học về cấu trúc vi xử lý cả phần cứng lẫn phần mềm, cách kết nối với các IC ngoại
vi 8255, 8279, … mà còn phải sử dụng thành thạo Kit vi xử lý 8085,…
Khi viết một chương trình trên Kit vxl 8085 và để kiểm nghiệm chương trình
đó thì ngưòi học phải qua các bước :
Bước 1: Xác đònh mục đích yêu cầu của chương trình.
Mục đích, yêu cầu được xác đònh từ đề bài, hoặc một nhu cầu thực tế, đây là
mục đích chung của chương trình. Để thực hiện mục đích chung này, có thể
sẽ phải qua nhiều bước, mà mỗi bước là một mục đích cụ thể mới, được giải
quyết bằng một chương trình nhỏ hơn, phát sinh trong giai đoạn viết lưu đồ.
Bước 2: Vẽ lưu đồ
Lưu đồ dùng để trình bày cách giải quyết vấn đề, thường thì ngôn ngữ dùng
trong lưu đồ không phải là một ngôn ngữ máy xác đònh nào, lưu đồ thực chất
để giúp người thảo chương chia nhỏ một chương trình lớn. Từ lưu đồ tổng
quát, có thể vẽ ra lưu đồ chi tiết.
Bước 3: Viết chương trình bằng ngôn ngữ gợi nhớ(ngôn ngữ Assembler).
Bước 4: Chuyển sang mã máy.
Bước 5: Nhập mã máy vào Kit bằng phím.
Bước 6: Chạy thử chương trình và kiểm tra kết quả.
Một chương trình được viết phải được chạy thử và kiểm tra kết quả, kết quả


phải đúng trong mọi trường hợp cho phép (điều kiện đặt ra trước) của chương trình,
và từ kết quả kiểm tra mà phán đoán, nhận đònh lỗi để sửa chương trình từ đâu, có
khi phải sửa lại cả lưu đồ.
Trong cách làm trên, ta nhận thấy có những khó khăn riêng sau:
 Quá trình dòch từ ngôn ngữ gợi nhớ sang mã máy (bước 4), đòi hỏi sự
quen thuộc bảng tra mã, nếu không việc này chiềm nhiếu thời gian, và việc kiểm
tra lại cũng chiếm không ít thời gian. Tại những lệnh jump, những lệnh call, cần
phải xác đònh đòa chỉ cụ thể, chính xác của ô nhớ rồi mới xác đònh được lệnh
jump. Việc này chỉ hoàn tất khi chương trình được dòch sang mã máy gần như
đầy đủ.
 Ở giai đoạn nhập mã máy (bước 5), để nhập nhanh thì phải nhớ vò trí
phím, phải nhập chính xác để tránh thời gian dò để sửa một chương trình nhập
sai. Để nhập một byte cần gõ 3 phím và phải đối chiếuqua lại giữa bản dòch
chương trình, nội dung hiển thò trên các led 7 đoạn cùng với đòa chỉ ô nhớ và bàn
phím.
 Đối với những ai trong giai đoạn khởi đầu học lập trình vi xử lý, thì 2
việc trên luôn xẩy ra nhầm lẫn gây mất nhiều thời gian vô ích.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e


V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X

C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o

m
Q trình hình thành tư liệu hướng dẫn cách xây
dựng giao diện trên màn hình máy tính trong KIT
vi xử lý
LUÂÄN VĂN TỐT NGHIỆP

3

 Khi cần thêm hoặc xóa, hoặc sửa chương trình thì mất nhiều thời gian để dò
lại chương trình, nhập lại khó khăn, thậm chí phải nhập lại phần lớn chương tình.
 Sau khi bò mất điện thì dữ liệu lưu trong RAM không có nguồn dự trữ sẽ bò
mất hết, phải nhập lại toàn bộ chương trình. Đối với những chương trình nhỏ thì thời
gian nhập không đáng kể, nhưng đối với những chương trình lớn thì đây là công việc
mất nhiều thời gian, và gây phiền hà cho người học cũng như người lập trình vi xử
lý.
Bên cạnh đó, thực tế đã có những thiết bò nạp EPROM rất tiện lợi, mà có thể
đem ý tưởng đó vào việc học lập trình vi xử lý nhất là việc giao tiếp với thiết bò
khác từ vi xử lý là một điều khá dễ dang.
Ngoài ra, chương trình đại học rất bao quát, thời gian và điều kiện chỉ cho
phép sinh viên đi hết bề nổi của chương trình mà chưa có hoặc ít có dòp tìm hiểu về
chiều sâu. Do đó, đồ án tốt nghiệp là một cơ hội tốt cho sinh viên đào sâu vào
chương trình học, ứng dụng bài học vào thực tế, chứng minh được sự hữu ích của
những kiến thức đã học được trong môi trường sư phạm.
Từ những lý do trên, người viết quyết đònh chọn đề tài “GIAO TIẾP MÁY
TÍNH VỚI VI XỬ LÝ 8085”.
Đề tài đưa ra một chương trình như một công cụ hỗ trợ việc học lập trình vi xử
lý trên Kit8085 với một thứ tự sau:
1) Xác đònh mục đích yêu cầu của chương trình cần viết.
2) Vẽ lưu đồ.
3) Viết chương trình bằng ngôn ngữ Assembly (ngôn ngữ gợi nhớ).

4) Nhập chương trình bằng ngôn ngữ Assembly vào máy (dùng Norton).
5) Gọi chương trình dòch Assembler để dòch từ ngôn ngữ Assembly sang một
file có phần mở rộng “prn” chứa mã máy.
6) Trong chương trình Giao tiếp, gọi file dòch để nạp vào RAM.
7) Chạy thử và kiểm tra kết quả.
Cách làm này có những ưu điểm sau:
 Dòch từ ngôn ngữ Assembly (ngôn ngữ gợi nhớ) tốn rất ít thời gian vì việc này do
máy tính đảm trách, với độ chính xác tuyệt đối.
 Cũng vậy, việc nạp dữ liệu vào RAM cũng chỉ trong vài giây, và được kiểm tra
trong khi nạp nên độ chính xác cũng tuyệt đối.
 Ngoài ra, chương trình được lưu trữ, quản lý dể dàng, dể xem lại, dể kiểm tra.
Khi cần thêm, hoặc xóa hoặc sửa hoặc chép lại một đoạn chương trình, ngay cả
thay đổi đòa chỉ bắt đầu, cũng rất đơn giản.
 Về độ chính xác và thời gian cần thiết thì đối với chương trình các lớn càng có
lợi, càng phải nạp chương trình nhiếu thì càng có lợi.
II. TẦM QUAN TRỌNG CỦA VẤN ĐỀ.
Trong xã hội ngày càng phát triển, lượng kiến thức cần truyền tải trong nhà
trường ngày càng tăng, mà thời gian cho phép ngày càng bò giảm đi, thì sự nổ lực
của cả người dạy lẫn người học đều rất cần thiết. Bên cạnh đó, phương tiện ít nhiều
sẽ góp phần quan trọng trong quá trình học tập.
Trước đây, việc học lập trình vi xử lý đã diễn ra một cách tự nhiên, có thể coi
như đã đầy đủ về phương tiện học tập. Nhưng nay, nếu có thêm một chương trình mô
Click to buy NOW!
P
D
F
-
X
C
h

a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!

P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a

c
k
.
c
o
m
LUÂÄN VĂN TỐT NGHIỆP

4

phỏng các họ vi điều khiển, hay vi xử lý, giao tiếp máy tính với vi xử lý để truyền
file… thì tất nhiên sẽ có mặt tích cực, mang thêm nhiều lợi ích cho việc học.
“Giao tiếp máy tính với vi xử lý” còn là một chứng thực về giao tiếp _ những
gì đã được học _ trên chính kit thực tập, điều đó sẽ kích hoạt sự tìm tòi, sự ham thích
hiểu biết của sinh viên.
III. GIỚI HẠN VẤN ĐỀ
Đây là một chuyên đề thú vò, có nhiều vần đề đáng quan tâm, nhưng do những
giới hạn về thời gian và kiến thức, nên trong đồ án này, người viết chỉ có thể trình
bày những phần sau:
 Khái quát Kit 8085 sử dụng, các linh kiện có liên quan trực tiếp đến
giao tiếp.
 Cách thức sử dụng kit, những hoạt động bên trong kit về lệnh, dữ liệu
… mà sau đó sẽ được thay thế bằng cách nạp từ máy tính.
 Giao tiếp máy tính.
 Một số điểm cần lưu ý khi viết một chương trình bằng ngôn ngữ gợi
nhớ cho chương trình dòch Assembler để tạo ra một file có phần mở rộng .prn.
 Cấu trúc một file .prn, những số liệu nào cần xuất.
 Đôi nét về ngôn ngữ C, chương trình Download
 Chương trình nhận dữ liệu.
IV. MỤC ĐÍCH NGHIÊN CỨU

Trước mắt: đây là một vấn đề hay, đã thu hút người viết từ lâu mà nay mới có
dòp thực hiện, và cũng là nhu cầu cần thiết trong thực tế.
Lâu dài: tuy chỉ là một thiết kế đơn giản, nhưng là một cơ sở ban đầu có thể
phát triển thêm ra hướng tổng quát.
V. XÁC ĐỊNH THUẬT NGỮ
Tựa đề tài là “Giao tiếp máy tính với kit vi xử lý 8085”. Thực chất, vấn đề
giao tiếp chỉ là một cơ sở, phương tiện chủ yếu. Còn sản phẩm của đề tài là một giao
diện trên màn hình vi tính mà trong đó, người dùng cho thể chọn fie cần truyền, và
truyền xuống kit qua một port nào đó để nạp dữ liệu vào RAM.
Đề tài này chỉ thực hiện việc nạp dữ liệu vào RAM mà sau đó sẽ có những
phát triển khác. Thực tế đề ra là việc thực hành lập trình vi xử lý trên kit, chương
trình chỉ là để thực tập, chủ yếu chỉ nạp vào RAM, mà việc nạp dữ liệu vào Kit mất
nhiều thời gian, và mục đích của đề tài trước tiên là để giải quyết vấn đề đó, sau đó
có thể phát triển lên để đọc các vùng RAM, EPROM.











Click to buy NOW!
P
D
F
-

X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c

o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-

t
r
a
c
k
.
c
o
m
LUÂÄN VĂN TỐT NGHIỆP

6


Từ vấn đề đặt ra như ở chương 1 đã trình bày, người thực hiện đề tài đã tiến
hành giải quyết theo hướng sau:
 Xác đònh thiết bò giao tiếp: Kit vi xử lý 8085 đã có sẵn các IC ngoại vi 8255 làm
nhiệm vụ giao tiếp, chỉ cần chọn IC, xác đònh đòa chỉ của IC đó, đòa chỉ của các
port vào ra, mode hoạt động của các port, xác đònh các điểm nối kết phần cứng
với máy tính và viết chương trình nhận, phát dữ liệu.
 Xác đònh cổng giao tiếp: đối với máy tính: chọn cổng LPT1 (mà sau này có thể
phát triển để có thể sử dụng cả LPT2, COM1, COM2) với phướng pháp giao tiếp
song song bất đồng bộ.
 Xây dựng giao diện trên màn hình máy tính:Yêu cầu cần có …… và phù hợp với
người sử dụng. Sau đó tiến hành viết giải thuật, và bắt tay vào viết chương trình.
Ở đây, người thực hiện đã viết chương trình truyền dữ liệu trong môi trường
Borland C 3.1. Trong quá trình viết, phải giải quyết những khó khăn phát sinh
một cách cụ thể.
 Viết chương trình truyền, nhận dữ liệu với Kit.
 Ghép nối các phần lại.

 Thử nghiệm.
 Sửa lỗi.
 Phương pháp chủ yếu là tham khảo tài liệu và thực nghiệm
























Click to buy NOW!
P
D

F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k

.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c

u
-
t
r
a
c
k
.
c
o
m
LUÂÄN VĂN TỐT NGHIỆP

8

I. KIT THỰC TẬP VI XỬ LÝ 8085:
Kit thực tập vi xử lý 8085 là một loại máy tính chủ yếu phục vụ cho mục đích
học tập và nghiên cứu thiết kế về lónh vực vi xử lý. Kit này, xuất phát tại trường ĐH
Sư phạm kỹ thuật – Trung tâm Việt-Đức, và do nhu cầu học tập và nhu cầu thực tế,
các giáo viên trong bộ môn Điện-Điện tử của trường đã cải tiến cho phù hợp. Mặt
khác, sinh viên thuộc khoa, trong các đề tài tốt nghiệp, đồ án môn học, cùng với sự
hứng thú, đã tham khảo, tìm hiểu về cấu tạo và nguyên lý hoạt động, và mở rộng
thêm một số chức năng cho kit.
Một Kit thực tập vi xử lý thường có các phần chính được trình bày trong sơ đồ
khối ở (Hình 1).
Với mục đích của đề tài này là giao tiếp song song nên trong Kit 8085, chỉ cần
quan tâm đến 8085 và bộ lệnh 8085, 8255, 8279.
I.1. SƠ LƯC VI XỬ LÝ 8085:
Vi xử lý (microprocessor) là một thiết bò bán dẫn chứa các mạch logic điện tử
có khả năng xử lý các dữ liệu, chương trình từ ngoài đưa vào để điều khiển các IC,

thiết bò kết nối theo mục đích đònh trước.
I.1.1. Cấu trúc phần cứng:
I.1.1.1. Cấu trúc bên ngoài:
8085 là một bộ vi xử lý 8 bit do Intel sản xuất, đầu tiên vào năm 1977. Nó có
khả năng đònh đòa chỉ cho bộ nhớ tới 64 Kbyte, IC này có 40 chân, dạng DIP, sử
dụng nguồn đơn + 5V.
Chức năng, dạng tín hiệu, trạng thái các chân của 8085 được cho ở bảng sau:
Bảng 1:
Chân Ký hiệu In/out 3 state

Ý nghóa
1,2 X1, X2 I X1, X2 là 2 ngõvào của mạch dao
động. Tần số ngõ vào được chia cho 2
bởi mạch chia bên trong. Tần số làm
việc cực đạicủa:
8085A: 6MHz
8085A-2: 10MHz
8085A-1:12MHz
3 Reset Out O Cho biết CPU đang reset. Tín hiệu này
có thể dùng để reset các thành phần
khác trong mạch.
4 SOD O Serial Output: ngõ ra dữ liệu nối tiếp
được xác đònh bởi lệnh SIM.
Click to buy NOW!
P
D
F
-
X
C

h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m

Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r

a
c
k
.
c
o
m
LUÂÄN VĂN TỐT NGHIỆP

9

5 SID I Serial Input: ngõ vào dữ liệu nối tiếp,
dữ liệu này được nạpàobit thứ 7 của
thanh ghi Accumulator khi thực hiện
lệnh RIM.
6 TRAP I Trap: tín hiệu không ngăn được. Ngõ
vào trap được kích bởi cạnh lên.
7,8,9 RST 7.5, 6.5, 5.5

I Restart Intrerupt Repuest: là các tín
hiệu ngắt có thể ngăn được. RST 7.5
có thể được kích bằng cạnh, RST 6.5
và 5.5 có thể được kích bằng mức.
10 INTR I Interrupt: là tín hiệu ngắt thôngdụng
có thể che được lệnh kích bằng mức.
11 INTA\ O Interrupt Acknowledge: tín hiwệu
dùng để báo cho thiết bò yêu cầu ngắt
INTR biết rằng microprocessor đã
chấp nhận yêu cầu ngắt và thiết bò yêu
cầu ngắt hãy đặt lệnh lên bus dữ liệu.

19-12 AD7-AD0 I/O-3 Address/Data bus: các đường dữ liệu
và các đường đòa chỉ được tích hợp
chung với nhau. trạng thái T1 của
chu kỳ máy, cá ngõ này đóng vai trò là
các ngõ ra đòa chỉ. Các trạng thái còn
lại của chu kỳ máy, nó đóng vai trò là
các đường dữ liệu.
20 Vss Ground.
28-22 A15-A8 O-3 Address bus:các ngõ này được dùng để
xuất 8 bit đòa chỉ cao.
30 ALE O Address Latch Ennable: ngõ này tạ ra
một xungở trạng thái T1 của chu kỳ
máy để xác đònh A15-A8 và AD7-AD0
là các đường đòa chỉ.
31 WR\ O-3 Write: dùng để xác đònh icroprocessor
đang thực hiện lệnh ghi dữ liệu lên bộ
nhớ hay IO.
32 RD\ O-3 Read: dùng để xác đònh
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e


V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-

X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c

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

10

microprocessor đang thực hiện lệnh
đọc dữ liệu từ bộ nhớ hay IO.
29,33,34

S0,S1, IO/M\ O,O-3 Machine Cycle Status: 3 bit này cho
biết trạng thái chu kỳ máy.
IO/M\

S1

S0

Trạng thái
0 0 1 Memory Write
0 1 0 Memory Read
0 1 1 Op-code fetch.
1 0 1 IO write.
1 1 0 IO read.

1 1 1 Interrupt Ackowledge.

trạng thái dừng (halt), S1=S2=0 và
IO/M\ ở trạng thái tổng trở cao. Trong
khoảng thời gian Hold và reset thì

trạng thái của S0 và S1 không xác
đònh,IO/M\ ở trạng thái tổng trở cao.
Thường thì các bit WR\, RD\ và IO/M\
dùng để xác đònh trạng thái làm việc
của bus như: memory read, memory
write, IO read, IO write.
35 READY I Ready là tín hiệu trả lời từ bộ nhớ
hoặc thiết bò ngoại vi IO cho
microprocesser biết để microprocessor
có thể hoàn thành chu kỳ máy đang
thực hiện.
36 RESET IN I Reset: ngõ vào reset 8085 để trở về
trạng thái ban đầu của nó. Tín hiệu
này phải ở mức 0 khoảng 3 chu kỳ
xung clock.
37 CLK O Clock out: ngõ ra tín hiệu clock để
cung cấp cho các thiết bò khác. Tần số
của nó bằngtần số ngõ vào chia 2.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e


V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-

X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c

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

11

38 HLDA O Hold Ackowledge: tín hiệu ngõ ra cho
biết tín hiệu hold đã được chấp nhận
và CPU sẽ ở trạng thái Hold ở chu kỳ
xung clock tiếp theo.
39 HOLD I Hold request: nhận tín hiệu yêu cầu
ngưng từ bộ điều khiển DMA.
40 Vcc Power: nguồn cung cấp +5V.

Các chân của IC đượïc bố trí như hình vẽ sau (hình 2):






















8085
CLK(OUT)
RESET(OUT)
A11
S0
AD6
22
INTA
Vss
AD2
3 HLDA
32
35
38
15
5
S1
AD5
21
24
18
7
RST5.5
IO/M

X2
RST7.5
AD1
13
10
9
8
SOD
INTR
WR
17
2 HOLD
28
30
39
11
4
AD4
29
31
37
40
6
1
READY
X1
AD0
19
A10
A12

A15
RD
SID
16
Vcc
36
14
RST6.5
20
23
26
A9
A14
ALE
AD7
25
A8
A13
TRAP
27
33
12
AD3
34
RESET IN
8085 Pinout






Hình 2: Sơ đồ chân và các tín hiệu của 8085
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-

t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w

w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m

×