BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜ> G Đ Ạ I HỌC KỸ THUẬT CÔNG NGHỆ TPHCM
KHOA ĐIỆN - ĐIỆN TỬ
NGÀNH ĐIỆN TỬ VIẼN t h ô n g
EO oO o 03
LUẬN VĂN TỐT NGHIỆP
Đ Ề T Ả I:
kế h ệ
KIỆM
ĐIỆN GIAO TIẾP VỚI MẨY TÍNH
t h iế t
t h ố n g t iế t
'GVHD : Th.s Nguyễn Thị Ngọc Anh
SVTH : Võ Long
M SSV : 02DHDT106
LỚP
: 02DT02
1Ã ƯƠNG ŨHDL~K7Ì::n
THỈ/ VỈÊIN
*
"
---
TP Hồ Chí Minh, 07 - 2007
m
'ng Tiết Kiệm
Tính
GVHD : Th.s Nguyễn Thị Ngọc Anh
LỜI MỞ ĐẦU
Ngày nay năng ll(Ợng đang là vân đề cấp thiết đôi với cuộc sông cua chung ta.
Vấn đề thiếu hụt năng l|ượng dự trữ cũng như chưa tìm ra nguồn năng lượng mới thay
thế cho các nguồn năng lượng sắp cạn kiệt, buộc chúng ta phải sử dụng năng lượng
một cách hiệu quả và ti é t kiệm.
Các hệ vi xử lý dã góp phần quan trọng trong việc chương trình hố các hoạt
động của máy móc tron cơng nghiệp cũng như trong đời sống nhờ vào các phần mềm
ứng dụng. Một khi các lệị thống vi xử lý được ứng dụng rộng rãi thì các nhà chế tạo
khơng bỏ lỡ cơ hội cho ra đời các họ vi điều khiển ngày càng tiến bộ hơn, có phạm vi
ứng dụng rộng rãi hơn í dụ : họ 89C, họ AVR, họ PIC....Vi điều khiển được sử dụng
nhiều trong các thiết bị công nghiệp, trong máy giặt, trong điều khiển đèn giao thông,
trong các đồ chơi giải tr
Và để tránh sự ihiếu hụt năng lượng thì các doanh nhiệp cũng phải tiết kiệm
điện nhằm tạo thêm lợ nhuận, sau đây em xin giới thiệu đề tài : Thiêt kê hệ thông
tiết kiệm điện giao tiế E>với máy tính, đề tài này được ứng dụng cho các Resort nhằm
tránh lãng phí năng lượfi g khi khơng có người sử dụng.
Nội dung đề tà bao gồm các phần : nhận biết số người bằng cách dùng các
cặp thu phát hồng ngo ạ i sau đó tín hiệu cảm biến được gửi về bộ xử lý Slave
AT89C2051 ( bộ xử 1} này làm nhiệm vụ đếm số người có trong phịng ), bộ xử lý
Slave sẽ kiểm tra , né u khơng cịn người trong phòng sẽ ngắt hết các thiết bị điện
nhằm tiết kiệm điện.
Phần trung tâm giao tiếp với bộ xử lý Slave thông qua SN75176. Đồng thời
phần trung tâm cũng iao tiếp với máy tính để truyền số người trong phịng và trạng
thái các thiết bị điện kliii máy tính yêu cầu thông qua SN75176.
Svth: Võ Long
Trang 4
ống Tiết Kiệm
Tính
GVHD : Th.s Nguyền Thị Ngọc Anh
MỤC LỤC
Trang
LỜI CẢM ƠN
LỜI M Ở Đ Ầ U
CHƯƠNG I: C ơ SỞ
Ý T H U Y Ế T ..........................................................................6
I. Sơ lược về ci m b iế n ......................................................................................^
..................................................... 9
II. Sơ lược về ic: 89C51.............................................................................
" ^ ^ ^ 1 1 . . . . . . . . . . . . . . . .......26
III. Sơ lược về IC 7 5 1 7 6 .............................................................................
..................... 28
IV. Sơ lược về g|ao tiếp truyền th ơ n g .....................................................
.........................28
1. Giao ti ííp m áy tính......................................................................
...............................32
2. Giao ti ĩp nối tiếp qua R S232...................................................
CHƯƠNG II: TÍNH
O Á N THIẾT K Ế ............................................................... 35
I. Sơ đồ khơi h,Ịặ thống.....................................................................................^
...............................35
l.S ơ đồ khối
36
2.Chức n íng từng khối
II. Tính tốn và thiết k ế ................................................................................. 3^
1. Khơi c ảm b iế n .................................................................................. 3^
44
'ì lýXcảm biên
2.
Khối
đ ều khiển trung tâ m ..............................................................46
3.
Khối
47
ao gtiếp với m áy tín h ......................................................
4.
Khối
48
III. Sơ đồ tổng hể toàn m ạ c h ........................................................................
1. Sơ đồ tổng thể toàn m ạch............................................................... 48
2. Nguyệ n lý hoạt động của m ạ c h ....................................................49
IV.
th u ậ t........................................................................................
Lưu đồ giải
1. Khối ;:ử lý trung tâ m .................................................................
2. Khối xử lý cảm b iê n ..................................................................
51
CHƯƠNG III: KẾT L U Ậ N ..............................................................................
.53
52
TÀI LIỆ U THAM K,'HẢO.................................................................................. 5 4
P H Ụ L Ụ C CHƯƠN 3 TRÌNH................................................................................ 55
Svth: Võ Long
Trang 5
GVHD: Th.s Nguyễn Thị Ngọc Anh
Đề tà i: Thiết K ế Hệ Th ông Tiết Kiệm
Tính
Điên Giao Tiếp Với
GVHD : Th.s Nguyễn Thị Ngọc Anh
*
/ \
Hình 1 : Khi có người từ ngồi vào
Hình 2 : Khi có người từ trong ra
Svth: Võ Long
Trang 7
ông Tiết Kiệm
Tính
GVHD: Th.s Nguyễn Thị Ngọc Anh
1. Mach phát si' dụng mắt phát bằng hồng ngoại với mạch phát có tần số phát
xung vng 10Khz và để tạo ra tia hồng ngoại với tần số như trên ta sử dụng
IC74HC00, IC này là cé c cổng logic NAND thuộc họ CMOS.
Thời gian trễ giũ a tín hiệu ngõ ra so với tín hiệu ngõ vào là 23ns với nguồn Vcc
= 5V. Bên trong IC là những cổng NAND kết hợp với điện trở và tụ điện tạo thành
mạch dao động xung Vnông tuỳ thuộc vào giá ưị của điện trở và tụ điện mà thời gian
nạp xả khác nhau tạo rí những tần sơ khác nhau.
2. Mach thu: đê thu tín hiệu hồng ngoại phát ra từ mạch phát ta sử dụng mạch
thu với mạch khuếch đ 1i tương tự ở phần tiền khuếch đại làm cho tín hiệu hông ngoại
thu được rõ ràng hơn, đồng thời kết hợp mạch khuếch đại có lọc nhiễu dùng IC số
CD4069 để biên độ tín hiệu được khuếch đại lên gần bằng với biên độ nguồn cung cấp
(với biên độ tín hiệu lớIa thì việc sử lý mức tín hiệu ở ngõ ra [0] [1] sẽ dễ dàng hơn),
IC số CD4069 h oạt động ở điện áp từ 3 đến 18V, có 6 cổng logic đảo, tuỳ thuộc
vào trạng thái kết hợp ngõ vào ra mà có thể sử dụng như một mạch dao động, mạch
khuếch đại (có kết hỢỊ điện trở và tụ điện), hay mạch tạo xung.
Svth: Võ Long
Trang 8
ống Tiết Kiệm
Tính
GVHD : Th.s Nguyền Thị Ngọc Anh
TT. Sơiươc về IC 89C51
1. Kiến trúc phầịn cứng 8951:
Đặc điểm và chúỊb năng hoạt động của các IC họ MCS - 51 hoàn toàn tương tự
như nhau, ở đây giới tlậ'ẹu IC 8951 là một họ IC vi điều khiển do hãng Intel của Mỹ
sản xuất.
Các đặc điểm củp 8951 được tóm tắt như sau:
4 KB EPROM bên trong
128 Byte RAM nội
4 Port xuất /nhập I/O 8 bit
Giao tiếp nối tiếp
64 KB vùng nhớ mã ngoài
64 KB vùng nhớ dữ liệu ngoại
Xử lý Boolean (hoạt động trên bit đơn)
210 vị trí nhớ có thể định vị bit
4|XS cho hoạt động nhân hoặc chia.
Sơ đồ chân 895ĩ
U2
p-
D-
39
38
37
36
35
34
33
32
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
o
Qo
P0.0/AD0
P0.1/AD1
P0.2/AD2
P0.3/AD3
P0.4/AD4
P0.5/AD5
P0.6/AD6
P 07/AD 7
18
XTAL1
- XTAI Ọ
R ST
21
P2.0/A8 - 22
P2.1/A9
23
P2.2/A10 24
P2.3/A11
25
P2.4/A12
26
P2.5/A13
27
P2.6/A14
28
P2.7/A15
P3.0/RXD
P3.1/TXQ
P3 2/INTQ
P3.3/INT1
P3.4/TO
P3.5ZI1
P3.6/W R
P3.7/RD
PSEN
A LE /P R O G
■o
11
■o
12
13
14
15
16
17
-a
10
29
-a
30
31
AT89C51
Chức năng các chân của 8951:
8951 có tất cả 10 chân có chức năng như các đường xuất nhập. Trong đó có 24
chân có tác dụng kép (có nghĩa là 1 chân có 2 chức năng), mỗi đường có thể hoạt động
Svth: Võ Long
Trang 9
Đề tài: Thiết K ế Hệ Tỉ Ống Tiết Kiệm
Điện Giao Tiếp Với Máy Tính
GVHD : T h.s Nguyễn Thị Ngọc Anh
____________________ _ _
như đường xuất nhập hệ ặc như đường điều khiển hoặc là thành phần của các bus dữ
liệu và bus địa chỉ.
❖ Port 0 (cổng )): Port 0 là port có 2 chức năng ở các chân 32 - 39 của 8951.
Trong các thiết k ế cỡ n tỏ khơng dùng bộ nhớ mở rộng nó có chức năng như cac đương
I/O. Đố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 (cổng 1) : Port 1 là port I/O ưên các chân 1-8. Các chân được ký hiệu
Pl.o, P1.1.P1.2, ...,P1. có thể dùng cho giao tiếp với các thiết bị ngồi nêu cân. Port
1 khơng có chức năng 1hác vì vậy chúng chỉ được dùng cho giao tiếp với các thiết bị
bên ngoài.
❖ Port 2 (cổng 2)
: Port 2 là 1 port có tác dụng kép trên các chân 21- 28 được
dùng như các đường XIậấ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 (cổnị 3)
: Port 3 là port có tác dụng kép trên các chân 10-17. Các
chân của port này có r hiều chức năng, các cơng dụng chuyển đổi có liên hệ với các
đặc tính đặc biệt của 8<51 như ở bảng sau:
Tên
Bit
Chức năng chuyền đổi
P3.0
RXI )
Ngõ vào dữ liệu nối tiếp.
P3.1
TX1 )
Ngõ xuất dữ liệu nối tiếp.
P3.2
INI 0
Ngõ vào ngắt cứng thứ 0
P3.3
INI 1
Ngõ vào ngắt cứng thứ 1
P3.4
TO
Ngõ vào củaTIMER/COUNTER thứ 0.
P3.5
TI
Ngõ vào củaTIMER/COUNTER thứ 1.
P3.6
Wĩ
Tín hiệu ghi dữ liệu lên bộ nhớ ngồi
P3.7
RD
Tín hiệu đọc bộ nhớ dữ liệu ngồi.
Svth: Võ Long
Trang 10
ông Tiết Kiệm
Tính
GVHD : Th.s Nguyễn Thị Ngọc Anh
Ngõ tín hiệu PSEN (Program store enable)
PSEN là tín hiệi 1 ngõ ra ở chân 29 có tác dụng cho phép đọc bộ nhớ chương
trình mở rộng thường đi Ợc nối đến chân ÕẼ (output enable) của Eprom cho phcp đọc
các byte mã lệnh. PSE q ở mức thấp trong thời gian Microcontroller 8951 lấy lệnh.
Các mã lệnh của chươrị
trình được đọc từ Eprom qua bus dữ liệu và được chốt vào
thanh ghi lệnh bên tron g 8951 để giải mã lệnh. Khi 8951 thi hành chương trình Ưong
EPROM nội PSEN sẽ
C
mức logic 1.
❖ Ngõ tín hiệu điều khiển ALE (Address Latch Enable)
Khi 8951 truy Xilất bộ nhớ bên ngoài, port 0 có chức năng là bus địa chỉ và bus
dữ liệu do đó phải tácl
đường dữ liệu và địa chỉ. Tín hiệu ra ALE ở chân thứ 30
dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kết nối
chúng với IC chốt.
Tín hiệu ra ở chì n ALE là một xung trong khoảng thời gian port 0 đóng vai trị
là địa chỉ thấp nên chc t địa chỉ hoàn toàn tự động. Các xung tín hiệu ALE có tốc độ
bằng 1/6 lần tần số da(' động trên chip và có thể được dùng làm tín hiệu clock cho các
phần khác của hệ thi) ng. Chân ALE được dùng làm ngõ vào xung lập trình cho
EPROM trong 8951.
♦> Ngõ tín hiội [ EA (External Access)
Tín hiệu vào Ẽ Ã ở chân 31 thường được mắc lên mức 1 hoặc mức 0. Nếu ở
mức 1, 8951 thi hành chương trình từ EPROM nội trong khoảng địa chỉ thấp 4 Kbyte.
Nếu ở mức 0, 8951 sê 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 1 >V khi lập trình cho Eprom trong 8951.
❖ Ngõ tín hiệ 1 RST (Reset)
Khởi động lại RESET).ĐÓ là chân vào, số 9, mức tích cực cao, bình thường ở
mức thấp.Khi có xunị; cao đặt tới chân này thì bộ vi điều khiển sẽ kêt thúc mọi hoạt
động hiện tại và tiến hành khởi động lại.Q trình xảy ra hồn tồn tương tự như khi
bật nguồn.Khi Reset, mọi giá trị trên các thanh ghi sẽ bị xố.Để Reset có hiệu quả ,
chân RST cần duy trì trạng thái tích cực(mức cao) tối thiểu 2 chu kỳ máy.(một chu kỳ
máy bằng 12 chu kỹ
S v th : Võ Long
động đồng hồ ).
GVHD: Th.s Nguyễn Thị Ngọc Anh
Đ ề tài : Thiết K ế Hệ Th ống Tiết Kiệm,
Tính
Điện Giao Tiếp Với
❖ Các ngõ vào )ộ dao động XI,X2
Bộ dao động đượ|^ được tích hợp bên trong 8951, khi sử dụng 8951 người thiêt
kề chỉ cần kết nối thêm thạch anh và các tụ như hình vẽ trong sơ đồ. Tần số thạch anh
thường sử dụng cho 895 là 12Mhz.
❖ Các chân ng tiồn: 8951 làm việc với nguồn đơn +5V.
vcc (= 5V) được nối
vào chân 40 và Vss (G1S D = 0V) được nối vào chân 20.
2. Câu trúc bên trong vi điều khiển:
Bảng tóm tắt các vùng r, hớ 8951
FFFF
On -Chi 3
Memor '
Code
Memory
FFFF
Data
Memory
Enable via
RD&WR
Enable via
PSEN
0000
0000
External Memory
Bộ nhớ trong 8951 bao gồm EPROM và RAM. RAM trong 8951 bao gồm nhiều
thành phần: phần lưu ti ữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi
và các thanh ghi chức I ăng đặc biệt.
8951 có bộ nhc theo cấu trúc Harvard: có những vùng bộ nhớ riêng biệt cho
chương trình và dữ lié u Chương trình và dữ liệu có thê chứa bên trong 8951 nhưng
8951 vẫn có thể kết nc 'i với 64K byte bộ nhớ chương trình và 64K byte dữ liệu.
Hai đặc tính cầ Vchú ý là:
•
Các thanh g li và các port xuất nhập đã được định vị (xác định) trong bộ nhớ
và có thể truy xuất trự ; tiếp giống như các địa chỉ bộ nhớ khác.
•
Ngăn xếp tê n trong Ram nội nhỏ hơn so với Ram ngoại như trong các bộ
Microcontroller khác
Svth : Võ Long
Trang 12
GVHD : Th.s Nguyễn Thị Ngọc Anh
Đề tài: Thiết K ế Hệ Thố'ng Tiết Kiệm
Điện Giao Tiếp Với M á ; Tính
RAM bên trong 5951 được phân chia như sau:
/
Các bank hanh ghi có địa chỉ từ 00H đến 1FH.
s
RAM địa «hỉ hóa từng bit có địa chỉ từ 20H đến 2FH.
/
RAM đa cụng từ 30H đến 7FH.
•/ Các thanh ghi chức năng đặc biệt từ 80H đến FFH.
Bản đồ bộ nhớ L ata trên Chip như sau:_
FF
7F
F0 I?7 I76 I*5 I?4 I73 In In
I?0 I3
EO E7 E6 E5 E4 E3 E2 E1 EO
\c c
VI đa dụng
DO D7 D6 D5 D4 D3 D2 DI DO PSW
B8
30
-
-
-
BC BB BA B9 B8 IP
2F 7F 7E 7D 7C 71 7A 79 78
2E 77 76 75 74 7:
72 71 70
BO B7 B6 B5 B4 B3 B2 BI BO P.3
2D 6F 6E 6D 6C 611 6A 69 68
2C 67 66 65 64 6b 62 61 60
A8 AF
AC AB AA A9 A8 IE
2B 5F 5E 5D 5C 5 ì 5A 59 58
2A 57 56 55 54 55 52 51 50
AO A7 A6 A5 A4 A3 A2 AI AO P2
29 4F 4E 4D 4C 43 4A 49 48
99 khơng được địa chỉ hố bit
Svth: Võ Long
SBUF
Đề tà i: Thiết Kê'Hệ Th ỳ'ng Tiết Kiệm
Điện Giao Tiếp Với Má 1 Tính
1
27 3F 3E 3D 3C 3B ỈA 39 38
GVHD : Th.s Nguyễn Thị Ngọc Anh
5»8 5>F í)E í)D í>c í)B c)A í)9 s)8 s¡CON
26 3i7 36 35 34 33 32 31 30
25 :>F 2E 2D 2C 2B 2A 29 28
c10 )1 16 15 14 13 12 11 10 I>1
24 11 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18
ịD không được địa chỉ hoá bit
m i
22 17 16 15 14 13 12 11 10
8C khơng được địa chỉ hố bit
THO
21 0F 0E 0D oc 0B OA 09 08
8B không được địa chỉ hoá bit
TL1
20 07 06 05 04 03 02 01 00
8A khơng được địa chỉ hố bit
TL0
1F Barìk 3
89 khơng được địa chỉ hố bit
TMOD
18
88 8F 8E 8D 8C 8B 8A 89 88 TCON
17 Bank 2
87 không được địa chỉ hố bit
PCON
0F Bank 1
83 khơng được địa chỉ hố bit
DPH
08
82 khơng được địa chỉ hố bit
DPL
07 Bank thanh ghi 0
81 khơng được địa chỉ hố bit
SP
00 (mặc định cho R0 - R7)
88 87 86 85 84 83 82 81 80 P0
10
RAM đa dụng
Mặc dù trên h'ì nh vẽ cho thấy 80 byte đa dụng chiếm các địa chỉ từ 30H đến
7FH, 32 byte dưới từ )0H đến 1FH cũng có thể dùng với mục đích tương tự (mặc dù
các địa chỉ này đã có
ục đích khác).
Mọi địa chỉ tro Ig vùng RAM đa dụng đều có thể truy xuất tự do dùng kiểu địa
chỉ trực tiếp hoặc giár tiếp.
S v th : Võ Long
Trang 14
Đ ề tà i: Thiết K ế Hệ Thố'ng Tiết Kiệm
Điện Giao Tiếp Với Má Tính
GVHD : Th.s Nguyễn Thị Ngọc Anh
RAM có thể truy ịu ấ t từng bit:
8951 chứa 210 bi được địa chỉ hóa, trong đó có 128 bit có chứa các byte chứa
các địa chỉ từ 20H đến 2|FH và các bit còn lại chứa bong nhóm thanh ghi có chức năng
đặc biệt.
Ý
tưởng truy
:iất từng bit bằng phần mềm là các đặc tính mạnh của
X
microcontroller xử lý cliung. Các bit có thể được đặt, xóa, AND, OR, ... , với 1 lệnh
đơn. Đa số các microco,1 boiler xử lý đòi hỏi một chuỗi lệnh đọc - sửa - ghi để đạt được
mục đích tương tự. Ngo i ra các port cũng có thê truy xuât được tưng bit.
128 bit có chứa :ác byte có địa chỉ từ 00H -1FH cũng có thể truy xuất như các
byte hoặc các bit phụ tiulUỘc vào lệnh được dùng.
Các bank thanh %hi:
32 byte thấp của bộ nhớ nội được dành cho các bank thanh ghi. Bộ lệnh 8951 hô
trợ 8 thanh ghi có tên lí RO -R7 và theo mặc định sau khi reset hệ thống, các thanh ghi
này có các địa chỉ từ oc
- 07H.
Các lệnh dùng c í c thanh ghi RO - R7 sẽ ngắn hơn và nhanh hơn so với các lệnh
có chức năng tương ứnlg dùng kiểu địa chỉ trực tiếp. Các dữ liệu được dùng thường
xuyên nên dùng một t r )ing các thanh ghi này.
Do có 4 bank tlì anh ghi nên tại một thời điểm chỉ có một bank thanh ghi được
truy xuất bởi các thanh ghi RO - R7 để chuyển đổi việc truy xuất các bank thanh ghi ta
phải thay đổi các bit cItọn bank bong thanh ghi bạng thái.
Các thanh ghi í ó chức năng đặc biệt:
Các thanh ghi n1 ại của 8951 được buy xuất ngầm định bởi bộ lệnh,
Các thanh ghi trong 8951 được định dạng như một phần của RAM trên chip vì
vậy mỗi thanh ghi sẽ ( ó một địa chỉ (ngoại trừ thanh ghi bộ đếm chương
trình và thanh
ghi lệnh vì các thanh ghi này hiếm khi bị tác động trực tiếp). Cũng như RO đến R7,
8951 có 21 thanh ghi có chức năng đặc biệt (SFR: Special Function Register) ở vùng
trên của RAM nội từ
chỉ 80H - FFH.
Chú Ỷ. tất cả .28 địa chỉ từ 80H đến FFH không được định nghĩa, chỉ có 21
thanh ghi có chức năn g đặc biệt được định nghĩa sấn các địa chỉ. Ngoại trừ thanh ghi A
Svth: Võ Long
Trang 15
GVHD : Th.s Nguyễn Thị Ngọc Anh
Svth: Võ Long
GVHD : Th.s Nguyễn Thị Ngọc Anh
Đề tà i: Thiết K ế Hệ Th íng Tiết Kiệm
Điện Giao Tiếp Với MáyTmh
Bit tự động được set hay Clear ở mỗi chu kỳ máy để lập Parity chấn với thanh
ghi A. Sự đếm các bit 1 hong thanh ghi A cộng với bit Parity ln ln chẩn. Ví dụ A
chứa 10101101B thì bit ]» set lên 1 để tổng số bit 1 trong A và p tạo thành số chẵn.
Bit Parity thường được dùng trong sự kết hợp với những thủ tục của Port nối tiếp
để tạo ra bit Parity trước khi phát đi hoặc kiểm tra bit Parity sau khi thu.
Thanh ghi B :
Thanh ghi B ở đ:a chỉ F0H được dùng cùng với thanh ghi A cho các phép toán
nhân chia. Lệnh MUL , J3 sẽ nhận những giá trị không dấu 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 A
chia B, kết quả nguyên đặt vào A, số dư đặt vào B.
Thanh ghi B có ;hể được dùng như một thanh ghi đệm trung gian đa mục đích.
Nó là những bit định vị thông qua những địa chỉ từ F0H - F7H.
Con trỏ Ngăn xí p SP ịStack Pointer) :
Con ưỏ ngăn xê p là một thanh ghi 8 bit ở địa chỉ 81H. Nó chứa địa chỉ của của
byte
cất
dữ
dữ
liệu hiện hành ưên đỉnh ngăn xếp. Các lệnh trên ngăn xếp bao gồm các lệnh
liệu vào ngăn
X íp
(PUSH) và lấy
dữ
liệu ra khỏi ngăn xếp (POP). Lệnh cất
dữ
liệu vào ngăn xếp sẽ li m tăng SP trước khi ghi d ữ liệu và lệnh lấy ra khỏi ngăn xếp
sẽ làm giảm SP. Ngăn xếp của 8031/8051 được giữ trong RAM nội và giới hạn các địa
chỉ có thể truy xuất bằ Ig địa chỉ gián tiếp, chúng là 128 byte đầu của 8951.
Để khởi động
í;p
với ngăn xếp bắt đầu tại địa chỉ 60H, các lệnh sau đây được
dùng:
MOV SP, #5
Với lệnh trên ttù ngăn xếp của 8951 chỉ có 32 byte vì địa chỉ cao nhất của RAM
trên chip là 7FH. sở
ĩ giá trị 5FH được nạp vào SP vì SP tăng lên 1 là 60H trước khi
cất byte dữ liệu.
Khi Reset 89 1 SP sẽ mang giá trị mặc định là 07H và dữ liệu đầu tiên sẽ
được cất vào ô nhớ ảgăn xếp có địa chỉ 08H. Nếu phần mềm ứng dụng không khỏi
Svth: Võ Long
GVHD : Th.s Nguyễn Thị Ngọc Anh
vùng RAM này đã được dùng làm ngăn xếp. 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 t ình con ...
Con trỏ dữ liệu D PTR (Data Pointer):
Con trỏ dữ liệu ( 3PTR) được dùng để truy xuất bộ nhớ ngoài là một thanh ghi
16 bit ở địa chỉ 82H (DI 'L: byte thấp) và 83H (DPH: byte cao). Ba lệnh sau sẽ ghi 55H
vào RAM ngoài ở địa cl ỉ 1000H:
MOV A , Ề55H
MOV DPT R, #1000H
M OVX@ DPTR,A
Lệnh đầu tiên dì ng để nạp 55H vào thanh ghi A. Lệnh thứ hai dùng để nạp địa
chỉ của ô nhớ cần lưu g á trị 55H vào con ưỏ dữ liệu DPTR. Lệnh thứ ba sẽ di chuyển
nội dung thanh ghi A (1 i 55H) vào ô nhớ RAM bên ngồi có địa chỉ chứa trong DPTR
(là 1000H)
Các thanh ghi p ìrí (Port Register):
Các Port của 89; ¡1 bao gồm Port 0 ở địa chỉ 80H, Porti ở địa chỉ 90H, Port2 ở
địa chỉ AOH, và Port3 1 1địa chỉ BOH. 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 7 Inter (Timer Register):
8951 có chứa hai bộ định thời/bộ đếm 16 bit được dùng cho viêc định thời đươc
đếm sự kiện. TimerO ở địa chỉ 8AH (TLO: byte thấp) và 8CH ( THO: byte cao).
Timer 1 ở địa chỉ 8BH ( I’L l: byte thấp) và 8DH (THI : byte cao). Việc khởi động timer
được SET bởi Timer Mode (TMOD) ở địa chỉ 89H và thanh ghi điều khiển Timer
(TCON) ở địa chỉ 88H. Chỉ có TCON được địa chỉ hóa từng bit.
Svth: Võ Long
Trang 19
GVHD : Th.s Nguyễn Thị Ngọc Anh
Các thanh ghi Pc
8951 chứa một p )rt nối tiếp cho việc trao đổi thơng tin với các thiết bị nối tiếp
như máy tính, modem h Dặc giao tiếp nối tiếp với các IC khác. Một thanh ghi đệm dữ
liệu nối tiếp (SBUF) ở íịa chỉ 99H sẽ giữ cả hai dữ liệu truyền và dữ liệu nhập. Khi
truyền
dữliệu ghi lên sí BUF
khi nhận dữ liệu thì đọc SBUF. Các mode vận khác nhau
được lập trình qua thanl ghi điều khiển Port nối tiếp (SCON) được địa chỉ hóa từng bit
ở địa chỉ 98H.
Các thanh ghi n!:'ắt (Interrupt Register):
8951 có cấu ư ú | 5 nguồn ngắt, 2 mức ưu tiên. Các ngắt bị cấm sau khi bị reset
hệ thống và sẽ được c IO phép bằng việc ghi thanh ghi cho phép ngắt (IE)
ở
địa chỉ
A8H. Cả hai được địa c: ủ hóa từng bit.
Thanh ghi đ iều , ĩhiển nguồn PCON (Power Control Register):
Thanh ghi
pco:
khơng có bit định vị. Nó ở địa chỉ 87H chứa nhiều bit điêu
khiển. Thanh ghi PCO 'Ị được tóm tắt như sau:
Bit 7 (SMOD) Bit có tốc độ Baud ở mode 1, 2, 3 ở Port nối tiêp khi set.
' Bit 6, 5, 4 : Kh ơng có địa chỉ.
Bit 3 (G F 1): I it cờ đa năng 1.
Bit 2 (G F 0): I it cờ đa năng 2.
I Bit 1 * (P D ): ỉet để khởi động mode Power Down và thoát để reset.
Bit 0 * (ID L ): Set để khởi động mode Idle và thoát khi ngắt mạch hoặc reset.
Các bit điều kh ển Power Down và Idle có tác dụng chính trong tất cả các IC họ
MSC-51 nhưng chỉ đưc c thi hành trong sự biên dịch của CMOS.
Bộ nhớ ngoài (. 'xternal Memory):
8951 có khả nă Ìg mở rộng bộ nhớ lên đến 64K byte bộ nhớ chương trình và 64k
byte bộ nhớ dữ liệu n£ ồi. Do đó có thể dùng thêm RAM và EPROM nếu cần.
Khi dùng bộ n] LỚ ngồi, PortO khơng cịn chưc năng I/O nữa. Nó được kết hợp
giữa bus địa chỉ (ACM 7) và bus dữ liệu (D0-D7) với tín hiệu ALE để chốt byte của bus
địa chỉ chỉ khi bắt đầu mỗi chu kỳ bộ nhớ. Port2 được cho là byte cao của bus địa chỉ.
Svth: Võ Long
Ống Tiết Kiệm
GVHD : T h.s Nguyên Thị Ngọc Anh
Tính
Bộ nhớ chương tiẶnh bên ngoài là bộ nhớ EPROM được cho phép của tín hiệu
PSEN
D0-D7
A0-A7
RAM
A8-A15
ÕẼ
WE
Trong một chu lỳỳ máy tiêu biểu, tín hiệu ALE tích cực 2 lần. Lần thứ nhất cho
phép 74HC373 mở cổn g chốt địa chỉ byte thấp, khi ALE xuống 0 thì byte thấp và byte
cao của bộ đếm chươni; trình đều có nhưng EPROM chưa xuất vì PSEN chưa tích cực,
khi tín hiệu lên 1 trở 1 li thì Port 0 đã có dữ liệu là Opcode. ALE tích cực lần thứ hai
được giải thích tương ự và byte 2 được đọc từ bộ nhớ chương trình. Nếu lệnh đang
hiện hành là lệnh 1 byie thì CPU chỉ đọc Opcode, cịn byte thứ hai bỏ đi.
Sự kết nối phần cứng của bộ nhớ EPROM như sau:
Accessing ExternII l Code Memory (Truy xuất bộ nhớ mã ngoài)
Truy xuất bộ n} ớ dữ liệu ngoài (Accessing External Data Memory) :
Bộ nhớ dữ liệu Igoài là một bộ nhổ RAM được đọc hoặc ghi khi được cho phép
của tín hiệu RD và ^ R. Hai tín hiệu này nằm ở chân P3.7 (RD) và P3.6 (WR). Lệnh
MOVX được dùng để truy xuất bộ nhớ dữ liệu ngoài và dùng một bộ đệm dữ liệu 16
bit (DPTR), RO hoặc Ỹ 1 như là một thanh ghi địa chỉ.
Các RAM có 11lể giao tiếp với 8951 tương tự cách thức như EPROM ngoại trừ
chân RD của 8951 r
với chân OE (Output Enable) của RAM và chân WR của 8951
‘ rcư(7N£ BriDL-K : cn
*
a
Trang 21
S v th : Võ Long
5 Õ_/ ƠỴƠ7) 3)^ o. ¿ị
GVHD : Th.s Nguyễn Thị Ngọc Anh
nối với chân WE của
của EPROM.
Accessing ExternI
Sự giải mã địa c l ĩ (Address Decoding):
Sự giải mã địa c lí là một yêu cầu tất yêu để chọn EPROM, RAM, 8279,... Sự
giải mã địa chỉ đơi với S951 để chọn các vùng nhớ ngồi. Nêu các con EPROM hoặc
RAM 8K được dùng thi các bus địa chỉ phải được giải mã để chọn các ĨC nhớ nằm
trong phạm vi giới hạn ÌK: 0000H - 1FFFH ; 2000H - 3FFFH ,...
Một cách cụ thể IC giải mã 74HC138 được dùng với những ngõ ra của nó được
nối với những ngõ vào Ị;họn Chip
cs (Chip Select) trên những IC nhớ EPROM, RAM,
... Hình sau đây cho phé|) kết nối nhiều EPROM và RAM.
Svth : Võ Long
Trang 22
GVHD : Th.s Nguyễn Thị Ngọc Anh
Đề tài : Thiết Kê'Hệ Tt ơng Tiết Kiệm
Tính
Điên Giao Tiếp Với
Address Decodinị ’ (Giải mã địa chỉ)
Address Bus (AO-A15)
Data Bus (D0-D7)
WR RD
6264
2764
PSEN
OE
D0-D7
A0-A12 EPROM
8KBytes
cs
Select another EPROM/RAM
Svth : Võ Long
OE
D0-D7
WE
A0-A12
RAM
8KBytes
GVHD : Th.s Nguyễn Thị Ngọc Anh
Đề tài : Thiết K ế Hệ Tl ơng Tiết Kiệm
Tính
Điện Giao Tiếp Với
Sự đè lên nhau Ci Ia các vùng nhớ dữ liệu ngồi:
Vì bộ nhớ chương trình là EPROM, nên nảy sinh một vấn đề bất tiện khi phát
triển phần mềm cho vi ỉiều khiển. Một nhược điểm chung của 8951 là các vùng nhớ
dữ liệu ngoài nằm đè lé n nhau, vì tín hiệu PSEN được dùng đê đọc bọ nhơ ma ngoai
và tín hiệu RD được di In g để đọc bộ nhớ dữ liệu, nên một bộ nhớ RAM co the chưa
cả chương trình và dữ
iệu bằng cách nối đường ÕẼ của RAM đến ngõ ra một cổng
AND có hai ngõ vào p 5EN và RD . Sơ đồ mạch như hình sau cho phép bộ nhớ RAM
có hai chức năng vừa li bộ nhớ chương trình vừa là bộ nhớ dữ liệu:
Overlapping the Extern ĩl code and data space
Vậy một chươnị trình có thể được load vào RAM bằng cách xem nó như bộ nhớ
dữ liệu và thi hành chu 3ng trình bằng cách xem nó như bộ nhớ chương trình.
Hoạt động Rese
+5V
+5V
RESET
■100
10uF:
RST
r
—D
'S^KOhm
Svth : Võ Long
Trang 24
Đề tà i: Thiết K ế Hệ Th ông Tiết Kiệm
Tính
Điên Giao Tiếp Với
GVHD : Th.s Nguyền Thị Ngọc Anh
et bằng tay)
Manual Reset
8951 có ngõ vào :eset RST tác động ở mức cao trong khoảng thời gian 2 chu kỳ
xung máy, sau đó xuốnị mức thấp để 8951 bắt đầu làm việc. RST có thể kích tay bằng
một phím nhấn thường lở .
Trạng thái của tí t cả các thanh ghi trong 8951 sau khi reset hệ thống được tóm
tắt như sau:
Thanh ghi
Nội dung
I )ếm chương trình PC
0000H
r ’hanh ghi tích lũyA
00H
r ’hanh ghi B
00H
' ’hanh ghi thái PSW
00H
>p
07H
DPRT
0000H
3ort 0 đến port 3
FFH
p
XXX0 0000B
[E
o x o x 0000 B
Các thanh ghi định thời OOH
SCON SBUF
OOH
PCON (HMOS)
OOH
PCON (CMOS)
OXXXXXXXH
o x x x 0000 B
Thanh ghi quai
địa chỉ 0000H. Khi ngp vào RST xuống mức thấp, chương trình ln bắt đầu tại địa chỉ
0000H của bộ nhớ chi|('ơng trình. Nội dung của RAM trên chip không bị thay đổi bởi tác
động của ngõ vào resệt.
Svth: Võ Long
Trang 25
GVHD : Th.s Nguyền Thị Ngọc Anh
Đề tà i: Thiết K ế Hệ Th ống Tiết Kiệm
Tính
ỉiao Tiếp Với Má y T
í n h ____________ ___________
Điện Giao
HI. s ơ LƯƠC~ FỀ IC T R U Y Ề N D Ữ L IỀ U 75176
SN75176 có thê ruyền nhận 2 chiều, được thiết k ế dùng cho những mạch cần
phát cho nhiều điểm trê 1 đường truyền dài trên 1000 m ét và trong 1 mơi trường ồn ào.
SN75176 có 3 tri. ng thái ngõ ra 2 chiều, tức là khi nhận thì A, B là 2 ngõ vào
nhưng khi phát thì 2 ngc I A B này đóng vai trị là 1 ngõ vào và 1 ngõ ra ở phía ngược
lại đường truyền.
❖ Chính ưu điể m này mà SN75176 được sử dụng trong hệ thống em đang thực
I dữ liệu đi xa trong 1 môi trường nhiễu rất cao (do có nhiều
hiện, có chức năng truy In
dây dẫn và giữ vai trò [tịnh hướng đi cho dữ liệu, dữ liệu đi theo chiều gửi hay nhận
tùy thuộc vào yêu cầu c ủa hệ thống.
> SN75176 có
chân cho phép, 1 cho ngõ vào và 1 cho ngõ ra.
> SN75176 hoạ t động trong phạm vi điện áp lớn lan 2 chiêu vào va ra, nhưng
dòng điện ở ngõ ra thec chiều phát chỉ khoảng 60mA, và IC này có thê tự tăt khi nhiẹt
độ quá 70° c.
> Nguồn của sN75176 là nguồn đơn 5V.
Sơ đồ chân:
Ký hiệu luận lý
oe ■2 iv EN1
EH2
RE
3—
D*
V2
Svth: Võ Long
1V ----
lV
í ¿3___
“3-
Trang 26
GVHD : Th.s Nguyễn Thị Ngọc Anh
Đề tài: Thiết K ế Hệ Th ống Tiết Kiệm
Điện Giao Tiếp Với Má f Tính
Sơ đồ luận lý :
DE
0
t
a
n
A
R
•ế— 4 ►
B
Bu»
Bảng trạng thái:
DRIVI R
INPUT
D
ENABLE
DE
H
L
H
H
L
X
OUTPUTS
A ■_
3L=
H
L
L
H
z
z
EIVER
DIFFERENTIAL ENABLE
INPUTS
RE
A- B ; '
OUTPUT
R
V id > 0 .2 V
L
-0.2Y < VID< 0.2V
L
H
?
VID < -0.2 V
L
L
X
H
Open
L
z
7
H = high level, L = low evel,
? = indeterminate,
X = irrelevant, z = high in pedance (off)
Svth: VÕ Long
Trang 27