Luận văn tốt nghiệp Trang 1
GVHD Nguyễn Việt Hùng
PHẦN I LÝ THUYẾT
CHƯƠNG I DẪN NHẬP
I. ĐẶT VẤN ĐỀ:
Ngày nay cùng với sự phát triển của các ngành khoa học kỹ thuật, kỹ thuật điện
tử màtrong đó là kỹ thuật số đóng vai trò quan trọng trong mọi lónh vực khoa học kỹ
thuật, quản lí, công nghiệp tự động hóa, cung cấp thông tin…. do đó chúng ta phải nắm
bắt và vận dụng nó một cách có hiệu quả nhằm góp phần vào sự phát triển nền khoa
học kỹ thuật thế giới nói chung và trong sự phát triển kỹ thuật điện tử nói riêng.
Xuất phát từ những đợt đi thực tập tốt nghiệp tại nhà máy và tham quan các
doanh nghiệp sản xuất, chúng em đã được thấy nhiều khâu được tự động hóa trong quá
trình sản xuất. Một trong những khâu đơn giản trong dây chuyền sản xuất tự động hóa
đó là số lượng sản phẩm làm ra được đếm một cách tự động.
Tuy nhiên đối với những doanh nghiệp vừa và nhỏ thì việc tự động hóa hoàn toàn
chưa được áp dụng trong những khâu đếm sản phẩm, đóng bao bì mà vẫn còn sử dụng
nhân công.
Từ những điều đã được thấy đó và khả năng của chúng em, chúng em muốn làm
một điều gì nhỏ để góp phần vào giúp người lao động bớt phần mệt nhọc chân tay mà
cho phép tăng hiệu suất lao động lên gấp nhiều lần, đồng thời đảm bảo được độ chính
xác cao. Nên chúng em quyết đònh thiết kế một mạch đếm sản phẩm vì nó rất gần gũi
với thực tế và nó thật sự rất có ý nghóa đối với chúng em vì đã làm được một phần nhỏ
đóng góp cho xã hội.
Để làm được mạch này cần thiết kế được hai phần chính là: bộ phận cảm biến và
bộ phận đếm.
* Bộ phận cảm biến: gồm phần phát và phần thu. Thông thường người ta sử dụng
phần phát là led hồng ngoại để phát ra ánh sáng hồng ngoại mục đích để chống nhiễu
so với các loại ánh sáng khác, còn phần thu là transistor quang để thu ánh sáng hồng
ngoại.
* Bộ phận đếm có nhiều phương pháp thực thi đó la:ø
trong khi đó phần cứng không cần thay đổi mà mạch dùng IC rời không thể thực hiện
được mà nếu có thể thực hiện được thì cũng cứng nhắc mà người công nhân cũng khó
tiếp cận, dễ nhầm.
- Số linh kiện sử dụng trong mạch ít hơn.
-Mạch đơn giản hơn so với mạch đếm sản phẩm dùng IC rời và có phần cài đặt
số đếm ban đầu
-Mạch có thể lưu lại số liệu của các ca sản xuất
-Mạch có thể điều khiển đếm được nhiều dây chuyền sản xuất cùng lúc bằng
phần mềm
-Mạch cũng có thể kết nối giao tiếp được với máy tính thích hợp cho những người
quản lí tại phòng kỹ thuật nắm bắt được tình hình sản xuất qua màn hình của máy vi
tính.
Nhưng trong thiết kế người ta thường chọn phương pháp tối ưu nhưng kinh tế do
đó chúng em chọn phương pháp đếm sản phẩm dùng kỹ thuật vi điều khiển
3. Phương pháp đếm sản phẩm dùng vi điều khiển:
Ngoài những ưu điểm có được của hai phương pháp trên, phương pháp này còn có
những ưu điểm :
-Trong mạch có thể sử dụng ngay bộ nhớ trong đối với những chương trình có quy
mô nhỏ, rất tiện lợi mà vi xử lí không thực hiện được.
-Nó có thể giao tiếp nối tiếp trực tiếp với máy tính mà vi xử lí cũng giao tiếp
được với máy tính nhưng là giao tiếp song song nên cần có linh kiện chuyển đổi dữ
liệu từ song song sang nối tiếp để giao tiếp với máy tính.
III. MỤC ĐÍCH YÊU CẦU CỦA ĐỀ TÀI:
Trong đồ án này chúng em thực hiện mạch đếm sản phẩm bằng phương pháp
đếm xung. Như vậy mỗi sản phẩm đi qua trên băng chuyền phải có một thiết bò để
cảm nhận sản phẩm, thiết bò này gọi là cảm biến. Khi một sản phẩm đi qua cảm biến
sẽ nhận và tạo ra một xung điện đưa về khối xử lí để tăng dần số đếm. Tại một thời
điểm tức thời, để xác đònh được số đếm cần phải có bộ phận hiển thò. Tuy nhiên mỗi
khu vực sản xuất hay mỗi ca sản xuất lại yêu cầu với số đếm khác nhau vì thế phải có
sự linh hoạt trong việc chuyển đổi số đếm. Bộ phận chuyển đổi trực quan nhất là bàn
KHỐI
XỬ LÝ
CẢM BIẾN
BÀN PHÍM
KHỐI HIỂN THỊ
b1. Cấu tạo, nguyên lí hoạt động của led hồng ngoại:
_Led được cấu tạo từ GaAs với vùng cấm có độ rộng là 1.43eV tương ứng bức xạ
900nm. Ngoài ra khi pha tạp Si với nguyên vật liệu GaAlAs, độ rộng vùng cấm có thể
thay đổi. Với cách này, người ta có thể tạo ra dải sóng giữa 800 - 900nm và do đó tạo
ra sự điều hưởng sao cho led hồng ngoại phát ra bước sóng thích hợp nhất cho điểm cực
đại của độ nhạy các bộ thu.
_Hoạt động: khi mối nối p - n được phân cực thuận thì dòng điện qua nối lớn vì sự dẫn
điện là do hạt tải đa số, còn khi mối nối được phân cực nghòch thì chỉ có dòng rỉ do sự
di chuyển của các hạt tải thiểu số. Nhưng khi chiếu sáng vào mối nối, dòng điện nghòch
tăng lên gần như tỷ lệ với quang thông trong lúc dòng thuận không tăng. Đặc tuyến volt
– ampere của led hồng ngoại như sau: KHỐI
DAO
ĐỘNG
KHỐI
DAO
ĐỘNG
KHUYẾCH
ĐẠI
TRANSITOR
THU
Luận văn tốt nghiệp Trang 5
GVHD Nguyễn Việt Hùng
Chuyển tiếp emitor được phân cực thuận còn chuyển tiếp colector được phân cực
nghòch. Có nghóa là transistor quang được phân cực ở chế độ khuyếch đại.
Dòng điện trong transistor:
Vì nối thu được phân cực nghòch nên có dòng rỉ Ico chạy giữa thu – nền và vì nối nền -
phát được phân cực thuận nên dòng thu là ( + 1)Ico đây là dòng tối của quang
transistor. Khi chiếu ánh sáng vào miền bazơ, trong miền bazơ có sự phát xạ cặp điện
tử lỗ trống làm xuất hiện dòng I
L
. Do ánh sáng khiến dòng thu trở thành:
Ic = ( + 1) .(Ico + I
L
)
= 4
= 3
= 2
= 1
= 0 U(V)
I(A)
C Cực thu (colecter) Trong đó H là mật độ chiếu sáng (mW/cm
2
)Đặc tuyến của transistor quang cũng giống như đặc tuyến Volt- ampere của
transistor thông thường mắc EC. Điều khác nhau ở đây là các tham số không phải là
dòng Ib mà là lượng chiếu sáng
Đặc tuyến Volt ampere của transistor quang ứng với khoảng Uce nhỏ cũng có thể
gọi là miền bão hòa vì khi ấy do sự tích tụ điện tích có thể coi như chuyển tiếp colector
được phân cực thuận. Cũng tương tự như trong trường hợp transistor thông thøng, độ
dốc đặc tuyến trong miền khuyếch đại.
b3. IC dao động 555
Sơ đồ chân:
Sơ đồ khối bên trong IC 555
TRI DIS
OUT THR
RES CN
FLIP
FLOP
OUTPUT
8 6
4
7
1
3
2
5
Luận văn tốt nghiệp Trang 7
GVHD Nguyễn Việt Hùng
Chức năng của các chân
Đây là vi mạch đònh thời chuyên dùng, có thể mắc thành dạng mạch đơn ổn hay bất ổn.
Điện áp cung cấp từ 3V đến 18V.
Dòng điện ra đến 200mA (loại vi mạch BJT) hay 100mA (loại CMOS).
Chân 1: Nối với masse.
Chân 2: Nhận tín hiệu kích thích (trigger).
Chân 3: Tín hiệu ra (output).
Chân 4: Phục nguyên về trạng thái ban đầu (preset).
Chân 5: Nhận điện áp điều khiển (control voltag).
Chân 6: Mức ngưỡng ( threshold ).
Chân 7: Tạo đường phóng điện cho tụ.
Chân 8: Cấp nguồn Vcc.
4
1
3
2
1 2 3 4 5 6 7
14 13 12 11 10 9 8
GND
+3 - 30V
+
+
+
+
Ngõ ra
GND
Tụ đònh thời
Điện trở đònh thời
567 8
7
6
5
1
2
3
a1. Sơ đồ chân 8051
8051 là IC vi điều khiển (Microcontroller) do hãng Intel sản xuất. IC này có đặc điểm
như sau:
- 4k byte ROM,128 byte RAM
- 4 Port I/O 8 bit.
- 2 bộ đếm/ đònh thời 16 bit.
- Giao tiếp nối tiếp.
- 64k byte không gian bộ nhớ chương trình mở rộng.
- 64k byte không gian bộ nhớ dữ liệu mở rộng.
- Một bộ xử lý luận lý (thao tác trên các bít đơn).
- 210 bit được đòa chỉ hóa.
- Bộ nhân / chia 4.
Sơ lược về các chân của 8051: Luận văn tốt nghiệp Trang 9
GVHD Nguyễn Việt Hùng
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
RXD
TXD
INT0\
INT1\
T0
T1
WR\
RD\
Ngõ vào dữ liệu nối tiếp.
Ngõ xuất dữ liệu nối tiếp.
Ngõ vào ngắt cứng thứ 0.
Ngõ vào ngắt cứng thứ 1.
Ngõ vào TIMER/ COUNTER thứ 0.
Ngõ vào của TIMER/ COUNTER thứ 1.
Tín hiệu ghi dữ liệu lên bộ nhớ ngoài.
Tín hiệu đọc bộ nhớ dữ liệu ngoài.
PSEN (Program store enable):
PSEN là tín hiệu ngõ ra có tác dụng cho phép đọc bộ nhớ chương trình mở rộng
và thường được nối đến chân OE\ của Eprom cho phép đọc các byte mã lệnh.
8031
EA/VP
31
P0.0
39
P0.1
38
P0.2
37
P0.3
36
P0.4
35
P0.5
34
P0.6
33
P0.7
32
P2.0
21
P2.1
22
P2.2
23
P2.3
24
P2.4
25
P2.5
26
P2.6
27
chỉ thấp nên chốt đòa chỉ hoàn toàn tự động.
EA\ (External Access): Tín hiệu vào EA\ ở chân 31 thường được mắc lên mức 1
hoặc mức 0. Nếu ở mức 1, 8051 thi hành chương trình từ ROM nội. Nếu ở mức 0, 8051
thi hành chương trình từ bộ nhớ mở rộng. Chân EA\ được lấy làm chân cấp nguồn 21V
khi lập trình cho Eprom trong 8051.
RST (Reset): Khi ngõ vào tín hiệu này đưa lên mức cao ít nhất 2 chu kỳ máy,
các thanh ghi bên trong được nạp những giá trò thích hợp để khởi động hệ thống. Khi
cấp điện mạch phải tự động reset.
Các ngõ vào bộ dao động X1, X2:
Bộ tạo dao động được tích hợp bên trong 8051. Khi sử dụng 8051, người ta chỉ cần
nối thêm tụ thạch anh và các tụ. Tần số tụ thạch anh thường là 12 Mh
b. Cấu trúc bên trong của 8051
b1. Sơ đồ khối bên trong 8051: b2. Khảo sát các khối nhớ bên trong 8051:
T1
T0
Điều khiển
ngắt
Các thanh
ghi khác
128
byte RAM
MRO nội
Timer 2
Timer 1
Timer 0
CPU
Oscillator
Điều khiển bus
Các port I/O
Port nối tiếp
Port nối tiếp
Timer 0
Timer 1
Timer 2
INT0
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
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
12
11
10
21
0F
0E
0D
0C
0B
0A
09
08
20
07
06
05
04
03
02
01
00
1F
BANK 3
18
17
BANK 2
10
0F
BANK 1
08
6C
6B
6A
69
68
B8
-
-
-
BC
BB
BA
B9
B8
B0
B7
B6
B5
B4
B3
B2
B1
B0
A8
AF
AE
AD
96
95
94
93
92
91
90
8D
Không được đòa chỉ hóa từng bit
8C
Không được đòa chỉ hóa từng bit
8B
Không được đòa chỉ hóa từng bit
8A
Không được đòa chỉ hóa từng bit
89
Không được đòa chỉ hóa từng bit
88
8F
8
E
8D
8C
8B
8A
89
88
87
Không được đòa chỉ hóa từng bit
- Ram đa dụng từ 30H đến 7FH.
- Các thanh ghi chức năng đặc biệt từ 80H đến FFH.
-Ram đa dụng:
Mọi đòa chỉ trong vùng ram đa dụng đều có thể được truy xuất tự do dùng kiểu
đòa chỉ trực tiếp hay gián tiếp. Ví dụ để đọc nội dung ô nhớ ở đòa chỉ 5FH của ram nội
vào thanh ghi tích lũy A : MOV A,5FH.
Hoặc truy xuất dùng cách đòa chỉ gián tiếp qua R0 hay R1. Ví dụ 2 lệnh sau sẽ thi hành
cùng nhiệm vụ như lệnh ở trên:
MOV R0, #5FH
MOV A , @R0
-Ram có thể truy xuất từng bit:
8051 chứa 210 bit được đòa chỉ hóa từng bit, trong đó 128 bit chứa ở các byte có
đòa chỉ từ 20H đến 2FH, các bit còn lại chứa trong nhóm thanh ghi chức năng đặc biệt.
Ýtưởng truy xuất từng bit bằng phần mềm là một đặc tính mạnh của vi điều
khiển nói chung. Các bit có thể được đặt, xóa, and, or,… với 1 lệnh đơn. Ngoài ra các
port cũng có thể truy xuất được từng bít làm đơn giản phần mềm xuất nhập từng bit.
Ví dụ để đặt bit 67H ta dùng lệnh sau: SETB 67H.
-Các bank thanh ghi:
Bộ lệnh 8051 hỗ trợ 8 thanh ghi có tên là R0 đến R7 và theo mặc đònh (sau khi
reset hệ thống), các thanh ghi nàû các đòa chỉ 00H đến 07H. lệnh sau đây sẽ đọc nội
dung ở đòa chỉ 05H vào thanh ghi tích lũy: MOV A, R5.
Đây là lệnh 1 byte dùng đòa chỉ thanh ghi. Tuy nhiên có thể thi hành bằng lệnh 2
byte dùng đòa chỉ trực tiếp nằm trong byte thứ 2: MOV A, 05H.
Lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanh hơn nhiều so với
lệnh tương ứng dùng đòa chỉ trực tiếp.
Bank thanh ghi tích cực bằng cách thay đổi các bit trong từ trạng thái chương
trình (PSW). Giả sủ thanh ghi thứ 3 đang được truy xuất, lệnh sau đây sẽ di chuyển nội
dung của thanh ghi A vào ô nhớ ram có đòa chỉ 18H: MOV R0, A.
* Các thanh ghi có chức năng đặc biệt:
8051 có 21 thanh ghi chức năng đặc biệt (SFR: Special Funtion Register) ở vùng trên 0V
_
P
D7H
D6H
D5H
D4H
D3H
D2H
D1H
D0H
Cờ nhớ
Cờ nhớ phụ
Cờ 0
Bit 1 chọn bank thanh ghi
Bit 0 chọn bank thanh ghi
00=bank 0: đòa chỉ 00H – 07H
01=bank 1: đòa chỉ 08H – 0FH
10=bank 2: đòa chỉ 10H – 1FH
11=bank 3: đòa chỉ 18H –1FH
Cờ tràn
Dự trữ
Luận văn tốt nghiệp Trang 15
GVHD Nguyễn Việt Hùng
-Con trỏ ngăn xếp:
Con trỏ ngăn xếp SP là một thanh ghi 8 bit ở đòa chỉ 18H. Nó 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
lệnh cất dữ liệu vào ngăn xếp và lấy dữ liệu ra khỏi ngăn xếp. Lệnh cất dữ liệu vào
ngăn xếp sẽ làm tăng SP trước khi ghi dữ liệu và lệnh lấy dữ liệu ra khỏi ngăn xếp sẽ
làm giảm SP. Ngăn xếp của 8051 được giữ trong ram nội và giới hạn các đòa chỉ có thế
truy xuất bằng đòa chỉ gián tiếp, chúng là 128 byte đầu của 8051
Để khởi động SP với ngăn xếp bắt đầu tại đòa chỉ 60 H, các lệnh sau đây được dùng:
MOV SP,#5FH
Khi reset 8051, SP sẽ mang giá trò mặc đònh là 07H và dữ liệu đầu tiên sẽ được cất vào
ô nhớ ngăn xếp có đòa chỉ là 08 H. Ngăn xếp được truy xuất trực tiếp bằng các lệnh
PUSH và POP để lưu trữ tạm thời và lấy lại dữ liệu hoặc truy xuất ngầm bằng lệnh gọi
chương trình con ACALL,LCALL và các lệnh trở về (RET. RETI) để lưu trữ giá trò của
bộ đếm chương trình khi bắt đầu thực hiện chương trình con và lấy lại khi kết thúc
chương trình con.
-Con trỏ dữ liệu
Con trỏ dữ liệu DPTR được dùng để truy xuất bộ nhớ ngoài là một thanh ghi 16
bit ở đòa chỉ 82H (DPL: byte thấp) và 83H (DPH: byte cao). 3 lệnh sau sẽ ghi 55H vào
ram ngoài ở đòa chỉ 1000H:
MOV A,#55H
MOV DPTR, #1000H
MOVX @DPTR,A
-Các thanh ghi port xuất nhập:
Các port của 8051 bao gồm port 0 ở đòa chỉ 80H, port 1 ở đòa chỉ 90H, port 2 ở đòa chỉ
A0H, và port3 ở đòa chỉ B0H. tất cả các port này đều có thể truy xuất từng bit nên rất
thuận tiện trong khả năng giao tiếp.
-Các thanh ghi timer:
8051 có chứa 2 bộ đònh thời/ đếm 16 bit được dùng cho việc đònh thời hoặc đếm
Thanh ghi trạng thái
SP
DPTR
Port 0 đến Port 3
IP
IE
Các thanh ghi đònh thời
0000H
00H
00H
00H
07H
0000H
FFH
XXX0000 B
0XX00000 B
00H Thanh ghi quan trọng nhất là thanh ghi bộ đếm chương trình PC được Reset tại
đòa chỉ 0000H. Khi ngõ vào RST xuống mức thấp, chương trình luôn bắt đầu tại đòa chỉ
0000H của bộ nhớ chương trình. Nội dung của Ram trong chip không bò hay đổi bởi tác
động của ngõ vào Reset
c.Hoạt động thanh ghi TIMER
8051 có hai timer 16 bit, mỗi timer có bốn cách làm việc. Người ta sử dụng các timer
để:
- Đònh khoảng thời gian.
- Đếm sự kiện.
- Tạo tốc độ baud cho port nối tiếp trong 8051.
Byte thấp của Timer 1
91H
Không
TH0
Byte cao của Timer 0
92H
Không
TH1
Byte cao của Timer 1
93H
Không
Các thanh ghi chức năng của timer trong 8031.
Thanh ghi chế độ timer (TMOD):
Thanh ghi TMOD chứa hai nhóm 4 bit dùng để đặt chế độ làm việc cho Timer 0,
và Timer 1.
Bit
Tên
Timer
Mô tả
7
GATE
1
Bit mở cổng, khi lên 1 timer chỉ chạy khi INT1 ở mức cao
6
C/T
1
Bit chọn chế độ Count/Timer
1 = bộ đếm sự kiện
0 = bộ đònh khoảng thời gian
5
Bit
Ký hiệu
Đòa chỉ
Mô tả
TCON.7
TF1
8FH
Cờ báo tràn timer 1. Đặt bởi phần cứng khi tràn,
được xóa bởi phần mềm, hoặc phần cứng khi bộ
xử lý chỉ đến chương trình phục vụ ngắt.
TCON.6
TR1
8EH
Bit điều khiển timer 1 chạy đặt xóa bằng phần
mềm để cho timer chạy ngưng.
TCON.5
TF0
8DH
Cờ báo tràn Timer 0.
TCON.4
TR0
8CH
Bit điều khiển Timer 0 chạy
TCON.3
IE1
8BH
Cờ cạnh ngắt 1 bên ngoài. Đặt bởi phần cứng khi
phát hiện một cạnh xuống ở INT1 xóa bằng phần
mềm họăc phần cứng khi CPU chỉ đến chương
Luận văn tốt nghiệp Trang 19
GVHD Nguyễn Việt Hùng
Nếu cần số đếm ban đầu, các thanh ghi TL1/TH1 cũng phải được khởi động.
Một khoảng 100s có thể được khởi động bằng cách khởi động giá trò cho TH1/TL1 là
FF9CH:
MOV TL1, #9CH
MOV TH1, #0FFH
Rồi timer được cho chạy bằng cách đặt bit điều khiển chạy như sau:
SETB TR1
Cờ báo tràn được tự động đặt lên 1 sau 100s. Phần mềm có thể đợi trong 100 s bằng
cách dùng lệnh rẽ nhánh có điều kiện nhảy đến chính nó trong khi cờ báo tràn chưa
được đặt lên 1:
WAIT: JNB TF1, WAIT
Khi timer tràn, cần dừng timer và xóa cờ báo tràn trong phần mềm:
CLR TR1
CLR TF1
d. Ngắt ( INTERRUPT)
Một ngắt là sự xảy ra một điều kiện, một sự kiện mà nó gây ra treo tạm thời thời
chương trình chính trong khi điều kiện đó được phục vụ bởi một chương trình khác.
Các ngắt đóng một vai trò quan trọng trong thiết kế và cài đặt các ứng dụng vi
điều khiển. Chúng cho phép hệ thống đáp ứng bất đồng bộ với một sự kiện và giải
quyết sự kiện đó trong khi một chương trình khác đang thực thi.
Tổ chức ngắt của 8051:
Có 5 nguồn ngắt ở 8031: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port nối tiếp.
Tất cả các ngắt theo mặc nhiên đều bò cấm sau khi reset hệ thống và được cho phép
từng cái một bằng phần mềm.
Khi có hai hoặc nhiều ngắt đồng thời, hoặc một ngắt xảy ra khi một ngắt khác
đang được phục vụ, có cả hai sự tuần tự hỏi vòng và sơ đồ ưu tiên hai mức dùng để xác
đònh việc thực hiện các ngắt. Việc hỏi vòng tuần tự thì cố đònh nhưng ưu tiên ngắt thì có
ACH
Cho phép ngắt port nối tiếp
IE.3
ET1
ABH
Cho phép ngắt từ Timer 1
IE.2
EX1
AAH
Cho phép ngắt ngoài 1
IE.1
ET0
A9H
Cho phép ngắt từ Timer 0
IE.0
EX0
A8H
Cho phép ngắt ngoài 0
Tóm tắt thanh ghi IE
- Các cờ ngắt :
Khi điều kiện ngắt xảy ra thì ứng với từng loại ngắt mà loại cờ đó được đặt lên
một để xác nhận ngắt.
Ngắt
Cờ
Thanh ghi SFR và vò trí bit
Bên ngoài 0
IE0
TCON.1
Bên ngoài 1
IE1
IE0
0003H
Timer 0
TF0
000BH
Bên ngoài 1
IE1
0013H
Timer 1
TF1
001BH
Port nối tiếp
TI và RI
0023H
Timer 2
002BH
Vector reset hệ thống (RST ở đòa chỉ 0000H) được để trong bảng này vì theo nghóa này,
nó giống ngắt : nó ngắt chương trình chính và nạp cho PC giá trò mới.
e. Kết hợp 8051 với bộ nhớ ngoài
Vi xử lý (Microprocessor) là IC chuyên dụng về xử lý dữ liệu, điều khiển theo
một chương trình, muốn Microprocessor thực hiện một công việc gì người sử dụng phải
lập trình hay viết chương trình. Chương trình phải lưư trữ ở đâu để Microprocessor nhận
lệnh và thi hành, đôi khi trong lúc xử lý chương trình Microprocessor cần nơi lưư trữ
tạm thời các dữ liệu sau đó lấy ra để tiếp tục xử lý. Nơi lưu trữ chương trình cho
Microprocessor thực hiện và nơi lưu trữ tạm thời dữ liệu chính là bộ nhớ. Các bộ nhớ
của Microprcessor là các IC, các IC nhớ này có thể đọc dữ liệu ra, ghi dữ liệu vào hoặc
chỉ đọc dữ liệu ra. Đôi khi bộ nhớ của Microprocessor không đủ để lưu trữ những thông
tin cần thiết khi chạy chương trình, khi đó phải dùng kỹ thuật mở rộng bộ nhớ. 8051 có
khả năng mở rộng bộ nhớ đến 64k byte bộ nhớ chương trình và 64k byte bộ nhớ dữ liệu Từ sơ đồ chân cho ta thấy cá chân được chia thành 4 nhóm:
+ Vcc, GND : chân nguồn
+ Do đến D7 : chân dữ liệu
+ Ao đến A12 : chân đòa chỉ
+
EPROM 2764: là bộ nhớ chỉ đọc được chế tạo theo công nghệ NMOS, dùng một
nguồn đơn +5V, dung lượng bộ nhớ là 65536 bit, được tổ chức thành 8192x8 bit
(8KByte). 2764 là loại EPROM có thể xóa bằng tia cực tím và có thể ghi lại được nhiều
lần. Có hai kiểu họat động: bình thường và chờ. Ở trạng thái chờ, công suất tiêu thụ là
132mW so với 525mW khi ở trạng thái đọc dữ liệu, thời gian truy xuất là 200ns. Sơ đồ
chân và sơ đồ logic của 2764 như sau:
DQ
0
-DQ
7
5
A
4
A
3
A
2
A
1
A
0
DQ
0
DQ
1
DQ
2
V
ss
DQ
6
DQ
5
DQ
4
DQ
3Mode \ Pin
WE\
CE
1
\
CE
2
OE\
Output
Not Select
x
H
x
x
Hi-Z
x
A
12
A
7
A
6
A
5
A
4
A
3
A
2
A
1
A
0
O
0
7
O
6
O
5
O
4
O
3 2764
CE\
OE\
V
PP
D
0
-D
+ Chế độ đọc (Read Mode ): Chế độ này được thiết lập khi CE\ và OE\ ở mức thấp,
PGM ở mức cao. Có hai ngõ vào điều khiển dùng để truy xuất Data từ ROM là CE\ và
OE\ dùng để kiểm soát ngõ ra Data, đưa Data lên Data bus.
+ Chế độ chờ (Stanby Mode ): Chế độ này làm giảm công suất tiêu thụ được thiết lập
khi CE\ ở mức cao, ở chế độ này Data ở trạng thái trở kháng cao độc lập.
*Giải mã đòa chỉ:
Do 8051 thiết kế cần quản lý nhiều thiết bò ngoại vi, nhiều ô nhớ, muốn làm được
việc này người ta phải cung cấp cho mỗi ô nhớ và thiết bò ngoại vi tầm đòa chỉ cho thiết
bò đó. Vì vậy cần có mạch giải mã đòa chỉ trong mạch điện. Người ta thường dùng IC
giải mã 74HC138 với các ngõ ra được nối tới các ngõ vào chọn chip (CS\) trên các IC
nhớ. Sau đây là sơ đồ chân, bảng sự thật và đặc điểm của 74138:
Mode (chế độ)
CE\
OE\
PGM\
V
PP
Ra
(Output)
D
o ut
Cấm lập trình
H
x
x
V
pp
Hi-Z
Bảng trạng thái
A
B
C
G
2A
G
2B
G
1
Y
7
GND
B
C
Y
0
Y
7 G
2A\
G
2B
G
1Sơ đồ chân
Luận văn tốt nghiệp Trang 24
GVHD Nguyễn Việt Hùng
Sơ đồ chân
Bảng trạng thái
INPUTS
OUTPUTS
ENABLE
SELECT
G
1
G
2
C
B
A
Y
0
Y
1
Y
2
x
x
x
x
H
H
H
H
H
H
H
H
H
L
L
L
L
L
H
H
H
H
H
H
H
H
L
L
L
H
H
H
H
H
H
L
H
L
L
H
H
H
H
L
H
H
H
H
L
H
L
H
H
H
H
H
H
L
H
H
+ G
2
Bảng trạng thái
74373
D
0
-D
7
Q
0
-Q
7
OC \
G
Output
Control (OC)
Enable
G
D
OUTPUT
L
H
H
H
Q
4
Q
5
Q
6
Q
7
G
OE\
D
0
D
1
D
2
D
3
D
4
D
vừa là bộ nhớ dữ liệu.
Vậy 1 chương trình có thể được tải vào Ram (bằng cách ghi nó như bộ nhớ dữ
liệu) và thi hành chương trình (bằng cách truy xuất nó như bộ nhớ chương trình)
3. Khối hiển thò:
a.Sơ đồ khối của mạch hiển thò:
Bộ phận hiển thò gồm 8 led 7 đoạn anod chung. Vì các vi xử lí xử lí các dữ liệu là
số nhò phân (1,0 ) nên cần có sự giãi mã từ số nhò phân sang số thập phân. Sự giải mã
có thể dùng giải mã bằng phần cứng (IC giải mã). Tuy nhiên với phần mềm quét led
người ta có thể giảm bớt được các IC giải mã giảm giá thành của mạch điện. Nhưng để
kết nối với mạch hiển thò phải cần có IC giao tiếp vào ra vì các port của 8051 đã dùng
cho mục đích khác. 8255 là IC giao tiếp vào ra song song thông dụng và có thể điều
khiển được bằng phần mềm nên chúng em sử dụng 8255 để giao tiếp với các thiết bò
ngoại vi (phần hiển thò…). Vì dòng ra các port của 8255 rất nhỏ (lớn nhất là port A
khoảng 5mA) nên cần có IC đệm dòng để nâng dòng lên đủ kéo cho led sáng. Chúng
em chọn IC đệm 74245. Khi đưa dữ liệu ra để hiển thò tất cả các led đều nhận nhưng tại
một thời điểm chỉ cho phép một led được nhận dữ liệu nên phải có mạch giải mã để
chọn led.
Chúng em sử dụng IC giải mã 74LS138.Vì vậy sơ đồ khối của mạch hiển thò như sau:
WR