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

Thiết kế và thi công mạch menu điện tử

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 (3.55 MB, 81 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRUONG DAI HOC DAN LAP KY THUẬT CÔNG NGHỆ

THANH PHO HO CHi MINH
SRR eR OR eo RR RE

KHOA DIEN - DIEN TU

LUAN AN TOT NGHIEP
ĐỀ TÀI:

THIẾT KẾ VÀ THI CONG MACH
MENU ĐIỆN TỬ

Nn

: Th.s NGUYEN TH] NGQC ANH

SVTH : NGUYEN PHAT DAT

LỚP

TRUGNG BHDL
~ KTCÑ|

:OIĐĐT 03

MSSV : 10101041

THU VIEN |


*

'sẽ.J04Q62986— )
Thành Phố Hồ Chí Minh, tháng 7 năm 2006


LUẬN VĂN TỐT NGHIỆP

GVHD : Th.S Nguyễn Thị Ngọc Anh

MỤC

LỤC

Trang

LỜI CẢM ƠN.

1

LỜI MỞ ĐẦU

2

MỤC LỤC

7

PHAN I: CO SO LY THUYET
9


CHUONG I. KHAO SAT VI DIEU KHIEN AT 89C51
A. GIỚI THIỆU VỀ HỌ MCS-51..............................

9

B. BỘ VI XỬ LÝ AT 89C51

9

11.7) 086...

..........

IN®:(0(9/9/cEu//.09 (ae. 90...
In tg

11

...........

12

tà... .............................

12

2. Các ngõ tín hiệu điều khiển.............................
-- -- 5 sành ng
12


HI. TỔ CHỨC BÊN TRONG VI ĐIỀU KHIỂN.............................-----22
22222222 14
uy f0 5)

7a ỒỀỒỒDẦ.........

2. Bộ nhớ ngoài

14
..20

3. Các chế độ của 8951

23

a. Chế độ giảm cơng suấtt.........................................«rreriiiiiiirrrririie

23

b. Chế độ nghỉ........................-coeccceeserxirrerercee

24

À 0:(07.0610)(0/90 1127:1060... 018... .............

c8.

Na...


24

24

2. Các thanh ghi điều khiển 'Timer..............................
- GÀ nhe
25
3. Các nguồn xung nhịp cho 'Timer....................................... HH...
4. Sự bắt đầu , kết thúc và sự điều khiển 'Timer...........................................----Seeerrree
CC

SVTH : Nguyễn Phát Đạt

GHI

nsaYSY'yxyyyyxn


LUẬN VĂN TỐT NGHIỆP

GVHD : Th.S Nguyễn Thị Ngọc Anh

—nn-——S—_

|——————EằẦ-—

6. Chế độ Timer và cờ trần.....................................-..-----.rrrririiiririrrrirdriiiriiiirimiriee 29

6ï: 77
'Z+0:30

1. Giới thiệu......

......ÔỎÔ
sn
_

3]

2. Thanh ghi điều khiển port nối tiếp SCON

VI. HOAT DONG NGAT

33

_

svn

33

re

1. Tổ chức ngắt. . . . . . . . . . . . . . . . . . .

33

secon

a. Cho phép và cấm ngắt


31
31

b. Uu tién ngdtt..

34

c. Hỏi vòng tuần tự.............................-eceeeereerree

34
34

;

2. Các cờ ngắt......................................eersreeree

35

sete

3. Ngắt do port nối tiếp......................................

36

CHƯƠNG II: GIAO TIEP VAT Ls

36

_


I. TONG QUAN...
a

¬

II. MƠ TRƯỜNG TRUYỀN

van

1. Cáp kim loại

36
37

2. Cáp quang......................................-e-ceerririiiiiirirrriiiiirirrrrirke

we

3. Đường truyền vô tuyến...................................

Hee

37

Snnnrrmrre 38
HI. SỰ SUY HAO VÀ MÉO DẠNG TÍN HIỆU.............................22.......----ce 38
trlmrritereri
....--trimtntitiiTl
.......
10 .n.HlmiiiHrim

.......
HH...
1. Sự suy haO..................
2. Giới hạn băng thơng...............................

"-........ƠƠ1ƠỎƠ 38

3. Sự biến dạng do trễ pha....................................---eeerrirrrrririririerirrriirriirriimrmrr 38

HH

4. Sự can nhiễu

ke

seceuseesesvnssessuneenivasseeuneseenasases 39

.2.-22tt
........rirreiiraooo.
me... mrrrrrrrrrrri
TV. CÁC LOẠI TÍN HIỆU............................
1. Chuẩn V.28..........
a

SVTH : Nguyén Phat Dat

¬

"


DD
sessessesessosseususssensssesesssussnsonsnesse
Trang 4


GVHD : Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP

2. Dòng 20mA......................................... cai
”a:. 27V

an n

......111 kh HhHHhn..esrrrersed 41

V. CHUẨN GIAO TIẾP NỐI TIẾP RS-232.......

„4Ì

1. Giới thiệu chuẩn RS-232

41

2. Chuẩn giao tiếp RS-232C

43

a. Vai nét co ban về cổng nối tiếp


43

b. Đặc điểm kỹ thuật của RS-232C............

45

3. Giao tiếp RS-232 với TTL

45

4. Kết nối RS-232 với các thiết bị......

46

VI. GIỚI THIỆU CÁC IC TRUYỀN TÍN HIỆU

47

1.MAX232

47

2. DS75176B ( RS485)

47

CHUONG IIL.

GIAO TIẾP KẾT NỐI SỐ LIÊỤ,..............................................---c-s


I. CÁC KHÁI NIỆM CƠ BẢN.................................
1. Các chế độ thơng tin

2. Các chế độ truyền
3. Kiểm sốt lỗi..................................................--see

4. Các hình thức truyền......................................
........e
HH .,..mnrrrirririii
5S ...........
5. Mã truyền................

6. Đơn vị đo lường.

II. THÔNG TIN NỐI TIẾP BẤT ĐỒNG BỘ,....................................
1. Nguyên tắc đồng bộ biL........................................--errrirrrrre
2. Nguyên tắc đồng bộ ký "mm .........ƠỎ
3. Ngun tắc đơng bộ frame...................................--2...r.rrmrriimmiHHmmrrirrreiie 53
„`...

SVTH : Nguyễn Phát Dat

—.—...=.sxsasaẽaẽễẽäsaazờnnn

Trang

5


GVHD : Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP
II. THÔNG TIN NỔI TIẾP ĐỒNG BỘ.......................................-2-222..mmmrre 53
................ 53
sen
1. Nguyên tắc đồng bộ biL.....................
2. Nguyên tắc đồng bộ thiên hướng ký tự

H-eneeree

53

Hee

54

3. Nguyên tắc đồng bộ thiên hướng bit...

54

TY. CÁC NGHỊ THỨC TRUYỀN DỮ LIỆU.....................................

54

.

1. Kiểm tra lỗi

55

sass


2. Điều khiển lứu lượng.

PHẲN II: TÍNH TỐN THIẾT KẾ VÀ THỊ CƠNG
`.

8i 8n

.................ố.

. 22th

2. Thiết kế moduÌe. . . . . . . . . . . . . . . . . .
a. Sơ đ

58

secu

A. PHẦN CỨNG....................................

khối

1..711 7... r-1..27. 0..-0.0.100001.11..m10011..1000..000.91E, 59
59






58

b. Tính tốn thiết kế cho từng khối...................................e-eeeesrnrerrrrririmririiiiiiririrriiiiiee 59
63

c. Sơ đơ ngun lý

64

3. Thiết kế mạch giao tiếp.........

ÿNe,7...1.00B8BẺ8B8886 1111111...
b. Sơ đồ khối

ve

.64

_—...-

c. Sơ đỗ chỉ tiết...................................-.«d. Tính tốn và thiết kế...................................-...-e..e.

64

..64

"
a

65


4. Phương án kết nGL......cscssoscssecscsecsntieememenusunsussnnesmessnesennnsseenensninnersnenenasenanenestanst 65

5. Sơ đồ toàn bộ hệ thống.................................. c1...

66

tri

a. Sơ đồ nguyên Ïý....................................---eererriereHirrrieriirriiirrrriirrirrrirrtiiirimirimrrirtrrtrrirtrre 66
b. Nguyên lý làm 2m8

14
..........Ô

ae

SVTH : Nguyén Phat Dat

Trang 6


LUẬN VĂN TỐT NGHIỆP

B. PHẨNMỀM

GVHD : Th.S Nguyễn Thị Ngọc Anh

68


1. Chương trình điều khiển modute...............

68

2. Chương trình quản lý các module.............

76

KẾT LUẬN

81

TÀI LIỆU THAM KHẢO

82

SVTH : Nguyễn Phát Đạt


LUẬN VĂN TỐT NGHIỆP

GVHD :Th.S Nguyễn Thị Ngọc Anh

a

PHANI:
LY THUYET

SVTH :Nguyén Phat Dat


Trang 8


LUẬN

GVHD

VĂN TỐT NGHIỆP

CHUONGI:

KHAO

:Th.S Nguyễn Thị Ngoc Anh

SAT VI DIEU KHIỂN

AT 89C51

A. GIGI THIEU VE HO MCS - 51
> Dac diém chung

Microcontroller là một mạch tổ hợp bao gồm :

1 bộ vi xử lý, bộ nhớ ROM, RAM,

L/O, các Port, Timet va Clock. Họ vi điều khiển MCS - 51 gồm các IC : pP8031, pP8051

, P8751, uP8951, "P8032, "P8052, nP8752.
Các IC tiêu biểu của họ MCS - 51 được để cập là nP8051 và "P8951. Chúng đều

có các đặc điểm chung sau :
- 128 Bytes RAM nội .
- 4 KBytes ROM.

- 4 Port xuất nhập ƯO 8 bít.

- 2 bộ Timer / Counter 16 bit .
- 1 Port giao tiếp nối tiếp.
- 64 KB khơng gian bộ nhớ chương trình ngồi ( có thể mở rộng lên đến 256 KB ) .
- 64 KB vùng nhớ đữ liệu ngoài ( có thể mở rộng lên đến 256 KB ) .

- Bộ xử lý Boolean ( thao tác trên các bít đơn ).

- 210 vị trí nhớ có thể định vị bit .

- 4 us cho hoạt động nhân hoặc chia .

B. BỘ VI XỬ LÝ AT 89C5I :
AT 89C51 là một bộ vi xử lý 8 bit kiểu CMOS có tính năng hoạt động tốt với 4KB

bộ nhớ EPROM

( bộ nhớ chỉ đọc có thể xố và lập trình được ). Bộ xử lý này được chế

tạo áp dụng công nghệ sản xuất bộ nhớ ổn định dung lượng lớn của hãng ATMEL, tương
thích với chân ra và bộ chỉ thị theo tiêu chuẩn công nghé MCS - 51.
Bộ nhớ Flash cho phép nhớ chương trình cài đặt trong hệ thống hoặc do ngơn ngữ

lập trình có bộ nhớ ổn định theo quy ước. Bằng cách kết hợp một CPU 8 bit đa năng với


bộ nhớ Flash trên cùng một chip đơn thể. AT 8951 trở thành một bộ vi xử lý hoạt động
mạnh, cung cấp một giải pháp hiệu quả về kinh tế và có tính linh hoạt cao trong nhiều
ứng dụng điều khiển liên quan.

SVTH :Nguyễn Phát Đạt

Trang 9


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP

INT
INTO
Timerl

TimerO0

SERIAL PORT



vv

RAM |

OTHER

INTERRUPT

CONTROI.

REGISTER

OSCILATOR

BUS
CONTROL

128

*

A

T

+

Ww



4KB

TIMERo |«@10

SERIAL
PORT


VO PORT

t

A

—EA

AUF

|ROM | |TIMERI 4T

y

ab E
1

B80

TXD
Pa

|

RXD

PIP2 P3

ADDRESS/DATA


Hình 1.1 : Sơ đồ cấu tạo bên trong của họ MCS - 51
Bảng mô tả sự khác nhau giữa các IC trong họ MCS - 51

Loại | Bộ nhớ ROM | Bộ nhớ RAM | Timer
uP8031
uP8051

OK
4K

uP8032

OK
8K

uP8751 | 4K EPROM
uP8951 | 4K EPROM

pP8052

P8752 | 8 K EPROM

SVTH :Nguyén Phat Dat

128 Bytes
128 Bytes

2
2


128 Bytes
128 Bytes

2
2

256 Bytes
256 Bytes

3
3

256 Bytes

1

3


GVHD

LUẬN VĂN TỐT NGHIỆP

|

:Th.S Nguyén Thi Ngoc Anh

AT 89C51 có đặc tính tiêu chuẩn sau : bộ nhớ Flash 4 KB, bộ nhớ RAM 128 Bytes,
32 đường LO, bộ đếm 16 bit, cấu trúc ngắt hai mức 5 vector, một cổng serial đơi hồn


|

chỉnh, có bộ dao động gắn trên chip và mạch đồng hồ. Hơn nữa, AT 89C51 còn được thiết

|

phần
kế cổng logic tĩnh để hoạt động ở tân số Zero, hỗ trợ hai chế độ lưu nguồn chọn lọc

|

mém. Ché dé nghi ( Idle ) vừa ngắt CPU; vừa cho phép RAM, bộ định thời / bộ đếm, cổng
serial và hệ thống ngắt liên tục làm việc. Chế độ Power Down lưu các nội dung trong

|

RAM

|

nhưng cản trở bộ dao động làm việc, vơ hiệu hóa các chức năng khác của chip cho

đến khi nhấn RESET phần cứng kế tiếp .

|

1. SƠ ĐỒ CHAN
8951 có tất cả 40 chân, chức năng như các đường xuất nhập. Trong đó 24 chân có

cơng dụng kép; mỗi đường có thể hoạt động như đường xuất nhập, hoặc như đường điều


|

khiển, hoặc là thành phần của Bus dữ liệu và Bus địa chỉ.
|

|

|

|

H— 2|
o—34
o—44
+—
H—Ê|
o—L}
H—`
nA]

P1.0
P11
p42
p43
P14
P15
P16
p.7
nor


n—10Ìp3o/RXD
—LL| p3.1/1XD
p12) 53 20NT0
p13 B3°3/INTI
p14} 53 4/T0
D—13Ì P3.5/T1
—18' P3.6ANR
d— 1“ P3.7/RD
n—‡8}XTAL2
TẤT XTALT
GND

VCC 40
PO.0/ADG
POV/AD Peo
PO.2/ADF
PO 3/ADG
P0.4/AD4-22-g
P0 5/ADđ+-sg
PO.6/ADQ
PO.7/ADP
EAMPRR ao
ALE/PROd-si-n
PSENL2—n
P27/A13 22H
P2 6/A14- 2a
P2 5/A14 20-0
P2 4/A14-22—0
P23/A1+ 20

P2 2/A1đ 2-0
P2.1/A4-220

P2.0/A8 “Ta

AT89C51
Hinh 1.2

SVTH :Nguyén Phat Dat


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP

Il. CHUC NANG CUA CAC CHAN:
1.Cac Port :
> Port 0

Bao gồm các chân từ 32 đến 39 ( P0.0 + P0.7 ). Đây là Port có hai chức năng :

- Sử dụng bộ nhớ nội: là Port ƯO thông dụng, dùng trong các thiết kế cỡ nhỏ (

không dùng bộ nhớ mở rộng ) .

- Sử dụng bộ nhớ ngoài: là Bus phân kênh Address / Data Bus đối với thiết kế lớn .

Chú ý: khi thiết kế Port 0 thì phải có điện trở kéo lên .

> Port 1

Đây là Port /O trên các chân 1 + 8 ( P1.0 + P1.7 ) . Port này chỉ có một chức năng

duy nhất là dùng để giao tiếp LO. Đối với „P8032 / uP8052 còn sử dụng P1.0 như ngõ

vào điều khiển Timer 2 .
> Port 2

Đây là Port có cơng dụng kép trên các chân 21 + 28 ( P2.0 + P2.7 ), được dùng như

các đường xuất nhập là Bytes cao của Bus địa chỉ đối với các thiết kế dùng bộ nhớ mở
rong .

> Port 3
Đây là Port có công dụng kép trên các chân 10 + 17. Các chân của Port này có

nhiề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 8951
như bảng sau :

Bit
P20 |

Tén
RXD

Chức năng chuyển đổi
Dữ liệu nhận cho Port nối tiếp

P3.2 |

INTO


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

P31 |
P3.3
P3.4
P3.5

JNTI
T0
Tl

P3.7

RD

P3.6

Dữ liệu phát cho Port nối tiếp

TXD

WR

Ngõ vào ngắt ngồi Í
Ngõ vào của Timet / Counter 0
Ngõ vào của Timet / Counter 1

| Tín hiệu ghi dữ liệu lên bộ nhớ ngồi
Tín hiệu đọc bộ nhớ dữ liệu ngồi


2. Các ngõ tín hiệu điều khiển

> Ngõ tín hiệu PSEN ( Program Store Enable )
PSEN

là tín hiệu ngõ ra ở chân 29. Nó là tín hiệu điều khiển cho phép bộ nhớ

chương trình mở rộng, thường được nối đến chân OE ( Output Enable ) cia EPROM dé
cho phép đọc các byte mã lệnh.

PSEN ở mức thấp trong thời gian Microcontroller 8951 lấy lệnh. Các mã lệnh của

chương trình được đọc từ EPROM
eg

SVTH :Nguyén Phat Dat

qua Bus dữ liệu và được chốt vào thanh ghi lệnh bên

Trang 12


LUẬN VĂN TỐT NGHIỆP

GVHD :Th.S Nguyễn Thị Ngọc Anh

----—>>>>>am——=

———————TmmyTmTmmmTmrmrr———---r


trong 8951 để giải mã lệnh. Khi 8951 thực thi chương trình trong ROM
mức logic Ì.

nội thì PSEN ở

> Ngõ tín hiệu điều khiển ALE / PROG ( Address Latch Enable)
Khi 8951 truy xuất bộ nhớ bên ngồi, Port 0 có chức năng là Bus đữ liệu và Bus địa

chỉ. Do đó, phải tách các đường địa chỉ và dữ liệu. 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à đữ 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 nửa chu kỳ đầu Port 0

đóng vai trị là byte thấp của Bus địa chỉ, nên việc chốt địa chỉ là hồn tồn tự động. Sau
đó các đường Port 0 dùng để xuất / nhập dữ liệu trong nửa chu kỳ sau của bộ nhớ.

®
]
>
^
.
Các xung tín hiệu ALE có tốc độ bằng ~6 lần tần số dao động trên chip, và có thể

dùng làm tín hiệu Clock cho các phần khác của hệ thống. Ngoại trừ khi thi hành lệnh
MOVX thì một xung ALE sẽ mất. Chân ALE được dùng làm ngõ vào xung lập trình cho

‘EPROM trong 8951.


> Ngõ tín hiệu E4 / VPP ( External Access)

-Tín hiệu vào E4 ở chân 31 thường được mắc lên mức cao ( +5V ) hoặc xuống

mức thấp ( GND ).

- Nếu mắc ở mức cao thì 8951 sẽ thi hành chương trình từ ROM nội.

- Nếu ở mức thấp thì 8951 sẽ thực thi chương trình từ bộ nhớ mở rộng.

Chân #44 còn được dùng làm chân cấp nguồn 12 V khi lập trình cho EPROM trong

8951.
> Ngõ tín hiệu RST ( Reset )
Ngõ vào RŠST trên chân 9 là ngõ Reset của 8951. Khi tín hiệu này được đưa lên

mức cao ( ít nhất là hai chu kỳ máy ), các thanh ghi bên trong 8951 được tải những giá trị
thích hợp để khởi động hệ thống. Khi cấp điện, mạch tự động Reset.
> Các ngõ vào dao động XTAL1 , XTAL2
8951 có một bộ dao động trên chip. Nó thường được nối với một thạch anh giữa hai

chân 18 và 19. Tần số thạch anh thông thudng 14 12 MHz.

> Các chân nguồn

8951 vận hành với nguồn đơn +5 V. Vcc nối vào chân 40 và Vạ; ( GND ) nối vào

chân 20.


SVTH :Nguyễn Phát Đạt

l

Trang 13


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP
II. TỔ CHỨC BÊN TRONG VI ĐIỀU KHIỂN:
1. Tổ chức bộ nhớ :

FFFF
FF

00

On — Chip
Memory
0000

FFFF
CODE
Memory

DATA
Memory

Enable

via
PSEN

Enable
via RD &
WR

0000

Hinh 4.3 : External Memory

Bộ nhớ 8951 theo cấu trúc Harvard : có những vùng bộ nhớ riêng biệt cho chương

trình va đữ liệu , chúng có thể mở rộng bằng các thanh phan ngồi lên đến tối đa 64 KB

bộ nhớ chương trình và 64 KB bộ nhớ dữ liệu .

Bộ nhớ bên trong bao gồm EPROM và RAM trên chip . RAM trên chip bao gồm

nhiều thành phần : phần lưu trữ đa dụng , phần lưu trữ địa chỉ hóa từng bit, các Bank

thanh ghi chức năng đặc biệt .

Có hai đặc tính cần chú ý :
Các thanh ghi trong Port xuất nhập đã được xếp trong bộ nhớ và có thể truy xuất

trực tiếp giống 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 .


i

SVTH :Nguyén Phat Dat

ee

Trang

14


GVHD :Th.S Nguyén Thi Ngoc Anh

LUAN VAN TOT NGHIEP
>

Bảng tóm tắt các vùng nhớ 6951
Địa

Địa

chỉ

chỉ
7F

F0

PREARBRRS


RAM da dung

7F
77
6F
67
SF
57

7E
76
6E
66
5E
56

7D

29
28
27
26
25
24
23
22
21
20
1F
18

17
10
OF
08
07
00

4F

4E
46
3E
36
2E
26

4D

1E

1D

16
OE

15
0D

06


05

47

3F
37
2F
27
1F
17

OF
07

75

6D
65
5D
55

7C
74
6C
64
5C

7B
73
6B

63
5B
53


72
6A
62
SA
52

79
7
69
61
59
51

78
70
68
60
58
50

4C

4A

49


42

41

3A
32
2A
22
1A

39
31
29
21
19

48
40
38
30
28
20
18

12

11

10


0A
02

09
01

08
00

54

45

44

3D
35

3C
34
2C
24
1C

4B
43
3B
33
2B

23
1B

14

13

0C
04

0B
03

2D

25

Bank 3
Bank 2
Bank 1

Bank thanh ghi 0
( mặc định cho R0 — R7 )

RAM

Dia chi bit

byte


Dia chi bit

byte

F7 | F6| F5 | F4 | F3] F2 | Fi

E6|E5 | E4 | E3| E2 | Bl

E0

E7

E0

ACC

D0

D7 | Dó| Ds | D4 | D3| D2 | DI| D0

PSW

B8

BC|BB| BA | B9

B8

B0


B7 | Bó| B5 | B4 | B3| B2 | B1

BO

|
AA |A9
|AC|AB

A8

A8

AF |

A0

A7

A6

|A5

|A4|A3|LA2

1A
1

P3

P2


A0

99
98

Không được địa chỉ hóa bit

9F | 9E] 9D | 9C [ 9B] 9A | 99| 98

SBUF
SCON

90

97 | 96] 95 | 94 | 93| 92 | 91| 90

PI

Khơng được địa chỉ hóa bít
Khơng được địa chỉ hóa bịt
Khơng được địa chỉ hóa bít

THỊ

8D
8C
8B
8A
89

88
87
83
82
81
80

THO

Khơng được địa chỉ hóa bit

TLO
TMOD
TCON
PCON

Khơng được địa chỉ hóa bịt

DPH

Khơng được địa chỉ hóa bịt
Khơng được địa chỉ hóa bịt

§F |8E| 8D | 8C |8B] 8A | 89

88

DPL
SP


Không được địa chỉ hóa bit

Khơng được địa chỉ hóa bịt

87 | 86| 85 | 84 | 83| 82 | 81|80

PO

Các thanh ghi chức năng đặc biệt
m

———>

SVTH :Nguyễn Phát Đạt

FO

Trang

15


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP
Chi tiết về RAM nội trên chịp :

- Các Bank thanh ghi ( 00H + 1FH ).

- RAM địa chỉ hóa từng bịt ( 20H + 2FH ).


- RAM da dung ( 30H + 7FH ).
- CAc thanh ghi chifc nang dac biét ( 80H + FFH) .
> RAM da dung

Moi dia chỉ trong vùng RAM đa dụng đều có thể truy xuất tự do, dùng kiểu truy

xuất địa chỉ trực tiếp hay gián tiếp .
32
Trong bảng tóm tắt trên, 80 bytes đa dụng chiếm các địa chỉ từ 30H đến 7FH,

tự ( mặc dù các địa
bytes bên dưới từ 00H đến 1FH cũng có thể dùng với mục đích tương

chỉ này đã có mục đích khác ) .

> RAM có thể truy xuất từng bit

byte có địa chỉ
8951 chứa 210 bit được địa chỉ hóa, trong đó có 128 bịt có chứa các

biệt .
từ 20H đến 2FH và các bit còn lại chứa trong nhóm thanh ghi có chức năng đặc

Ý tưởng truy xuất từng bit bằng

phẩn

mềm


là các đặc tính mạnh

của

một lệnh đơn. Đa số
microcontroller xử lý chung. Các bịt có thé dat, x6a, AND, OR, ... với
được mục đích
các microcontroller xử lý đòi hỏi một chuỗi lệnh đọc - sửa - ghi để đạt

tương tự . Ngoài ra, các Port cũng có thể truy xuất được từng bit.

128 bit truy xuất từng bit này cũng có thể truy xuất như các byte hoặc như các bit

phụ thuộc vào lệnh được dùng .
>

Các Bank thanh ghỉ
Bộ lénh 8951 hỗ
32 bytes thấp của bộ nhớ nội được dành cho các Bank thanh ghi.

hệ thống, các
trợ 8 thanh ghi có tên là RO, RI,..., R7 và theo mặc định sau khi Reset

thanh ghi này có địa chi là OOH, 01H, ..., 07H.
các
Các lệnh dùng cho các thanh ghi R0 đến R7 sẽ ngắn hơn và nhanh hơn so với

lệnh có chức năng tương ứng dùng kiểu địa chỉ trực tiếp. Nếu các dữ liệu được dùng
thường xuyên thì nên dùng một rong các thanh ghi nay.


được truy
Do có 4 Bank thanh ghi, nên tại một thời điểm chỉ có một Bank thanh ghi

ta
xuất bởi các thanh ghi R0 đến R7. Để chuyển đổi việc truy xuất các Bank thanh ghi,
phải thay đổi các bit chọn Bank trong thanh ghi trạng thái .
> Các thanh ghỉ có chức năng đặc biệt

Các thanh ghi nội của 8951 được truy xuất ngầm định bởi bộ lệnh .

RAM
Các thanh ghi trong 8951 đã định dạng được xem như là một phần của

trên


chip. Vì vậy, mỗi thanh ghi sẽ có một địa chỉ ( ngoại trừ thanh ghi bộ đếm chương trình

đến R7,
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ư R0
) ở vùng
8951 có 21 thanh ghi có chức năng đặc biệt ( SFR : Special Function Register
trên của RAM nội từ địa chỉ S0H đến FFH .

thanh
Lưu ý :tất cả 128 địa chỉ từ 80H đến FFH khơng được định nghĩa, chỉ có 21

ghi có chức năng đặc biệt SFR có thể địa chỉ hóa từng bít hoặc từng byte .
SVTH :Nguyễn Phát Đạt


Trang

16


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP

> Thanh chi trang thái chương trinh PSW( Program Status Word ):

Bit

|

|

|

psw.7|
|

psw.6|
PSW.5|

|

Dia chi

Chức năng


CY |

D7H

Cờ nhớ

F0

D5H

Ky
hiệu

AC

PSW.4|

RSI

PSW.3 |}

RSO

D6H

Cờ nhớ phụ

D4H


Register Bank Select 1

D3H

Cờ 0

Register Bank Select 0
00 = Bank 0 ; address 00H +
07H

01 = Bank 1 ; address 08H +
0FH
10 = Bank 2 ; address 10H +
17H

11 = Bank 3 ; address 18H +
1FH
PSW.2

OV

D2H

Cờ tràn

PSW.1

-

DIH


Dự trữ ( Reserved )

PSW.0

P

DOH

Cd Parity chấn

Trong đó :

xem như
CY : cờ nhớ thường dùng cho các lệnh số học. Ngồi ra, nó cịn được

thanh ghi 1 bịt cho các lệnh luận lý thi hành trên bịt.
C =1: có mượn ( đối với phép trừ ); có tràn ( đối với phép cộng ) .

C =0: khơng có mượn ( đối với phép trừ ); khơng có tràn ( đối với phép cộng) .

cờ AC
AC ( Auxiliary Carry Flag ): cờ nhớ phụ được sử dụng khi cộng các số BCD,

được set nếu kết quả 4 bit thấp nằm trong phạm vi điều khiển 0AH + 0FH .

F0 ( Flag 0 ): cờ đa dụng được đùng cho các ứng dụng của người dùng .

Các bit chọn Bank thanh ghi truy xuất :


|

- RS0 và RS1 quyết định dãy thanh ghi tích cực. Chúng được xố sau khi reset hệ

thống và được thay đổi bởi phần mềm khi cần thiết .

là Bank
- Tùy theo RS1 RSO =00, 01, 10, 11 sẽ được chọn Bank tích cực tương ứng

0, Bank 1, Bank 2, Bank 3 .

SVTH :Nguyễn Phát Đạt

Trang

17


LUẬN VĂN TỐT NGHIỆP
OV

GVHD :Th.S Nguyễn Thị Ngọc Anh

trừ nếu có sự
( Overlow flag ): cờ tràn được set sau một hoạt động cộng hoặc

kiểm tra
trần toán học. Khi các số có dấu được cộng hoặc trừ với nhau, phần mềm có thể
khơng
bit này để xác định xem kết quả có nằm trong tầm xác định hay khơng ? Khi các số


hơn — 128 thì
dấu được cộng thì bit OV được bổ qua. Các kết quả lớn hơn +127 hoặc nhỏ

bit OV sẽ là 1.

lập
P ( Evev Parity Flag ) :bit tự động được Set hay Clear ở mỗi chu kỳ máy để
luôn
Parity chấn với thanh ghi A. Việc đếm các bit 1 trong thanh ghi A cộng với bịt Parity

ln là số chắn .

Ví dụ : Với chuỗi 10100011 thì P= 1.

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 ghỉ A (ACC) : là thanh ghi tích ở địa chỉ EOH, được địa chỉ hóa từng bịt
> Thanh ghi B: là thanh ghỉ đệm đa dụng ở địa chỉ F0H, được địa chỉ hóa từng bịt .
Nó được dùng cùng với thanh ghi A trong các phép toán nhân, chia .

- Đối với phép nhân: lệnh MUL AB sau khi được thi hành, sẽ trả về kết quả 16 bịt

với byte cao đặt vào A ( 8 bít ), cịn byte thấp thì đặt vào B ( 8 bít ) .

- Đối với phép chia: lệnh DIV AB sau khi được thi hành, sẽ trả về kết quả với

thương số đặt vào A (8


bit ), cịn số dư thì đặt vào B ( 8 bít ).

chỉ 81H. Nó
> Con trỏ ngăn xếp SP ( Stack Poirter ): là một thanh ghi 8 bit ở địa

chứa địa chỉ của byte dữ liệu hiện hành trên đỉnh ngăn xếp . Các lệnh trên ngăn xếp bao

( POP )
gồm các lệnh cất dữ liệu vào ngăn xếp ( PUSH ), và lấy dữ liệu ra khỏi ngăn xếp
ra khỏi
. Lệnh cất đữ 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

ngăn xếp sẽ làm giảm SP. Ngăn xếp được lưu 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 8951 .
đùng:

- Để khởi động SP với ngăn xếp bắt đầu tại địa chỉ 60H, các lệnh sau đây được
MOV SP,

#5F

- Với lệnh trên thì ngăn xếp của 8951 chi c6 32 byte vi địa chỉ cao nhất của RAM
byte
trên chip là 7FH. Sở đĩ giá trị 5FH được nạp vào SP ví SP tăng lên 60H trước khi cất
dữ liệu .
- Khi Reset 8951, 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ỉ 08H. Nếu phần mềm ứng dụng khơng khởi động SP
RAM
một giá trị mới thì bank thanh ghi 1 có thể cả 2 và 3 sẽ khơng dùng được vì vùng


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
a

SVTH :Nguyễn Phát Đạt

Trang 18


LUẬN VĂN TỐT NGHIỆP

————

GVHD :Th.S Nguyễn Thị Ngọc Anh

TT TTmymmTTETETTTTEEmmm>———>>—>n--nennm

trình con ( ACALL, LCALL ) và các lệnh trở về ( RET, RETD để 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 DPTR ( Data Poiuer ): được dùng để truy xuất bộ nhớ ngoài .

DPTR là một thanh ghi 16 bit và được phân ra ở các địa chỉ 82H ( DPL: byte thấp ) và
83H ( DPH : byte cao ). Ba lệnh sau đây ghi 55H vào RAM ngoài ở địa chi 1000H :
MOV A, #55H
MOV DPTR, #1000H

MOV @DPTR, A
Lệnh đầu tiên sử dụng kiểu định địa chỉ tức thời để nạp hằng dữ liệu 55H vào

thanh chứa A. Lệnh thứ hai cũng sử dụng kiểu định địa chỉ tức thời, nạp hằng địa chỉ 16bit 1000H cho con chỏ dữ liệu DPTR. Lệnh thứ ba sử dụng kiểu định địa chỉ gián tiếp di

chuyển giá trị 55H chứa trong thanh ghi A đến RAM ngoài tại địa chỉ chứa trong DPTR(
1000H ).

> Céc thanh

ghi Port ( Port Register ): gsm b6n thanh ghi dugc dia chi hóa từng bịt :

- PO 6 dia chi 80H .
- Pl ở địa chỉ 90H.

- P2 ở địa chỉ A0H.
- P3 ở địa chỉ BOH .
> Cac thanh ghi Timer ( Timer Register ): 8951 có hai bộ Timer / Counter 16 bit

dùng cho việc định thời hay đếm sự kiện .

- Timer 0 : 8AH ( TLO: byte thap ) va 8CH ( THO).

- Timer 1 : 8BH ( TLI : byte thấp ) và 8DH ( THỊ ).

Việc vận hành Timer được Set bởi thanh ghi khởi động TMOD ( 89H ) và thanh ghi
điều khiển TCON ( 88H ). Chỉ có thanh ghi TCON được địa chỉ hóa từng bịt .

> Các thanh


ghỉ Port nối tiếp (_ Serial Port Register ): 8951

chứa một Port nối tiếp

để trao đổi thông tin với các thiết bị viễn thông hoặc các IC giao tiếp nối tiếp. Một thanh
ghi đệm dữ liệu nối tiếp SBUF ( 99H ) sẽ giữ cả hai dữ liệu truyền và đữ liệu nhập . Khi

truyền đữ liệu thì ghi lên SBUF, khi nhận dữ liệu thì đọc SBUF. Các mode vận hành khác

nhau được lập trình qua thanh ghi điều khiển Port nối tiếp ( SCON ) được địa chỉ hóa từng

bit 6 dia chi 98H .

> Các thanh ghi ngắt ( Ierrupt Register) : 8951 có 5 nguồn ngắt, trong đó có hai
- mức ưu tiên . Các ngất bị cấm sau khi Reset hệ thống và sẽ cho phép ngắt bởi thanh ghỉ
IE ( A8H ) , cdc thanh ghi này được địa chỉ hóa .

SVTH :Nguyễn Phát Đạt

Trang

19


Nguyễn Thị Ngọc Anh
GVHD :Th.Seee

LUẬN VĂN TỐT NGHIỆP

> Thanh ghi diéu khién nguon PCON ( Power Control Register) :

Thanh ghi PCON ( 87H ) chứa nhiều bit điều khiển được tóm tắt như sau :

Bit]



Ý nghĩa

hiệu

7 | SMOD |

6
5
4
3

GEFl

2

GFO

1

PD

0 |

IDL


Bit tăng tốc độ Baud , nế được Set thì tốc độ Baud tăng

gấp đôi trong các mode 1, 2, 3
Không
Không
Không
Bit cd

định nghĩa
định nghĩa
định nghĩa
đa năng Í

Bit cd da nang 0

| Set để khởi động mode giảm công suất ( Power Down ) ,
chỉ thoát khi Reset hệ thống

Set để khởi động mode chờ ( IDLE ) và thoát khi ngắt
mach hoac reset

Các bit điều khiể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 thi hành trong sự biên dịch của CMOS .

2. Bộ nhớ ngoài ( external memory ) :
AT 8951 có khả năng mở rộng bộ nhớ đến 64K byte bộ nhớ chương trình và 64K

byte bộ nhớ đữ liệu ngồi. Do đó có thể dùng thêm RAM và ROM nếu cần .

Khi dùng bộ nhớ ngoài, Port0 khơng cịn chức năng I/O nữa . Nó được kết hợp giữa

bus địa chỉ ( A0 — A7 ) và bus dữ liệu ( D0 ~- D7 ) với tín hiệu ALE để chốt byte của bus

địa chỉ khi bắt đầu mỗi chu kỳ bộ nhớ. Port được cho là byte cao của bus địa chỉ
> Truy Xuất bô nhớ chương trình ngồi :

_ Bộ nhớ chương trình ngồi là bộ nhớ ROM được cho phép của tín hiệu PSEN. Sự

kết nối phần cứng của bộ nhớ EPROM như sau :

SVTH :Nguyễn Phát Đạt

Trang 20


GVHD :Th.S Nguyễn Thị Ngọc Anh

LUẬN VĂN TỐT NGHIỆP

a

l7

Port 0).
!

EA

Ni


`_D0

"

|

Đ

8951

24HC373
D

i
:

ALE

:Ð7



Q

À.


A0 +A7


G

EPROM.

A8 +A12



Port 2 |

«| OE

PSENb_——

-Trong một chu kỳ máy tiêu biểu, tín hiệu ALE tích 2 lần, Lần thứ nhất cho phép
74HC373 mở cổng chốt địa chỉ byte thấp, khi ALE xuống 0 thì byte thấp và byte cao cua
bộ đếm chương 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ở lại thì port0 đã có dữ liệu là Opcode. ALE tích cực lần thứ hai được giải thích

tương tự và byte được đọc từ bộ nhớ chương trình. Nếu lệnh đang hiện hành là lệnh 1 byte
thì CPU chỉ đọc Opcode, còn byte thứ hai bỏ di .
> Truy xuất bộ nhớ dữ liêu ngoài ( Accessig External Data Memory ) :

- Bộ nhớ đữ liệu ngoà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à WR. 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



dùng bộ

đệm

dif liéu

(DPTR), R0 hoặc R1 như là một thanh ghi địa chỉ.
- Các RAM có thể giao tiếp với 8951 tương tự cáhc thức như EPROM

16 bit

ngoại trừ

chân RD của 8951 nối với chân OE ( Output Enable ) của RAM và chân WR của 8951 nối
với chân WE
EPROM .

> Su

của RAM.


Sự nối các bus địa chỉ và dữ liệu tương tự như cách nối của

giải mã địa chỉ (Address Decodin

- Sự giải mã địa chỉ là một yêu cầu tất yếu để chọn EPROM, RAM,.....Sự giải mã

địa chỉ đối với 8951 để chọn các vùng nhớ ngoài như các vi điều khiển .Nếu các con
EPROM hoặc RAM 8K được dùng thì các bus địa chỉ phải d8ược giải mã để chọn các IC
nhớ nằm trong phạm vi giới hạn 8K: 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 chọn chip CS (Chip Selet) trên những IC nhớ EPROM,RAM,...Hình

sau đây cho phép kết nối nhiều EPROM và RAM.

THỨ VIỆN.
sé luca

eas

|



×