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

ĐỒ ÁN HT CDT CỬA TỰ ĐỘNG

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 (906.29 KB, 57 trang )

ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

MỤC LỤC
LỜI NÓI ĐẦU ................................................................................3
CHƢƠNG I: TỔNG QUAN VỀ ĐỀ TÀI
1. Lý do chọn đề tài ............................................................................................... 4
2. Mục đích chọn đề tài ........................................................................................ 4
3. Giới thiệu về một số cửa tự động hiện nay .................................................. 5
3.1.Cửa kéo ....................................................................................................... 5
3. 2Cửa cuốn .................................................................................................... 5
3.3Cửa trƣợt..................................................................................................... 6

CHƢƠNG II: NỘI DUNG CỦA ĐỀ TÀI
1.Cấ u trúc phầ n cƣ́ng của ho ̣ MCS 51(AT89C51) ......................................... 7
1.1. Giới thiê ụ ho ̣ MCS – 8051...................................................................... 7
1.2. Vi điều khiển AT89C51 ............................................................................. 8
2. Tóm tắt các lệnh thƣờng dùng của VXL 89C51 ........................................ 13
3. CẤU TRÚC LCD 1602 .................................................................................... 19
3.1. Giới thiệu lcd 1602................................................................................... 19
3.2. Kết nối 1602 với vi điều khiển AT89C51 ............................................ 24

CHƢƠNG III: THIẾT KẾ VÀ THI CÔNG
1. THIẾT KẾ MẠCH NGUỒN...................................................................... 25
2. MẠCH ĐIỀU KHIỂN THIẾT BỊ ĐIỆN ................................................ 26
2.1. Sơ đồ nguyên lý mạch điện .................................................................... 26
2.2. Nguyên lý hoạt động của mạch ............................................................. 27
3. MẠCH CÔNG SUẤT ĐIỀU KHIỂN ĐỘNG CƠ ..................................... 28
3.1. Sơ đồ nguyên lý mạch điện .................................................................... 28
3.2.nguyên lý hoạt động ................................................................................. 28




ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

4. MẠCH HIỂN THỊ LCD .................................................................................. 29
4.1.Sơ đồ nguyên lý mạch điện..................................................................... 29
4.2.nguyên lý hoạt động ................................................................................. 29
5. MẠCH BÀN PHÍM .......................................................................................... 30
6. SƠ ĐỒ MẠCH BÁO ĐỘNG .......................................................................... 31
7. SƠ ĐỒ MẠCH IN CỦA TOÀN MẠCH ...................................................... 32

CHƢƠNG IV:THIẾT KẾ PHẦN MỀM
VÀ LƢU ĐỒ THUẬT TOÁN
1.Lƣu đồ thuật toán điều khiển tín hiệu ra ..................................................... 33
2. chƣơng trình mạch điều khiển ....................................................................... 34

CHƢƠNG V:KẾT LUẬN............................................................................57
TÀI LIỆU THAM KHẢO...........................................................................58


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

LỜI NÓI ĐẦU
Đất nước ta đang trong giai đoạn phát triển mạnh mẻ trên tất cả mọi lĩnh vực
kinh tế,xã hội,…Do đó vấn đề cấp bách đặt ra là cần phải phát triển các ngành kỹ
thuật. Trong đó phát triển ngành cơ điện tử cũng là một mục tiêu mà nước ta đang

đề ra.
Với nhận thức về tầm quan trọng của vấn đề trên, là một sinh viên ngành kỹ
thuật cơ điện tử trường Đại HọcBách Khoa trong những năm qua với sự dạy dỗ tận
tình của các thầy cô giáo trong khoa, em luôn cố gắng học hỏi và trau dồi kiến thức
để phục vụ tốt cho công việc sau này.
Trong khuôn khổ đồ ánhệ thống cơ điện tử em chọn đề tài cửa tự động điều
khiển bằng 89C51, đã phần nào giúp em làm quen với việc thiết kế một mạch điện
tử để sau này khi tốt nghiệp ra trường sẽ bớt đi những bỡ ngỡ trong công việc.Mặt
khác qua đó giúp em củng cố được những kiến thức đã học và kinh nghiệm cho
công việc của mình trong tương lai.
Được sự hướng dẫn nhiệt tình của thầy: ĐẶNG PHƯỚC VINH và các thầy cô
trong khoa cơ khi đến nay em đã hoàn thành đồ án. Tuy nhiên do thời gian có hạn,
kiến thức và kinh nghiệm còn hạn chế và lần đầu tiên vận dụng kiến thức cơ bản để
thực hiện một đồ án lớn nên chắc chắn không tránh khỏi những thiếu sót. Vậy kính
mong quý thầy cô thông cảm và chỉ dẫn thêm cho em.
Cuối cùng cho phép em được kính gửi lời cảm ơn chân thành đến thầy: ĐẶNG
PHƯỚC VINHđã tận tình hướng dẫn em hoàn thành đồ án này.
Đà nẵng,ngày tháng

năm 2012

Sinh viên thực hiện


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

CHƢƠNGI: TỔNG QUAN VỀ ĐỀ TÀI
1.Lý do chọn đề tài:

Ngày nay,những ứng dụng của vi điều khiển đã đi sâu vào đời sống sinh hoạt và
sản xuất của con người. Thực tế hiện nay là hầu hết các thiết bị điên dân dụng hay
công nghiệp đều có sự góp mặt của vi điều khiển và vi xử lí.Ứng dụng vi điều
khiển trong thiết kế hệ thống làm giảm chi phí thiết kế và hạ giá thành sản phẩm
đồng thười nâng cao tính ổn định của thiết bị và hệ thống.
Trên thị trường có rất nhiều họ vi điều khiển như: họ 68HC11 c ủa Motorola,
Z80 của hãng Eilog, PIC của hãng Microchip, H8 của Hitachi,vv..và cuối cùng là
họ MCS-51T M do hãng Intel phát triển và sản xuất.
Sự ra đời của họ MCS-51 T M bắt nguồn từ những nhu cầu của người sử
dụng.Nhờ vào sự tích hợp nhiều tính năng của họ này mà người ta có thể thiết kế
và lập trình cho nó hoạt động theo ý muốn. Chúng ta thừong dung những ngôn ngữ
như: Assembly, C,…trong đó ngôn ngữ Assembly là thông dụng nhất và khá đơn
giản.
Trong xã hội văn minh hiệnđại, cửa là một bộ phận không thể thiếuđược
trong từng công trình kiến trúc. Nhưng hầu hết các loại cửa bình thường mà chúng
ta hay dung hiện nay cửa chỉđóng mởđược khi có tác động của con người vào nó
hoặc các loại cửa tự động đóng mở và các loại cửa này chỉ đặt tại những nơi không đòi
hỏi sự an toàn cao.

Việc thiết kế ra mộtloạicửa an toàn và bảo mật, phục vụ tốt hơn cho đời
sống con người là tất yếu và vô cùng cần thiết.Xuất phát từ yêu cầuđó, cửa tự động
bằng mật mã được thiết kế là đểđảm bảo những yêu cầu bảo mật cũng như an toàn,
vừa khắc phục những nhược điểm của cửa thông thường. Vì khi sử dụng cửa tự
động bằng mật mã chỉ có chủ nhân của bộ cửa mới biết mật mã để mở cửa và nó
được lắp dặt tại những nơi đòi hỏi độ an toàn cao.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:


2. Mục đích chọn đề tài:
- Thực hiện đề tài này giúp em có điều kiện nghiên cứu sâu hơn về vi điều khiển
và các vấn đề liên quan như thi công mạch nạp, các phần mềm hỗ trợ lập trình
- Biết được cách lập trình cho vi điều khiển 89C51 và các ứng dụng của một số
linh kiện trong mạch.
- Biết được cách lập trình cho các thiết bị ngoại vi như ở đây là bàn phím, màn
hình lcd, động cơ dc, công tắc hành trình và các thiết bị khác có trong mạch.
3 Giới thiệu về một số cửa tự động hiện nay:
Hiện nay có nhiều loại cửa tự động: cửa kéo, cửa đẩy, cửa cuốn, cửa
trượt,…Nhưng chúng thường được sản xuất ở nước ngoài và bán tại Việt Nam với
giá thành khá cao vì thế chúng không được sử dụng rộng rãi. Mặc dù nhu cầu của
cửa tự động ở Việt Nam là rất lớn về số lượng và chủng loại.
3.1Cửa kéo:

Hinh 1.1:Cửa kéo
Loại cửa này còn khá lạ ở nước ta, kết cấu đơn giản với một động cơ được gắn
cố định với trần nhà. Cửa được động cơ kéo bằng một đoạn dây. Ưu điểm của loại
này là đơn giản nhưng hiệu quả, cánh cửa chắc. Có lẽ nhược điểm của loại cửa này
là động cơ gắn với trần nhà vì vậy cần phải gắn đủ chắc để chịu được sức nặng
của cửa. Vì vậy trong thực tế người ta ít sử dụng loại cửa kéo này do nhược điểm
là phải gắn đủ chắc để chịu sức nặng nếu không sẽ rất nguy hiểm cho người sử
dụng.
3.2Cửa cuộn:

Hình 1.2:Cửa cuộn


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ


G VHD:

Hình 1.3:Cửa cuộn
Loại cửa này với cánh cửa có khả năng cuộn tròn lại được.Khi có tín hiệu điều
khiển đóng mở cửa, động cơ của cửa sẽ tác động qua một trục cuốn cửa cuộn tròn
quanh trục đó.Loại cửa này có ưu điểm là gọn nhẹ tiện dụng và dễ sử dụng, chỉ cần
một động cơ công xuất nhỏ.Thường được dùng để làm cửa cho gara ô tô.Nó có
tính kinh tế cao vì dễ chế tạo.Nhưng ngược điểm là cửa không chắc chắn vầ dễ bị
hỏng hơn các loại cửa khác.
3.3Cửa trƣợt:

Hình 1.4:Cửa trượt
Loại cửa này có đặc điểm là có một ranh cố định cho phép cánh cửa có thể trượt
qua lại.Cửa trượt có nhiều loại, tùy thuộc vào hình dạng rãnh trượt như rãnh thẳng
thì là loại cửa chuyển động tịnh tiến, rãnh tròn thì là loại cửa chuyển động xoay
tròn. Loại cửa này thường được sử dụng trong nhà hang, khách sạn, sân bay,…Cửa
này có ưu điểm là kết cấu nhẹ nhàng tạo cảm giác thoáng đạt, thoải mái và lịch
sự.Loại cửa này thiết kế khá dễ dàng, có thể nhận biết được người, máy móc có thể
đi qua.Loại cửa này ở nước ta được sử dụng khá phổ biến.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

CHƢƠNG II: NỘI DUNG CỦA ĐỀ TÀI
1. Cấ u trúc phầ n cƣ́ng của ho ̣ MCS 51(AT89C51):
Phầ n này giới thiê ̣u về cấ u trúc phầ n cứng của ho ̣ vi xử lí MCS

- 51 mà


tiêu biể u là ho ̣ 8051. Ta se ̃ lầ n lươ ̣t khảo sát sơ đồ khố i , sơ đồ và chức năng của
các chân trong chíp . Ngoài ra, còn trình bày cấu trúc bên trong của vi điều khiển
gồ m tổ chức bô ̣ nhớ trong , bô ̣ nhớ ngoài…
1.1 Giới thiê ụ ho ̣ MCS – 8051:
MCS-51làhọviđiềukhiểncủahangIntel.VimạchtổngquátcủahọMCS51làchip8051. Chip8051cómộtsốđặctrưngcơbảnsau:
- Bộnhớchươngtrìnhbêntrong:4KB(ROM).
- Bộnhớdữliệubêntrong:128byte(RAM).
- Bộnhớchươngtrìnhbênngoài:64KB(ROM).
- Bộnhớdữliệubênngoài:64KB(RAM).
- 4portxuấtnhập(I/Oport)8bit.
- 2bộđịnhthời16bit.
- Mạch giaotiếpnốitiếp.
- Bộxửlýbit(thaotáctrêncácbit triênglẻ).
- 210vịtrínhớđượcđinhđịa chỉ,mỗivịtrí1bit.
- Nhân/ Chiatrong4µs.
Ngoàira,tronghọMCS-51còncómộtsốchipviđiềukhiểnkháccócấ u trúc
Tươngtự như :


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

Bảng 2.1:Đặctrưngcơbảncủa chíp
Chip

ROMtrong

RAMtrong


Bộđịnh thời

8031

0KB

128byte

2

8032

0KB

256byte

3

8051

4KBPR

128byte

2

8052

OM

8KBPR

256byte

3

8751

128byte

2

8752

OM
4KBUVEPROM
8KBUV-

256byte

3

8951

EPROM
4KBFL

128byte

2


8952

ASHROM
8KBFL

256byte

3

ASHROM
Ở đây ta xét họ tiêu biểu
là họ 8051, 8051 là một vi điều khiển 8 bit, chế
tạo theo công nghệ CMOS chất lượng cao , công suấ t thấ p với 4Kb EPROM ,
128Byte RAM , 32 đường I /O, 2 TIMER /COUNTER 16 Bit, 5 vecter ngắ t có
cấ u trúc 2 mức ngắ t , mô ̣t Port nố i tiế p bán song công , mạch tạo xung Clock và
bô ̣ dao đô ̣ng . Do có cấ u trúc như vâ ̣y , nên nó đươ ̣c ứng du ̣ng rấ t rô ̣ng raĩ . Trong
phạm vi đề tài của mình , do yêu cầ u của đề tài cũng không lớn nên em đã cho ̣n
dùng con AT 89C51
1.2.Vi điều khiển AT89C51:
AT89C51 là phiên bản 8051 có ROM trên chip là bộ nhớ Flash . Phiên bản
này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ FLASH có thể được xoá
trong vài giây . Tất nhiên là để dùng AT

89C51 cần phải có thiết bị lập trình

PROM hỗ trợ bộ nhớ Flash nhưng không cần đến thi

ết bị xoá ROM vì bộ nhớ


Flash được xoá bằng thiết bị lập trình PROM. Để tiện cho việc sử dụng, hiện
nay hãng Atmel đang nghiên cứu một phiên bản của AT89C51 cò thể lập trình
qua cổng COM của máy tính PC và như vậy sẽ không cần đến thiết bị lập trình
PROM.
a. Một số nét đặc trƣng:
- Tương thích với sản phẩm MCS-51
- Bộ nhớ chương trình bên trong: 4KB (ROM)
- Bộ nhớ dữ liệu bên trong: 128 KB (RAM)


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

- Port xuất nhập (I/O port) : 32
- 2 bộ định thời 16 bit
- Ngắt : 6
- Nguồn cấp : Vcc = 5V
- 3 vị trí khoá bộ nhớ chương trình.
- Mạch giao tiếp nối tiếp.
- Hoạt động tĩnh: từ 0 Hz đến 24 MHz
- Chạy không nguồn thấp và chế độ giảm nguồn.
- Số chân IC : 40
b. Sơ đồ chân và chức năng các chân của vi điều khiển AT89C51
U1
1
2
3
4
5

6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

P1.0
VCC
P1.1
P0.0/AD0
P1.2
P0.1/AD1
P1.3
P0.2/AD2
P1.4
P0.3/AD3
P1.5
P0.4/AD4
P1.6
P0.5/AD5

P1.7
P0.6/AD6
RST
P0.7/AD7
P3.0/RXD
EA/VPP
P3.1/TXD ALE/PROG
P3.2/INT0
PSEN
P3.3/INT1 P2.7/A15
P3.4/T0
P2.6/A14
P3.5/T1
P2.5/A13
P3.6/WR P2.4/A12
P3.7/RD
P2.3/A11
XTAL2
P2.2/A10
XTAL1
P2.1/A9
GND
P2.0/A8

AT89C51

Hình 2.1: Sơ đồ chân của AT89C51
Chức năng:
 Vcc: nguồn cấp (chân số 40)
 GND: Nối đất (chân số 20 )

 Port 0:
- Port 0 (P0.0 – P0.7) có số chân từ 32- 39

40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

- Port 0 là port xuất nhập 8 bit 2 chiều. Port 0 được định hình làm bus địa chỉ

(byte thấp) và làm bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài
và bộ nhớ chương trình ngoài. Port 0 nhận các byte mã trong khi lập trình cho
Flash và xuất các byte mã trong khi kiểm tra chương trình.
 Port 1 :
- Port 1 (P1.0 – P1.7) có số chân từ 1 – 8.
- Port 1 là một port xuất nhập 8 bit có các điện trở kéo lên bên trong.khi các logic 1
được đặt lên các chân của port 1, các chân này được kéo lên mức cao bởi các điện trở
kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi thực hiện là các port
nhập, các chân của port 1 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng
cho các điện trở kéo lên bên trong.
 Port 2 :
- Port 2 (P2.0 – P2.7) có số chân từ 21 -28
- Port 2 là port xuất nhập 8bit 2 chiều có các điện trở kéo lên bên trong. Khi các
logic 1 được đặt lên các chân của port 2, các chân này được sử dụng như là các ngõ
vào. Khi thực hiện chức năng port nhập, các chân port 2 được kéo xuống mức thấp do
tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bên trong. Port 2 tạo ra byte
cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớ chương trình ngoài và trong
thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 16 bit.
 Port 3 :
- Port 3 (P3.0 - P3.7) có số chân từ 10 – 17
- Port 3 là port xuất nhập 8 bit 2 chiều có các điện trở kéo lên bên trong. Khi các
logic 1 được đặt lên các chân của port 3 các chân này được đưa lên mức cao bởi các
điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi làm chức
năng port nhập, các chân port 3 được kéo xuống mức thấp do tác động bên ngoài cấp
dòng do có các điện trở kéo lên bên trong. Port 3 còn được sử dụng làm các chức năng
khác của AT89C51.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ


G VHD:

 RST : Thiết lập lại ( chân 9). Mức cao trên chân này trong 2 chu kì máy trong

Bảng 2.2: Chức năng của Port 3
Bit

Tên

Địa chỉ bit

Chức năng

P3.0

RxD

B0H

P3.1

TxD

B1H

P3.2

INT0

B2H


Ngõ vào ngắt ngoài 0

P3.3

INT1

B3H

Ngõ vào ngắt ngoài 1

P3.4

T0

B4H

Ngõ vào của bộ định
thời/đếm 0

P3.5

T1

B5H

P3.6

WR


B6H

P3.7

RD

B7H

Chân nhận dữ liệu của
port nối tiếp
Chân phát dữ liệu của
port nối tiếp

Ngõ vào của bộ định
thời/đếm 1
Điều khiển ghi vào
RAM ngoài
Điều khiển đọc từ
RAM ngoài

 khi bộ dao động đang hoạt động sẽ Reset AT89C51.

Hình 2.2: Mạch reset
Ở đây chúng ta thực hiện Reset bằng cách nối chân 9 của 8951 với nguồn 5V.
 Chân ALE (Address Latch Enable) / PROG : chân số 30


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:


Là một xung ngõ ra cho phép chốt địa chỉ, cho phép chốt byte thấp của địa
chỉ trong thời gian truy xuất bộ nhớ ngoài.Chân này cũng được dùng làm ngõ
vào xung lập trình ( PROG ) trong thời gian lập trình cho Flash.
Khi hoạt động bình thường, xung của ngõ ra ALE luôn luôn có tần số bằng
1/6 tần số của mạch dao động trên chip, có thể được sử dụng cho các mục đích
định thời từ bên ngoài và tạo xung Clock. Tuy nhiên cần lưu ý là một xung ALE
sẽ bị bỏ qua trong mỗi chu kì truy xuất của bộ nhớ dữ liệu ngoài. Khi cần hoạt
động cho phép chốt byte thấp của địa chỉ sẽ được vô hiệu hoá bằng cách set bit
0 của thanh ghi chức năng đặc biệt (SFR) có địa chỉ byte là 8EH. Khi bit này
được set, ALE chỉ tích cực trong thời gian thực hiện lệnh MOVX hoặc MOVC.
Ngược lại chân này sẽ được đưa lên mức cao. Việc set bit không cho phép hoạt
động chốt byte thấp của địa chỉ sẽ không có tác dụng nếu bộ điều khiển đang ở
chế độ thực thi chương trình ngoài.
 Chân PSEN (Program Store Enable): cho phép đọc bộ nhớ chương trình,
chân số 29
Khi 8951 thực thi mã từ bộ nhớ chương trình ngoài, PSEN được hoạt
động 2 lần trong mỗi chu kỳ máy ngoại trừ hoạt đô ̣ng của
trong mỗi bộ nhớ dữ liệu ngoài.

PSEN được bỏ qua

 Chân EA / Vpp (External Access): truy xuất ngoài, chân số 31
EA phải đươc nối với GND cho phép xuất mã từ vị trí bộ nhớ chương trình

ngoài bắt đầu tại 0000H đến FFFFH.
Chú ý: Cho dù thế nào, nếu khoá bit 1 được lập trình, EA sẽ được chốt bên trong
lúc Reset.
EA nối Vcc để thực hiện chương trình bên trong.


Chân này nhận điện áp cho phép lập trình là 12V (Vpp) trong khi lập trình Flash
 Chân XTAL 1 (Crysral, chân 18)
Ngõ vào mạch khuếch đại đảo của mạch dao động và ngõ vào mạch tạo xung
Clock bên trong chip
 Chân XTAL 2(chân 19)


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

- Ngõ ra mạch khuếch đại đảo của mạch dao động.
- Để tạo dao động cho vi điều khiển AT89C51 hoạt động, chọn mạch dao
động như hình vẽ sau với các giá trị của linh kiện: C1= C2=3pF
- Thạch anh dao động có tần số 12MHz

Hình 2.3: Mạch dao động
2. Tóm tắt các lệnh thƣờng dùng của VXL 89C51:
 Nhóm lệnh xử lý số học:
ADD A,Rn (1byte, chu kỳ máy): cộng nội dung thanh ghi Rn vào thanh ghi A.
ADD A,data

(2,1): Cộng trực tiếp 1 byte vào thanh ghi A.

ADD A,@Ri

(1,1): Cộng gián tiếp nội dung RAM chứa tại địa chỉ
được khai báo trong Ri vào thanh ghi A.

ADD A,#data


(2,1):Cộng dữ liệu tức thời vào A.

ADD A,Rn

(1,1): Cộng thanh ghi và cờ nhớ vào A.

ADD A,data

(2,1): Cộng trực tiếp byte dữ liệu và cờ nhớ vào A.

ADDC A,@Ri

(1,1): Cộng gián tiếp nội dung RAM và cờ nhớ vào A.

ADDC A,#data

2,1): Cộng dữ liệu tức thời và cờ nhớ vào A.

SUBB A,Rn

(1,1): Trừ nội dung thanh ghi A cho nội dung thanh ghi
Rn và cờ nhớ.

SUBB A,data

(2,1): Trừ trực tiếp A cho một số và cờ nhớ.

SUBB A,@Ri


(1,1): Trừ gián tiếp A cho một số và cờ nhớ.

SUBB A,#data

(2,1): Trừ nội dung A cho một số tức thời và cờ nhớ.

INC A

(1,1): Tăng nội dung thanh ghi A lên 1.

INC Rn

(1,1): Tăng nội dung thanh ghi Rn lên 1.

INC data

(2,1): Tăng dữ liệu trực tiếp lên 1.

INC @Ri

(1,1): Tăng gián tiếp nội dung vùng RAM lên 1.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

DEC A

(1,1): Giảm nội dung thanh ghi A xuống 1.


DEC Rn

(1,1): Giảm nội dung thanh ghi Rn xuống 1.

DEC data

(2,1): Giảm dữ liệu trực tiếp xuống 1

DEC @Ri

(1,1): Giảm gián tiếp nội dung vùng RAM xuống 1.

INC DPTR

(1,2): Tăng nội dng con trỏ dữ liệu lên 1.

MUL AB

(1,4): Nhân nội dung thanh ghi A với nội dung thanh
ghi B.

DIV AB

(1,4): Chia nội dung thanh ghi A cho nội dung thanh
ghi B.

DA A

(1,1,): hiệu chỉnh thập phân thanh ghi A.


 Nhóm lệnh luận lý:
ANL A,Rn

(1,1): AND nội dung thanh ghi A với nội dung thanh
ghi Rn.

ANL A,data

(2,1): AND nội dung thanh ghi A với dữ liệu trực tiếp.

ANL A,@Ri

(1,1): AND nội dung thanh ghi A với dữ liệu gián tiếp

ANL A,#data

trong RAM.
(2,1): AND nội dung thanh ghi với dữ liệu tức thời.

ANL data,A

(2,1): AND một dữ liệu trực tiếp với A.

ANL data,#data

(3,2): AND một dữ liệu trực tiếp với A một dữ liệu tức
thời.

ANL C,bit


(2,2): AND cờ nhớ với 1 bit trực tiếp.

ANL C,/bit

(2,2): AND cờ nhớ với bù 1 bit trực tiếp.

ORL A,Rn

(1,1): OR thanh ghi A với thanh ghi Rn.

ORL A,data

(2,1): OR thanh ghi A với một dữ liệu trực tiếp.

ORL A,@Ri

(1,1): OR thanh ghi A với một dữ liệu gián tiếp.

ORL A,#data

(2,1): OR thanh ghi A với một dữ liệu tức thời.

ORL data,A

(2,1): OR một dữ liệu trực tiếp với thanh ghi A.

ORL data,#data
ORL C,bit


(3,1) :OR một dữ liệu trực tiếp với một dữ liệu tức thời.
(2,2): OR cờ nhớ với một bit trực tiếp.

ORL C,/bit

(2,2): OR cờ nhớ với bù của một bit trực tiếp.

XRL A,Rn

(1,1): XOR thanh ghi A với thanh ghi Rn.

XRL A,data

(2,1): XOR thanh ghi A với mộ dữ liệu trực tiếp.

XRL A,@Ri

(1,1): XOR thanh ghi A với một dữ liệu gián tiếp.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

XRL A,#data

(2,1): XOR thanh ghi A với mộ dữ liệu tức thời.

XRL data,A


(2,1): XOR một dữ liệu trực tiếp với thanh ghi A.

XRL dara,#data

(3,1): XOR một dữ liệu trực tiếp với một dữ liệu tức
thời.

SETB C

(1,1): Đặt cờ nhớ.

SETB bit
CLR A

2,1): Đặt một bit trực tiếp.
(1,1): Xóa thanh ghi A.

CLR C

(1,1): Xóa cờ nhớ.

CPL A

(1,1): Bù nội dung thanh ghi A.

CPL C

(1,1): Bù cờ nhớ.

CPL bit


(2,1): Bù một bit trực tiếp.

RL A

(1,1): Quay trái nội dung thanh ghi A.

RLC A

(1,1): Quay trái nội dung thanh ghi A qua cờ nhớ.

RR A

(1,1): Quay phải nội dung thanh ghi A.

RRC A

(1,1): Quay phải nội dung thanh ghi A qua cờ nhớ.

SWAP

(1,1): Quay trái nội dung thanh ghi A 1 nibble

(1/2byte).
 Nhóm lệnh chuyển dữ liệu:
MOV A,Rn

(1,1):Chuyển nội dung thanh ghi Rn vào thanh ghi A.

MOV A,data


(2,1): Chuyển dữ liệu trực tiếp vào thanh ghi A.

MOV A,@Ri

(1,1): Chuyển dữ liệu gián tiếp vào thanh ghi A.

MOV A,#data

(2,1): Chuyển dữ liệu tức thời vào thanh ghi A.

MOV Rn,data

(2,2): Chuyển dữ liệu trực tiếp vào thanh ghi Rn.

MOV Rn,#data

(2,1): Chuyển dữ liệu tức thời vào thanh ghi Rn.

MOV data,A

(2,1): Chuyển nội dung thanh ghi A vào một dữ liệu
trực tiếp.

MOV data,Rn

(2,2): Chuyển nội dung thanh ghi Rn vào một dữ liệu
trực tiếp.

MOV data,data


(3,2): Chuyển một dữ liệu trực tiếp vào một dữ liệu
trực tiếp.

MOV data,@Ri

(2,2): Chuyển một dữ liệu gián tiếp vào một dữ liệu
gián tiếp.

MOV data,#data

(3,2): Chuyển một dữ liệu tức thời vào một dữ liệu trực
tiếp.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

(1,1): Chuyển nội dung thanh ghi A vào một dữ liệu

MOV @Ri,A

gián tiếp.
(2,2): Chuyển một dữ liệu trực tiếp vào một dữ liệu

MOV @Ri,data

gián tiếp.
MOV @Ri,#data


(2,1): Chuyển dữ liệu tức thời vào dữ liệu gián tiếp.

MOV DPTR,#data

(3,2): Chuyển một hằng 16 bit vào thanh ghi con trỏ dữ
liệu.

MOV C,bit

(2,1): Chuyển một bit trực tiếp vào cờ nhớ.

MOV bit,C

(2,2): Chuyển cờ nhớ vào một bit trực tiếp.

MOV A,@A+DPTR

(1,2): Chuyển byte bộ nhớ chương trình có địa chỉ là
@A+DPRT vào thanh ghi A.

MOVC A,@A+PC

(1,2): Chuyển byte bộ nhớ chương trình có địa chỉ là
@A+PC vào thanh ghi A.
(1,2): Chuyển dữ liệu ngoài (8 bit địa chỉ) vào thanh

MOVX A,@Ri

ghi A.

MOVX A,@DPTR

(1,2): Chuyển dữ liệu ngoài (16 bit địa chỉ) vào thanh

ghi A.
MOVX @Ri,A (1,2): Chuyển nội dung A ra dữ liệu ngoài (8 bit địa chỉ).
MOVX @DPTR,A

(1,2): Chuyển nội dung A ra dữ liệu bên ngoài (16 bit
địa chỉ).

PUSH data

(2,2): Chuyển dữ liệu trực tiếp vào ngăn xếp và tăng SP.

POP data

(2,2): Chuyển dữ liệu trực tiếp vào ngăn xếp và giảm SP.

XCH A,Rn

(1,1): Trao đổi dữ liệu giữa thanh ghi Rn v2 thanh ghi A.

XCH A,data

(2,1): Trao đổi giữa thanh ghi A và một dữ liệu trực
tiếp.

XCH A,@Ri


(1,1): Trao đổi giữa thanh ghi A và một dữ liệu gián
tiếp.

XCHD A,@R

(1,1): Trao đổi giữa nibble thấp (LSN) của thanh ghi A

và LSN của dữ liệu gián tiếp.
 Nhóm lệnh chuyền điều khiển:
ACALL addr11

(2,2): Gọi chương trình con dùng địa chì tuyệt đối.

LCALL addr16

(3,2): Gọi chương trình con dùng địa chỉ dài.

RET

(1,2): Trở về từ lệnh gọi chương trình con.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

RET1

(1,2): Trở về từ lệnh gọi ngắt.


AJMP addr11

(2,2): Nhảy tuyệt đối.

LJMP addr16

(3,2): Nhảy dài.

SJMP rel

(2,2):Nhảy ngắn.

JMP @A+DPTR

(1,2): Nhảy gián tiếp từ con trỏ dữ liệu.

JZ rel
JNZ rel

(2,2): Nhảy nếu A=0.
(2,2): Nhảy nếu A không bằng 0.

JC rel

(2,2): Nhảy nếu cờ nhớ được đặt.

JNC rel

(2,2): Nhảy nếu cờ nhớ không được đặt.


JB bit,rel

(3,2): Nhảy tương đối nếu bit trực tiếp được đặt.

JNB bit,rel

(3,2):Nhảy tương đối nếu bit trực tiếp không được đặt.

JBC bit,rel

(3,2): Nhảy tương đối nếu bit trực tiếp được đặt , rồi
xóa bit.

CJNE A,data,rel

(3,2): So sánh dữ liệu trực tiếp với A và nhảy nếu
không bằng.

CJNE A,#data,rel

(3,2): So sánh dữ liệu tức thời với A và nhảy nếu không

CJNE Rn,#data,rel

bằng.
(3,2): So sánh dữ liệu tức thời với nội dung thanh ghi
Rn và nhảy nếu không bằng.

CJNE @Ri,#data,rel


(3,2): So sánh dữ liệu tức thời với dữ liệu gián tiếp và
nhảy nếu không bằng.

DJNZ Rn,rel

(2,2): Giản thanh ghi Rn và nhảy nếu không bằng.

DJNZ data,rel

(3,2): Giảm dữ liệu trực tiếp và nhảy nếu không bằng.

 Các lệnh rẽ nhánh:
Có nhiều lệnh để điều khiển lên chương trình bao gồm việc gọi hoặc trả lại từ
chương trình con hoặc chia nhánh có điều kiện hay không có điều kiện.
Tất cả các lệnh rẽ nhánh đều không ảnh hưởng đến cờ. Ta có thể định nhản cần
nhảy tới mà không cần rõ địa chỉ, trình biên dịch sẽ đặt địa chỉ nơi cần nhảy tới vào
đúng khẩu lệnh đã đưa ra.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

Tóm Tắt Các Lệnh NHẢY (JMP)
Bảng 2.3: Lệnh nhảy có điều kiện

CHƢƠNG III: NỘI DUNG ĐỀ TÀI


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ


G VHD:

3.CẤU TRÚC LCD 1602
3.1.Giới thiệu lcd 1602
Là một thiết bị thông dụng dùng để hiển thị thông tin đặc biệt là hiển thị các chữ
cái. Lcd 1602 có 16 kí tự và hai hàng, nó có thể hiển thị tối đa 32 kí tự cùng lúc (16
ở hàng trên và 16 ở hàng dưới).
Sau đây là một số hình ảnh về lcd 1602

Hình 2.4: LCD 1602
- Bố trí chân và định nghĩa các chân:
+ chân 1: GND
+ Chân 2: VCC
+ Chân 3: VE F Chân điều khiển độ tương phản
+ Chân 4: RS (register select) cho phép chọn
Đến thanh gi lệnh hoặc thanh gi dữ liệu khi Rs=0,1 byte dữ liệu nào đó gửi đến
lcd sẽ được đặt vào thanh ghi lệnh để điều khiển lcd . Khi rs=1, thì 1 byte dữ
liệu nào đó gửi đến lcd sẽ được dặt vào thanh ghi dữ liệu và được hiển thị ra
ngoài.
+ Chân 5: R/W quy định thao tác đọc hay ghi. Khi R/W=0 thao tác được xác
lập là ghi. Khi đó có thể gửi dữ liệu đến lcd để hiển thị hoặc điều khiển lcd.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

Khi R/vW=1 thao tác được xác lập là thao tác đọc. Khi đó có thể đọc về trạng
thái của lcd

+ Chân 6: EN (lcd enable) chân cho phép lcd làm việc. Muốn lcd làm việc thì
chân này phải được đặt ở mức cao(EN=1 cho phép hoạt động, EN=0 cấm hoạt
động)
+ Chân 7-16: là 8 chân dữ liệu song song của lcd từ D0 đến D7. Dữ liệu có thể
được gửi đến lcd theo chế độ giao tiếp 8 bít dữ liệu hoặc 4 bít dữ liệu. Trong
chế độ giao tiếp 4 bít dữ liệu thì chỉ có 4 đường dữ liệu bít cao (D4 -D7) được
sử dụng.
+ Chân 15: cực Anot của đèn nền Backlight
+ Chân 16: cực Katot của đèn nền Backlight

Hình 2.5: Sơ đồ chân lcd 1602


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

- Các lệnh điều khiển lcd 1602: các lệnh điều khiển lcd được nêu trong bảng sau:
Bảng 2.4: Lệnh điều khiển lcd 1602

Một số lệnh thường sử dụng:
Bảng 2.5: Lệnh điều khiển lcd 1602


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

- Định địa chỉ:
Khi bật nguồn lên vị trí con trỏ luôn nằm ở cột đầu tiên của dòng thứ nhất. Mỗi

lần gửi ra lcd một kí tự thì con trỏ tự động tăng lên một vị trí. Dưới đây là bản
đồ địa chỉ của lcd 1602:

Hình 2.6:Sơ đồ địa chỉ của lcd 1602
Khi muốn di chuyển con trỏ đến một vị trí bất kì trên màn hình lcd ta lấy địa
chỉ của vị trí đó cộng với 0x80 sau đó gửi mã lệnh thu được đến lcd.
Ví dụ:
+ Muốn di chuyển con trỏ đến vị trí ô số 3 hàng 1: ta gửi mã lệnh
(0x02+0x08)= 0x82 đến lcd.
+

Muốn di chuyển con trỏ đến vị trí số 5 hàng 2 ta gửi mã lệnh

(0x44+0x80)=(0x04+0x40+0x80)=0xC4 đến lcd.


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

-Bảng mã các chữ cái:
Bảng 2.6: Bảng mã các chữ cái lcd 1602


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

3.2 Kết nối lcd 1602 với vi điều khiển AT89S52:
Căn cứ vào chức năng các chân của lcd 1602a, kết nối lcd 1602a với AT89S52

như sau:
+ Chân 1 nối GND
+ Chân 2 nối +5V
+ Chân VEF nối với 1 biến trở 10K để chỉnh độ tương phản
+ Chân RS,RW, EN nối với 3 chân của AT89S52
+ 8 chân dữ liệu nối với 1 port của AT89S52
+ 2 chân của đèn nền Backlight kết nối như hình vẽ

Hình 2.7: Sơ đồ kết nối với AT89C51


ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ

G VHD:

CHƢƠNGIII: THIẾT KẾ VÀ THI CÔNG
1.THIẾT KẾ MẠCH NGUỒN:
* Yêu cầu:
- Cung cấp nguồn DC cho vi điều khiển và hệ thống Relay trong mạch.
*Mạch nguồn bao gồm:
- Nguồn 24v cấp cho động cơ và relay.
- Ổn áp 7805 cung cấp điện áp 5v cho vi điều khiển.
- Tụ chống nhiễu.
* Sơ đồ mạch nguồn:

Hình 3.1: Mạch nguồn
- Nguồn 220v qua diode chỉnh lưu qua tụ lọc đưa vào IC ổn áp 7805 cho ra nguồn 5v
cung cấp cho mạch.



×