P. 1
Do Khoang Cach Dung Song Sieu Am

Do Khoang Cach Dung Song Sieu Am

|Views: 1,200|Likes:
Được xuất bản bởiĐông Thức Nguyễn
Do Khoang Cach Dung Song Sieu Am
Do Khoang Cach Dung Song Sieu Am

More info:

Published by: Đông Thức Nguyễn on Mar 16, 2012
Bản quyền:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

07/13/2014

pdf

text

original

Đồ Án Môn Học 2 GVHD: Th.

S Nguyễn Duy Thảo

2
SVTH: Nguyễn Đông Thức MSSV: 08101139



LỜI NÓI ĐẦU

Ngày nay với sự phát triển không ngừng của khoa học kỹ thuật đã làm cho
cuộc sống của con ngƣời ngày càng đƣợc nâng cao về mọi mặt trong cuộc sống,
trong sinh hoạt cũng nhƣ trong sản xuất. Với việc ứng dụng khoa học kỹ thuật vào
cuộc sống đã làm cho chất lƣợng cuộc sống nâng lên rõ rệt, đặt biệt là nâng cao
năng suất lao động trong các nhà máy, xí nghiệp. Đó là việc ứng dụng các mạch
điện tử vào trong các dây chuyền sản xuất. Các mạch điện tử này với độ chính xác
cao và dễ sử dụng đã dần dần thay thế đƣợc vai trò của ngƣời công nhân trong các
nhà máy, xí nghiệp.
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

3
SVTH: Nguyễn Đông Thức MSSV: 08101139

LỜI CẢM ƠN
Để hoàn thành đồ án này em đã nhận đƣợc sự hƣớng dẫn và chỉ bảo tận tình
của Giáo viên hƣớng dẫn. Em xin chân thành cảm ơn thầy Nguyễn Duy Thảo đã tận
tình hƣớng dẫn và chỉ dạy cho em trong suốt quá trình thực hiện đồ án này.
Qua đây em cũng xin gửi lời cảm ơn đến các Thầy Cô trong khoa Điện- Điện
tử cũng nhƣ trong trƣờng đã cung cấp cho em những kiến thức nền tảng cũng nhƣ
chuyên ngành trong suốt những học kỳ qua. Chính những điều này đã giúp em hoàn
thành đồ án này một cách tốt đẹp.
Xin cảm ơn quí thầy cô trong thƣ viện trƣờng đã tạo điều kiện cho em có đƣợc
các tài liệu cần thiết để thực hiện đồ án này.
Sau cùng, em xin gửi lời cảm ơn chân thành đến những ngƣời thân trong gia
đình, các bạn bè trong và ngoài lớp, những ngƣời đã luôn góp ý, động viên, khuyến
khích và giúp đỡ cho đồ án này hoàn thành.

Ngày 28 tháng 11 năm 2011
Sinh viên thực hiện


Nguyễn Đông Thức






Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

4
SVTH: Nguyễn Đông Thức MSSV: 08101139


NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN

.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................

Tp Hồ Chí Minh, ngày 28 tháng 11 năm 2011
Giáo viên hƣớng dẫn


Nguyễn Duy Thảo


Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

5
SVTH: Nguyễn Đông Thức MSSV: 08101139

MỤC LỤC

PHẦN 1: GIỚI THIỆU ĐỀ TÀI
PHẦN 2: LÝ THUYẾT TỔNG QUAN
2.1 Sơ đồ khối của hệ thống.
2.2 Phân tích từng khối.
2.3 Giới thiệu linh kiện.
2.3 Sơ đồ nguyên lý.
PHẦN 3: THIẾT KẾ VÀ THI CÔNG
3.1 Lƣu đồ giải thuật.
3.2 Mã nguồn chƣơng trình(code).
3.3 Mô phỏng
3.4 Sơ đồ mạch in
PHẦN 4: KẾT LUẬN
PHẦN 5: TÀI LIỆU THAM KHẢO


Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

6
SVTH: Nguyễn Đông Thức MSSV: 08101139

PHẦN 1: GIỚI THIỆU ĐỀ TÀI
Sau 3 năm học tại khoa Điện-điện tử của trường đại học sư phạm kỹ thuật
thành phố Hồ Chí Minh, em đã có một số kiến thức nhất định về điện tử cơ bản, kỹ
thuật số, và những kỹ năng lập trình cho vi xử lý. Quan sát cuộc sống thực tế thì em
thấy đo khoảng cách là một ứng dụng thường được sử dụng. Thì bằng những kiến
thức đã có em đã tìm hiểu và từng bước cho ra đời sản phẩm là một mạch đo
khoảng cách. Mặc dù nó không được chính xác như một chiếc máy đo chuyên dụng
nhưng cũng tương đối chính xác và có thể sử dụng được.
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

7
SVTH: Nguyễn Đông Thức MSSV: 08101139

PHẦN 2: LÝ THUYẾT TỔNG QUAN

2.1 SƠ ĐỒ KHỐI HỆ THỐNG



























KHỐI
CẢM
BIẾN
KHỐI NGUỒN
KHỐI
XỬ

KHỐI
HIỂN
THỊ
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

8
SVTH: Nguyễn Đông Thức MSSV: 08101139

2.2 PHÂN TÍCH TỪNG KHỐI

2.2.1 Khối nguồn
Sử dụng nguồn 5V cung cấp điện áp cho các linh kiện trong mạch hoạt động.

2.2.2 Khối cảm biến
Ở đây, ta sử dụng IC SRF05 phát xung tới vị trí cần đo, sau đó nó tự tạo ra một
xung ở chân ECHO, độ rộng xung này tỉ lệ với khoảng cách cần đo.

2.2.3 Khối xử lí
Sử dụng vi điều khiển AT89S52 để kích xung điều khiển SRF05 hoạt động và đo
độ rộng xung ở chân ECHO của SRF05.Sau khi đo xong vi điều khiển sẽ tính toán
và đƣa giá trị đến cho LCD hiển thị kết quả.

2.2.4 Khối hiển thị
Sử dụng LCD 16x2 để hiển thị khoảng cách đo đƣợc.














Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

9
SVTH: Nguyễn Đông Thức MSSV: 08101139

2.3 GIỚI THIỆU LINH KIỆN

2.3.1 VI ĐIỀU KHIỂN AT89S52
AT89S52 thuộc họ 8051 có 40 chân cho các chức năng khác nhau như vào
ra I/O, đọc RD, ghi WR, địa chỉ, dữ liệu và ngắt.

















A/ MÔ TẢ CÁC CHÂN
Chân VCC:
Chân số 40 là VCC cấp điện áp nguồn cho chip. Nguồn điện áp là +5V.
Chân GND:
Chân số 20 là GND.
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

10
SVTH: Nguyễn Đông Thức MSSV: 08101139

Chân XTAL1 và XTAL2:
89S52 có một bộ giao động trên chip nhƣng nó yêu cầu có một xung đồng hồ
ngoài để chạy nó. Bộ giao động thạch anh thƣờng xuyên nhất đƣợc nối tới các chân
đầu vào XTAL1 (chân 19) và XTAL2 (chân 18). Bộ giao động thạch anh đƣợc
nối tới XTAL1 và XTAL2 cũng cần hai tụ điện giá trị 33pF. Một phía của tụ điện
đƣợc nối xuống đất.
Chân Reset:
Chân số 9 là chân tái lập reset. Nó là một đầu vào tích cực mức cao(bình thƣờng
mức thấp).Nhằm làm cho đầu vào RESET có hiệu quả thì nó phải có tối thiểu 2 chu
kì máy, hay nói cách khác, xung cao phải kéo dài 2 chu kì máy trƣớc khi nó xuống
thấp.Trong 8051 một chu kì máy bằng 12 chu kì dao động.
Mạch reset:





C1
10uF
R1
100
R2
8K2
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

11
SVTH: Nguyễn Đông Thức MSSV: 08101139

Chân EA:
Tín hiệu vào EAở chân 31 thƣờng đƣợc mất lên mức 1 hoặc mức 0.
Nếu ở mức 1, 89S52 thi hành chƣơng trình từ bộ nhớ nội.
Nếu ở mức 0, 89S52 sẽ thi hành chƣơng trình từ bộ nhớ ngoại.
Chân PSEN (program store enable): tín hiệu xuất ra từ vi điều khiển để điều
khỉên đọc bộ nhớ chƣơng trình. Nếu sử dụng bộ nhớ chƣơng trình ngoài thì PSEN
đƣợc nối với OE của ROM, nếu không sử dụng thì bỏ trống chân này.
Chân ALE ( address latch enable): cho phép chốt địa chỉ. Tín hiệu ALE sẽ đƣợc
nối với chân LE của IC chốt.
Các PORT:
Port 0 (chân 32 – 39): là port có hai chức năng. Trong các thiết kế cỡ nhỏ
không dùng bộ nhớ mở rộng, nó có chức năng nhƣ các đƣờng IO. Đối với
các thiết kế cỡ lớn có bộ nhớ mở rộng, nó đƣợc kết hợp giữa bus địa chỉ và
bus dữ liệu.
Port 1 (chân 1 – 8): là port IO, các chân P1.0, P1.1, P1.2, có thể dùng cho
giao tiếp với các thiết bị ngoài nếu cần. Ngoài ra chân P1.0 cũng là ngõ vào
của timer 2, chân P1.1 là ngõ vào ngắt ngoài timer 2 của 8952.
Port 2 (chân 21 – 28): là 1 port đa năng đƣợc dùng nhƣ các đƣờng xuất nhập
hoặc là byte cao của bus địa chỉ đối với các thiết bị dùng bộ nhớ mở rộng.
Port 3 (chân 10 – 17): là port đa năng nếu không sử dụng thì port 3 dùng làm
IO; nếu có sử dụng thì có các chức năng đặc biệt sau :
 P3.0 - RxD: dùng để nhận dữ liệu nối tiếp trong khi giao tiếp UART hay giao
tiếp máy tính.
 P3.1 - TxD: dùng để truyền dữ liệu nối tiếp trong khi giao tiếp UART hay
giao tiếp máy tính.
 P3.2 - INT0: tín hiệu ngắt ngoài thứ 0.
 P3.3 - INT1: tín hiệu ngắt ngoài thứ 1.
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

12
SVTH: Nguyễn Đông Thức MSSV: 08101139
 P3.4 - T0: ngõ vào nhận xung ngoại cho timer / counter 0.
 P3.5 - T1: ngõ vào nhận xung ngoại cho timer / counter 1.
 P3.6 - WR: điều khiển ghi dữ liệu.
 P3.7 - RD: điều khiển đọc dữ liệu.
B/ TỔ CHỨC BỘ NHỚ
Vi điều khiển 89S52 có bộ nhớ nội bên trong và có khả năng giao tiếp với bộ
nhớ bên ngoài nếu bộ nhớ bên trong không có đủ khả năng lƣu trữ chƣơng trình.
Bộ nhớ bên trong gồm có 2 loại bộ nhớ: bộ nhớ dữ liệu và bộ nhớ chƣơng
trình. Bộ nhớ dữ liệu có 256 byte, bộ nhớ chƣơng trình có dung lƣợng 8 kbyte.
Bộ nhớ mở rộng bên ngoài cũng gồm có 2 loại: bộ nhớ dữ liệu và bộ nhớ
chƣơng trình. Khả năng giao tiếp là 64kbyte cho mỗi loại. Hình sau minh hoạ khả
năng giao tiếp bộ nhớ của vi điều khiển 89S52.

Bộ nhớ mở rộng bên ngoài và bộ nhớ chƣơng trình bên trong và bộ nhớ
chƣơng trình bên trong không có gì đặc biệt – chỉ có chức năng lƣu trữ dữ liệu và
mã chƣơng trình nên không cần phải khảo sát.
Bộ nhớ chƣơng trình bên trong của vi điều khiển thuộc loại bộ nhớ FLASH
ROM cho phép xoá bằng xung điện và lập trình lại.
Bộ nhớ RAM nội bên trong là một bộ nhớ đặc biệt ngƣời sử dụng vi điều
khiển cần phải nắm rõ cách tổ chức và các chức năng đặc biệt của bộ nhớ này.

Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

13
SVTH: Nguyễn Đông Thức MSSV: 08101139

RAM bên trong 89S52 đƣợc phân chia nhƣ sau:
 Các bank thanh ghi có địa chỉ từ 00H đến 1FH.
 RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH.
 RAM đa dụng từ 30H đến 7FH.
 Các thanh ghi chức năng đặc biệt 80H đến FFH.






Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

14
SVTH: Nguyễn Đông Thức MSSV: 08101139
C/ CÁC THANH GHI CÓ CHỨC NĂNG ĐẶC BIỆT
Các ô nhớ có địa chỉ 80H, 90H, A0h, B0h: Là các Port của 89S52 bao gồm
port0 có địa chỉ là 80H, Port1 có địa chỉ 90H, Port2 có địa chỉ A0H và Port3 có địa
chỉ B0H. Tất cả các Port này có thể truy xuất từng bit nên rất thuận tiện trong điều
khiển IO.
Ô nhớ có địa chỉ 81H: Là thanh ghi con trỏ ngăn xếp SP (stack pointer) - có
chức năng quản lý địa chỉ của bộ nhớ ngăn xếp. Bộ nhớ ngăn xếp dùng để lƣu trữ
dữ liệu tạm thời trong quá trình vi điều khiển thực hiện chƣơng trình.
Ô nhớ có địa chỉ 82h và 83h: Là 2 thanh ghi dpl (byte thấp) có địa chỉ là 82H
và dph (byte cao) có địa chỉ 83H. Hai thanh ghi này có thể sử dụng độc lập nếu lƣu
trữ dữ liệu và có thể kết hợp lại tạo thành 1 thanh ghi 16 bit có tên là dptr và gọi là
con trỏ dữ liệu – đƣợc dùng để lƣu địa chỉ 16 bit khi truy xuất dữ liệu bên ngoài.
Ô nhớ có địa chỉ 87H: Là thanh ghi pcon (power control) có chức năng điều
khiển công xúât khi vi điều khiển làm việc hay ở chế độ chờ.
Các ô nhớ có địa chỉ từ 88H đến 8DH : Là các thanh ghi phục vụ cho 2
timer/ counter T1, T0. Thanh ghi TH0 và TL0 kết hợp lại tạo thành 1 thanh ghi 16
bit có chức năng lƣu trữ xung đếm cho timer/counter T0. Tƣơng tự cho 2 thanh ghi
TH1 và TL1 kết hợp lại lƣu trữ xung đếm cho timer/counter T1. Khả năng lƣu trữ
số lƣợng xung đếm là 65536 xung.
Các ô nhớ có chức năng 98H đến 99H : Là 2 thanh ghi scon và sbuf:scon
(series control): thanh ghi điều khiển truyền dữ liều nối tiếp. Sbuf (series buffer ):
thanh ghi đệm dữ liệu truyền nối tiếp.
Các ô nhớ có địa chỉ từ A8H đến B9H : Là 2 thanh ghi IE và IP – thanh ghi
IE (interrupt enable): thanh ghi điều khiển cho phép / không cho phép ngắt. IP
(interrupt priority): thanh ghi điều khiển ƣu tiên ngắt.



Thanh ghi trạng thái chƣơng trình (PSW: Program Status Word): Thanh ghi
trạng thái chƣơng trình có địa chỉ D0H đƣợc tóm tắt nhƣ sau:
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

15
SVTH: Nguyễn Đông Thức MSSV: 08101139

Thanh ghi B : Thanh ghi B có địa chỉ F0H đƣợc dùng cùng với thanh ghi A
để thực hiện các phép toán nhân chia. Lệnh MUL AB: sẽ nhận giá trị không dấu 8
bit với 8 bit trong hai thanh ghi A và B, rồi trả về kết quả 16 bit trong A (byte cao)
và B(byte thấp). Lệnh DIV AB: lấy giá trị trong thanh ghi A chia cho giá trị trong
thanh ghi B, kết quả nguyên lƣu trong A, số dƣ lƣu trong B.

D/ BỘ ĐỊNH THỜI TIMER TRONG VI ĐIỀU KHIỂN
 Thanh ghi chọn kiểu làm việc cho Timer-Mode Register



Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

16
SVTH: Nguyễn Đông Thức MSSV: 08101139


 Thanh ghi điều khiển- Control Register





Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

17
SVTH: Nguyễn Đông Thức MSSV: 08101139

E/ HOẠT ĐỘNG NGẮT CỦA VI ĐIỀU KHIỂN


 Tổ chức ngắt
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

18
SVTH: Nguyễn Đông Thức MSSV: 08101139
Vi điều khiển 89S52 có 6 nguồn ngắt

 Cho phép ngắt/cấm ngắt
Trong vi điều khiển có một thanh ghi IE ở địa chỉ 0A8H có chức năng cho
phép/ cấm ngắt. Ta sử dụng thanh ghi này để cho phép hay không cho phép đối với
từng nguồn ngắt và cho toàn bộ các nguồn ngắt.




Hoạt động của từng bit trong thanh ghi cho phép ngắt IE đƣợc tóm tắt trong
bảng dƣới đây:
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

19
SVTH: Nguyễn Đông Thức MSSV: 08101139

 Cấu trúc ngắt của vi điều khiển






 Các vector ngắt
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

20
SVTH: Nguyễn Đông Thức MSSV: 08101139



2.3.1 CẢM BIẾN SIÊU ÂM



A/ CÁC MODE HOẠT ĐỘNG
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

21
SVTH: Nguyễn Đông Thức MSSV: 08101139


Sơ đồ chân SRF05







Giản đồ xung mode 1:
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

22
SVTH: Nguyễn Đông Thức MSSV: 08101139






B/ TÍNH TOÁN KHOẢNG CÁCH
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

23
SVTH: Nguyễn Đông Thức MSSV: 08101139






2.3.2 LCD 16X2
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

24
SVTH: Nguyễn Đông Thức MSSV: 08101139

A/ CHỨC NĂNG CÁC CHÂN



Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

25
SVTH: Nguyễn Đông Thức MSSV: 08101139
B/ CÁC LỆNH ĐẾN THANH GHI CỦA LCD

C/ DẠNG SÓNG DIỀU KHIỂN LCD


2.4 SƠ ĐỒ NGUYÊN LÝ
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

26
SVTH: Nguyễn Đông Thức MSSV: 08101139






PHẦN 3: THIẾT KẾ VÀ THI CÔNG
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

27
SVTH: Nguyễn Đông Thức MSSV: 08101139
3.1 LƢU ĐỒ GIẢI THUẬT
3.1.1 LƢU ĐỒ KHỞI TẠO LCD






3.1.2 LƢU ĐỒ MAIN PROGRAM
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

28
SVTH: Nguyễn Đông Thức MSSV: 08101139



Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

29
SVTH: Nguyễn Đông Thức MSSV: 08101139









Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

30
SVTH: Nguyễn Đông Thức MSSV: 08101139
3.2 MÃ NGUỒN CHƢƠNG TRÌNH
3.2.1 CHƢƠNG TRÌNH CHÍNH
LCD_E BIT P3.0
LCD_RW BIT P3.1
LCD_RS BIT P3.2
LCD_DATA EQU P2
ECHO BIT P1.0
TRIGGER BIT P1.1
DEM EQU R0
CHUCDONVI EQU 10H
NGANTRAM EQU 11H
CHUCNGAN EQU 12H
DEMTV EQU R3
CHUKY EQU R4
BL EQU R6
BH EQU R7

ORG 000H
JMP MAIN

ORG 000BH
INC DEM
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

31
SVTH: Nguyễn Đông Thức MSSV: 08101139
MOV TH0,#HIGH(-232)
MOV TL0,#LOW(-232)
RETI

MAIN:
MOV TMOD,#01H
SETB EA
SETB ET0
CALL KTAO_LCD
CALL HT_HANG1
CALL HT_HANG2
LB0: MOV DEM,#0
SETB TRIGGER
CALL DELAY10US
CLR TRIGGER

JNB ECHO,$
MOV TH0,#HIGH(-232)
MOV TL0,#LOW(-232)
SETB TR0
JB ECHO,$
CLR TR0
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

32
SVTH: Nguyễn Đông Thức MSSV: 08101139
CALL CAL_PULSE
MOV B,23H
MOV A,24H
CALL HEXTOBCD
CALL BCDTOASCII
CALL HT_RESULT
JMP LB0

3.2.2 CÁC CHƢƠNG TRÌNH CON
A/ CHƢƠNG TRÌNH CON KHỞI TẠO LCD
KTAO_LCD:
MOV LCD_DATA,#38H
CALL GHI_DIEUKHIEN

MOV LCD_DATA,#38H
CALL GHI_DIEUKHIEN

MOV LCD_DATA,#38H
CALL GHI_DIEUKHIEN

MOV LCD_DATA,#0CH
CALL GHI_DIEUKHIEN
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

33
SVTH: Nguyễn Đông Thức MSSV: 08101139

MOV LCD_DATA,#01H
CALL GHI_DIEUKHIEN

MOV LCD_DATA,#06H
CALL GHI_DIEUKHIEN
RET

B/ CHƢƠNG TRÌNH CON HEXTOBCD
HEXTOBCD:
MOV CHUCDONVI,#0
MOV NGANTRAM,#0
MOV CHUCNGAN,#0

MOV BH,A
MOV BL,B
MOV 50H,BH
MOV 51H,BL
MOV DEMTV,#15
HEXTOBCD1:
CALL XOAYDULIEU

Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

34
SVTH: Nguyễn Đông Thức MSSV: 08101139
;KIEM TRA HANG DON VI
MOV A,CHUCDONVI
ANL A,#0FH
CJNE A,#5,$+3
JC HEXTOBCD2
MOV A,CHUCDONVI
ADD A,#3
MOV CHUCDONVI,A

;KIEM TRA HANG CHUC
HEXTOBCD2:
MOV A,CHUCDONVI
ANL A,#0F0H
CJNE A,#50H,$+3
JC HEXTOBCD3
MOV A,CHUCDONVI
ADD A,#30H
MOV CHUCDONVI,A

;KIEM TRA HANG TRAM
HEXTOBCD3:
MOV A,NGANTRAM
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

35
SVTH: Nguyễn Đông Thức MSSV: 08101139
ANL A,#0FH
CJNE A,#5,$+3
JC HEXTOBCD4
MOV A,NGANTRAM
ADD A,#3
MOV NGANTRAM,A

;KIEM TRA HANG NGAN
HEXTOBCD4:
MOV A,NGANTRAM
ANL A,#0F0H
CJNE A,#50H,$+3
JC HEXTOBCD5
MOV A,NGANTRAM
ADD A,#30H
MOV NGANTRAM,A
HEXTOBCD5:
DJNZ DEMTV,HEXTOBCD1
CALL XOAYDULIEU
RET


Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

36
SVTH: Nguyễn Đông Thức MSSV: 08101139
XOAYDULIEU:
CLR C
MOV A,BL
RLC A
MOV BL,A
MOV A,BH
RLC A
MOV BH,A
MOV A,CHUCDONVI
RLC A
MOV CHUCDONVI,A
MOV A,NGANTRAM
RLC A
MOV NGANTRAM,A
RLC A
MOV CHUCNGAN,A
RET

C/ CHƢƠNG TRÌNH CON BCDTOASCII
BCDTOASCII:
MOV A,CHUCDONVI
ANL A,#0FH
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

37
SVTH: Nguyễn Đông Thức MSSV: 08101139
ADD A,#30H
MOV 30H,A

MOV A,CHUCDONVI
ANL A,#0F0H
SWAP A
ADD A,#30H
MOV 31H,A

MOV A,NGANTRAM
ANL A,#0FH
ADD A,#30H
MOV 32H,A

MOV A,25H
ADD A,#30H
MOV 33H,A

MOV A,26H
ADD A,#30H
MOV 34H,A
RET
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

38
SVTH: Nguyễn Đông Thức MSSV: 08101139

D/ CHƢƠNG TRÌNH CON CAL_PULSE
CAL_PULSE:
MOV A,TL0
SUBB A,#23
MOV B,#58
DIV AB
MOV 20H,B ; SO DU CUA PHEP CHIA
MOV 21H,A

MOV A,DEM
MOV B,#4
MUL AB
MOV 22H,B ;BYTE CAO CUA KET QUA PHEP NHAN
ADD A,21H
MOV 23H,A ;BYTE THAP CUA KET QUA DO
MOV A,22H
ADDC A,#0
MOV 24H,A ;BYTE CAO CUA KET QUA DO
MOV A,20H
MOV B,#6
DIV AB
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

39
SVTH: Nguyễn Đông Thức MSSV: 08101139
MOV 25H,A
MOV A,B
MOV B,#10
MUL AB
MOV A,B
MOV B,#6
DIV AB
MOV 26H,A
RET
D/ CHƢƠNG TRÌNH CON HIỂN THỊ KẾT QUẢ KÍCH THƢỚC ĐO ĐƢỢC
HT_RESULT:
MOV LCD_DATA,#89H
CALL GHI_DIEUKHIEN
MOV LCD_DATA,32H
CALL GHI_DATA
MOV LCD_DATA,31H
CALL GHI_DATA
MOV LCD_DATA,30H
CALL GHI_DATA
MOV LCD_DATA,#','
CALL GHI_DATA
MOV LCD_DATA,33H
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

40
SVTH: Nguyễn Đông Thức MSSV: 08101139
CALL GHI_DATA
MOV LCD_DATA,34H
CALL GHI_DATA
MOV LCD_DATA,#' '
CALL GHI_DATA
MOV LCD_DATA,#'C'
CALL GHI_DATA
MOV LCD_DATA,#'M'
CALL GHI_DATA
RET
E/ MỘT SỐ CHƢƠNG TRÌNH CON KHÁC
// CHƢƠNG TRÌNH CON HIỂN THỊ HÀNG THỨ 1 TRÊN LCD
HT_HANG1:
MOV LCD_DATA,#80H
CALL GHI_DIEUKHIEN
MOV DPTR,#DATAHANG1
CALL WRITE
RET
// CHƢƠNG TRÌNH CON HIỂN THỊ HÀNG THỨ 2 TRÊN LCD
HT_HANG2:
MOV LCD_DATA,#0C0H
CALL GHI_DIEUKHIEN
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

41
SVTH: Nguyễn Đông Thức MSSV: 08101139
MOV DPTR,#DATAHANG2
CALL WRITE
RET
// CHƢƠNG TRÌNH CON DÙNG ĐỂ GHI LỆNH ĐIỀU KHIỂN CHO LCD
GHI_DIEUKHIEN:
CLR LCD_RS
CLR LCD_RW
SETB LCD_E
NOP
NOP
CLR LCD_E
CALL DELAY10MS
RET
// CHƢƠNG TRÌNH CON DÙNG ĐỂ GHI DỮ LIỆU LÊN LCD
GHI_DATA:
SETB LCD_RS
CLR LCD_RW
SETB LCD_E
NOP
NOP
CLR LCD_E
CALL DELAY10MS
Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

42
SVTH: Nguyễn Đông Thức MSSV: 08101139
RET
// CHƢƠNG TRÌNH CON WRITE
WRITE:
MOV A,#0
MOVC A,@A+DPTR
CJNE A,#99H,WRITE1
RET

WRITE1:
MOV LCD_DATA,A
CALL GHI_DATA
INC DPTR
JMP WRITE









Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

43
SVTH: Nguyễn Đông Thức MSSV: 08101139
3.3 MÔ PHỎNG









Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

44
SVTH: Nguyễn Đông Thức MSSV: 08101139
3.4 MẠCH IN










Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

45
SVTH: Nguyễn Đông Thức MSSV: 08101139
PHẦN 4: KẾT LUẬN
1. Thành quả đạt đƣợc
- Mạch chạy ổn định, hiển thi khoảng cách đến giá trị nhỏ hơn mm.
- Biết lập trình đƣợc các mạch cơ bản ứng dụng trong thực tế.
- Nắm đƣợc nguyên tắc hoạt động của mạch.
2. Nhƣợc điểm
- Chƣa xóa số 0 vô nghĩa nên nhìn hơi bị rối mắt
- Không có nút nhấn chuyển từ đơn vị này sang đơn vị khác ( từ cm qua m hoặc cm
qua inch).
3. Hƣớng phát triển
Tìm hiểu thêm phần lập trình để hoàn hiện hóa các chức năng nhƣ: xóa số
không vô nghĩa, thêm chức năng chuyển qua lại giữa các đơn vị đo và giảm thiếu
sai số đo đến giá trị nhỏ nhất.










Đồ Án Môn Học 2 GVHD: Th.S Nguyễn Duy Thảo

46
SVTH: Nguyễn Đông Thức MSSV: 08101139
PHẦN 5: TÀI LIỆU THAM KHẢO
1. Giáo trình vi xử lý 1-Thầy Nguyễn Đình Phú - Trƣờng Đại học Sƣ Phạm Kỹ
Thuật TPHCM.
2. Giáo trình thực tập vi xử lý-vi điều khiển –Thầy Nguyễn Đình Phú.
3. Một số trang web tham khảo:
 http://www.dientuvietnam.net/forums/cam-bien-do-khoang-cach-103/lam-
sao-rap-cam-bien-sieu-am-srf05-39140/
 www.datasheet.com






You're Reading a Free Preview

Tải về
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->