nhphuc1995

New Member

Download miễn phí Điều khiển thiết bị ac bằng hồng ngoại giám sát hiển thị lcd định thời gian off





LỜI MỞ ĐẦU 6
Chương 1 : Tổng Quan 7
1.1 Giới thiệu 7
1.2 Cách thức tìm hiểu và lựa chọn giải pháp thiết kế 7
Chương 2 : Vi Điều Khiển AMELT 89C51 8
2.1 Cấu trúc bên trong của Vi điều khiển 89C51 8
2.2 Sơ đồ chân và chức năng chân Vi điều khiển AMELT 89C51 10
2.3 Tổ chức bộ nhớ Vi điều khiển AMELT 89C51 12
2.3.1 Bộ nhớ nội Vi điều khiển AMELT 89C51 12
2.3.2 Bộ nhớ ngoài Vi điều khiển AMELT 89C51 16
2.4 Các chức năng của Vi điều Khiển AMELT 89C51 17
2.4.1 Input/ Output 17
2.4.2 Timer 17
2.4.3 Ngắt 19
2.4.4 Truyền thông nối tiếp 21
2.5 Tập lệnh của Vi điều khiển AMELT 89C51 23
Chương 3 : Báo cáo quá trình thực hiện đồ án 26
3.1 Cách thực hiện đồ án 26
3.2 Các khối trên board 26
3.2.1 Khối phát hồng ngoại từ xa 26
3.2.2 Khối thu thu hồng ngoại 30
3.2.3 Khối công suất sử dụng TRIAC 32
3.2.4 Khối kiểm tra thiết bị AC 220 32
3.2.5 Khối phím nhấn điều khiển không sử dụng khối phát hồng ngoại từ xa 33
3.2.6 Khối nguồn 33
3.2.7 Khối hiển thị LCD 34
3.2.8 Khối Vi Điều Khiển 89C51 35
3.2.9 Thi Công 36
3.3 Lưu đồ giải thuật 38
3.4 Chương trình 41
Chương 4 : Kết Luận 53
4.1 Kết quả thu được 53
4.2 Các ưu điểm của sản phẩm 53
4.3 Các khuyết điểm của sản phẩm 53
4.4 Hướng phát triển của đề tài trong tương lai 53
 
 
 
 
 
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

ủa timer 0
P3.5
T1
Ngõ vào của timer 1
P3.6
WR
Xung ghi dữ liệu bộ nhớ ngoài
P3.7
RD
Xung đọc dữ liệu bộ nhớ ngoài
TỔ CHỨC BỘ NHỚ IC ATMEL 89C51
2.3.1 BỘ NHỚ NỘI IC ATMEL 89C51
Vi điều khiển 89C51 có bộ nhớ theo cấu trúc Harvard có những vùng cho bộ nhớ riêng biệt, cho chương trình dữ liệu. Chương trình và dữ liệu bên trong, dù vậy ta có thể mở rộng bằng các thành phần bên ngoài lên tối đa 64KB bộ nhớ chương trình và 64KB bộ nhớ dữ liệu. Bộ nhớ trong bao gồm Rom và Ram, Ram chia làm ba vùng Ram : Ram đa dụng, Ram địa chỉ hóa từng bít, Các bank thanh ghi.
RAM
Bộ nhớ chương trình được chọn qua PSEN
FFFFH
Bộ nhớ dữ liệu được chọn qua WR và RD
FFFFH
Vùng các thanh ghi đặt biệt
FFH
7FH
30H
20H
1FH
07H
00H
0000H
0000H
Vùng Ram đa dụng
Vùng Ram địa chỉ hóa từng bit
Các BANK thanh ghi
Tóm tắt các vùng bộ nhớ của 89C51
Hai đặc tính cần lưu ý là :
Các thanh ghi và các port xuất nhập đã được xếp trong bộ nhớ và có thể truy xuất trực tiếp như các địa chỉ bộ nhớ khác.
Ngăn xếp bên trong Ram nội nhỏ hơn so với Ram ngoài như trong các bộ vi xử lý khác.
Như vậy Ram bên trong 89C51 được chia làm các bank thanh ghi (00H – 1FH), Ram địa chỉ hóa từng bit (20H – 2FH), Ram đa dụng (30H – 7FH), và các thanh ghi chức năng đặc biệt (80H - FFH).
Bảng vùng Ram của 89C51
7F
RAM đa dụng
30
2F
7F
7E
7D
7C
7B
7A
79
78
2E
77
76
75
74
73
72
71
70
2D
6F
6E
6D
6C
6B
6A
69
68
2C
67
66
65
64
63
62
61
60
2B
5F
5E
5D
5C
5B
5A
59
58
2A
57
56
55
54
53
52
51
50
29
4F
4E
4D
4C
4B
4A
49
48
28
47
46
45
44
43
42
41
40
27
3F
3E
3D
3C
3B
3A
39
38
26
37
36
35
34
33
32
31
30
25
2F
2E
2D
2C
2B
2A
29
28
24
27
26
25
24
23
22
21
20
23
1F
1E
1D
1C
1B
1A
19
18
22
17
16
15
14
13
12
11
10
21
0F
0E
0D
0C
0B
0A
09
08
20
07
06
05
04
03
02
01
00
1F
18
BANK 3
17
10
BANK 2
0F
BANK 1
07
01
00
BANK 0
Default Register Bark for R0 – R7
Ram đa dụng là có thể truy xuất tự do bằng cách tác động trực tiếp hay gián tiếp có địa chỉ từ 30H đến 7FH.
Ví dụ:MOV 5FH,#20H ; ghi dữ liệu 20H trực tiếp vào 5FH
MOV R0,#100 ; ghi dữ liệu 100 trực tiếp vào R0
MOV 5EH,R0 ;ghi nội dữ liệu trong R0 vào 5EH (gián tiếp)
Ram địa chỉ hóa từng bit : Có 128 bit được địa chỉ hóa đa dụng ở các byte 20H đến 2FH. Các địa chỉ này được truy xuất như các byte hay các bit phụ thuộc vào lệnh dùng.
Các Bark thanh ghi : 32 byte địa chỉ thấp của bộ nhớ làcác bark thanh ghi, 8 thanh ghi từ địa chỉ 00H đến 07H được địa chỉ hóa R0 – R7.
Bảng Các thanh ghi đặt biệt
Địa chỉ byte
Địa chỉ bit
FF
F0
F7
F6
F5
F4
F3
F2
F1
F0
B
E0
E7
E6
E5
E4
E3
E2
E1
E0
ACC
D0
D7
D6
D5
D4
D3
D2
-
D0
PSW
B8
-
-
-
BC
BB
BA
B9
B8
IP
B0
B7
B6
B5
B4
B3
B2
B1
B0
P3
A8
AF
-
-
AC
AB
AA
A9
A8
IE
A0
A7
A6
A5
A4
A3
A2
A1
A0
P2
99
NOT BIT ADDRESSABLE
SBUF
98
9F
9F
9F
9F
9F
9F
9F
9F
SCON
90
97
96
95
94
93
92
91
90
P1
8D
NOT BIT ADDRESSABLE
TH1
8C
NOT BIT ADDRESSABLE
TH0
8B
NOT BIT ADDRESSABLE
TL1
8A
NOT BIT ADDRESSABLE
TL0
89
NOT BIT ADDRESSABLE
TMOD
88
8F
8E
8D
8C
8B
8A
89
88
TCON
87
NOT BIT ADDRESSABLE
PCON
83
NOT BIT ADDRESSABLE
DPH
82
NOT BIT ADDRESSABLE
DPL
81
NOT BIT ADDRESSABLE
SP
80
87
86
85
84
83
82
81
80
P0
Từ trạng thái chương trình : (PSW_ Program Status Word ) ở địa chỉ D0H gồm các bit trạng thái theo bảng tóm tắt sau:
Bit
Ký hiệu
Địa chỉ
Ý nghĩa
PSW.7
PSW.6
PSW.5
PSW.4
PSW.3
PSW.2
PSW.1
PSW.0
CY
AC
F0
RS1
RS0
OV
P
D7H
D6H
D5H
D4H
D3H
D2H
D1H
D0H
Cờ nhớ
Cờ nhớ phụ
Cờ 0
Bit chọn bark thanh ghi
Bit chọn bark thanh ghi
00 = BANK 0 (00H – 07H)
01 = BANK 1 (08H – 0FH)
10 = BANK 2 (10H – 17H)
11 = BANK 3 (18H – 1FH)
Cờ tràn
Dự trữ
Cờ parity chẳn
Bảng Từ trạng thái chương trình
Cờ nhớ (CY) được dùng trong các lệnh toán học : so sánh giữa hai giá trị , phép cộng , phép trừ ...
Cờ nhớ phụ được dùng khi công hai số BCD , cờ nhớ phụ được set lên kết quả 4 bit nhỏ trong khoảng 0AH đến 0FH.
Cờ 0 (F0) là bit cờ đa dụng dành các ứng dụng cho người dùng.
Các bit chọn bark thanh ghi (RS0 và RS1) xác định bark thanh ghi tích cực.
Cờ tràn (OV) được set lên khi phép toán cộng hay trừ bị tràn.Khi các số có dấu được cộng hay trừ bit này cho biết kết quả nằm trong tầm xác định không. Khi phép cộng không dấu bit OV có thể bỏ qua . Các kết quả nhỏ hơn -127 hay lớn hơn +127 bit OV được set.
Thanh ghi B : ở địa chỉ F0H dùng cùng với thanh ghi tích lũy A trong các phép toán nhân chia. Trong phép nhân kết quả là 16bit thì A(byte thấp ) và B(byte cao), phép chia A chứa phần nguyên B chứa phần dư.
Con trỏ ngăn xếp (SP) : ở địa chỉ 81H , chứa địa chỉ của byte dữ liệu hiện hành trên đỉnh của ngăn xếp. Các lệnh trên ngăn xếp bao gồm các thao tác cất dữ liệu vào ngăn xếp và lấy dữ liệu từ ngăn xếp ra. Có thể truy xuất bằng địa chỉ gián tiếp , trực tiếp bằng các lệnh PUSH và POP để lưu giữ dữ liệu tạm thời và lấy lại dữ liệu.
Con trỏ dữ liệu (DPTR): dùng để truy xuất bộ nhớ ngoài, bộ nhớ nội.
Các thanh ghi port I/O : Port 0 ở địa chỉ 80H, Port 1 ở địa chỉ 90H, Port 2 ở địa chỉ A0H, Port 3 ở địa chỉ B0H. Tất cả các Port đều được địa chỉ hóa từng bit.
Các thanh ghi Timer : có hai bộ timer 16bit được sử dụng trong sự kiên hay thời gian.
Timer 0 gồm hai thanh ghi 8AH(TL0 : byte thấp) và 8CH (TH0 : byte cao).
Timer 1 gồm hai thanh ghi 8BH(TL1 : byte thấp) và 8DH (TH1 : byte cao).
Điều khiển Timer bởi thanh ghi TMOD ở địa chỉ 89H và thanh ghi TCON ở địa chỉ 88H.
Các thanh ghi port truyền thông nối tiếp :SBUF ở địa chỉ 99H dùng truyền và nhận dữ liệu. SCON ở địa chỉ 98H dùng điều khiển truyền thông nối tiếp.
Thanh ghi ngắt : có 5 nguồn ngắt , 2 mức ưu tiên( ngắt ngoài ). Thanh ghi điều khiển quá trình ngắt IE ở địa chỉ 8AH và được địa chỉ hóa từng bit.
BỘ NHỚ NGOÀI IC ATMEL 89C51
Bộ nhớ chương trình ngoài là IC ROM được cho phép bởi tín hiệu PSEN. Hình 2.5 mô tả cách giao tiếp EPROM và vi điều khiển :
Port 0
EA
89C51
ALE
Port 2
PSEN
D0 – D7
A0 – A7
EPROM
A8 – A15
OE
D Q
G
74HC373
Hình 2.5 : Giao tiếp giữa IC 89C51 và EPROM
Bộ nhớ dữ liệu ngoài là một bộ nhớ RAM được cho phép ghi/đọc bằng cách tín hiệu WR và RD (chân P3.6 và P3.7) . Chỉ có một cách truy xuất bộ nhớ dữ liệu ngoài là lệnh MOVX và con trỏ dữ liệu DPTR. Hình 2.6 mô tả cách giao tiếp RAM và vi điều khiển
Port 0
EA
89C51
ALE
Port 2
RD
WR
D0 – D7
A0 – A7
RAM
A8 – A15
OE
WE
D Q
G
74HC373
Hình 2.6 : Giao tiếp giữa IC 89C51 và RAM
CÁC CHỨC NĂNG CỬA IC AMELT 89C51
INPUT/OUTPUT
Vi điều khiển 89C51 có 4 port I/O 8 bit dùng truy xuất dữ liệu tác động ra bên ngoài hay thu thập dữ liệu từ bên ngoài về.
TIMER
Vi điều khiển 89C51 có hai Timer 16 bit. Các thanh ghi này có thể hoạt động ở một trong hai trạng thái timer hay couter. Mỗi thanh ghi gồm 2 thanh ghi 8 bit ghép lại ( hình 2.7)
Hình 2.7 : Thanh ghi Timer 16bit
Cấu trúc của bộ Timer trong Vi điều khiển 89C51 ( hình 2.8)
Hình 2.8 : Cấu trúc của bộ Timer 89C51
Hoạt động của Timer được điều khiển bởi hai thanh ghi TCON và TMOD.
Thanh ghi TCON (Timer Control ):
Là thanh ghi 8 bit, có thể truy xuất byte hay bit (hình 2.9)
Hình 2.9 : Cấu trúc thanh ghi TCON
TF1 : báo trạng thái tràn cho Timer 1
TR1 : điều khiển cấp xung cho Timer 1
TF0 : báo trạng thái tràn cho Timer 0
TR0 : điều khiển cấp xung cho Timer 0
IE1 : không liên quan đến hoạ...
 

Các chủ đề có liên quan khác

Top