Tải bản đầy đủ (.doc) (62 trang)

Đồ án vđk chạy chữ HAPPY NEW YEAR

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 (561.53 KB, 62 trang )

Đồ án học phần III

-1-

GVHD

: Hoàng

Thị Phơng

PHN M U
Ngy nay, cựng vi s phỏt trin ca khoa hc cụng ngh, cỏc b vi iu
khin ang cú ng dng ngy cng rng rói v thõm nhp ngy cng nhiu
trong cỏc lnh vc k thut v i sng xó hi. Hu ht cỏc thit b k thut t
phc tp cho n n gin nh thit b iu khin t ng, thit b vn phũng
cho n cỏc thit b trong gia ỡnh u cú dựng cỏc b vi iu khin, nghiờn cu
ng dng cỏc b vi iu khin ang ngy cng tng hin nay.
Xut phỏt t thc t ú, mc ớch ca ỏn l mun tp trung gii thiu
nhng kin thc c bn nht v cu trỳc v lp trỡnh h vi iu khin. ỏn c
bit chỳ trng gii thiu phn ng dng bao gm t chc cỏc h thc tin v
phng phỏp lp trỡnh cho cỏc h vi iu khin ú.
ỏn ny c thc hin da trờn cỏc ti liu ó c B mụn T ng v
K thut tớnh, Khoa K thut iu khin n hnh, bao gm cu trỳc mỏy tớnh,
cu trỳc v lp trỡnh cỏc h x lý tớn hiu s, nay l cu trỳc v lp trỡnh cỏc h
vi iu khin.
Di õy em xin trỡnh by ton b ni dung ỏn hc phn 3 ng dng vi
iu khin thit k mch qung cỏo dựng led n. hiu sõu hn v vi iu
khin , trong thuyt minh ny em trỡnh by cỏc vn sau:
Chng I:Dn nhp.
Chng II:Tng quan v vi iu khin.
Chng III:Kho sỏt vi iu khin AT89C51.


Chng IV:Thit k v thi cụng.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-2-

GVHD

: Hoàng

Thị Phơng

PHN NI DUNG
CHNG I : DN NHP
I. T VN :
Ngy nay vi s phỏt trin ca cụng nghip vi in t, k thut s cỏc h
thng iu khin dn dn c t ng hoỏ .Con ngi ngy cng tỡm tũi v
phỏt minh ra nhng sn phm nhm phc v v lm phong phỳ i sng, mt
trong nhng sỏng to ú l bit dựng nhng h vi x lý vit nhng chng
trỡnh qung cỏo mang tớnh trớ tu cao thay cho vic th hin ngụn ng v nhng
bng thụng bỏo vit tay.
Vn dng kin thc ó hc da trờn c s ti c giao em thit k mch
qung cỏo ch HAPPY NEW YEAR dựng led n hin th .
II. GII HN TI:
Vi thi gian thc hin ti v trỡnh chuyờn mụn cú gii hn nờn bn

thõn c gng mi gii quyt c mt s vn sau:
1. Thit k mch qung cỏo chy ch HAPPY NEW YEAR dựng led n hin th
2. Vit chng trỡnh phn mm ỏp ng theo yờu cu mong mun
3. Lm ra sn phm thc t
III. MC CH NGHIấN CU:
Trc ht vic thc hin ti l nhm kt thỳc mụn hc v l iu kin
ra
trng ngoi ra cũn mt s mc ớch sau:
Khi nghiờn cu thc hin ti chỳng em mun phỏt huy nhng thnh
qu ng dng ca vi iu khin nhm to ra nhng sn phm, thit b tiờn
tin v t hiu qu sn xut cao hn.
Cú th lm ti liu tham kho cho nhng sinh viờn khoỏ sau,giỳp h hiu
hn v nhng ng dng ca vi iu khin.
Ngoi ra quỏ trỡnh nghiờn cu thc hin ti l c hi chỳng em t
kim tra li nhng kin thc ó c hc trng, kh nng gii quyt
vn theo yờu cu t ra .
SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-3-

GVHD

: Hoàng

Thị Phơng


CHNG II :TNG QUAN V VI IU KHIN
I . KHI QUT V VI IU KHIN
Vi iu khin l mt IC lp trỡnh, vỡ vy Vi iu khin cn c lp trỡnh
trc khi s dng. Mi phn cng nht nh phi cú chng trỡnh hp kốm theo,
do ú trc khi vit chng trỡnh ũi hi ngi vit phi nm bt c cu to
phn cng v cỏc yờu cu m mch in cn thc hin.
Chng trỡnh l tp hp cỏc lnh c t chc theo mt trỡnh t hp lý
gii quyt cỏc yờu cu ca ngi lp trỡnh.Tp hp tt c cỏc lnh gi l tp
lnh. H Vi iu khin MSC-51 u cú chung mt lnh, cỏc Vi iu khin c
ci tin sau ny thng ớt thay i hoc m rng tp lnh m chỳ trng phỏt trin
phn cng
Lnh ca Vi iu khin l cỏc s nh phõn 8 bit . Cỏc lnh mang mó
00000000b n 11111111b. Cỏc mó lnh ny c a vo lu tr trong ROM,
khi thc hin chng trỡnh Vi iu khin c cỏc mó lnh ny, gii mó, v thc
hin lnh
Vi lnh ca Vi iu khin cú dng s nh phõn quỏ di v khú nh, hn na
vic g li khi chng trỡnh phỏt sinh li phc tp v khú khn. Khú khn ny
c gii quyt vi s h tr ca mỏy vi tớnh, ngi vit chng trỡnh cú th
vit chng trỡnh cho vi iu khin bng cỏc ngụn ng lp trỡnh cp cao, sau khi
vic vit chng trỡnh c hon tt, cỏc trỡnh biờn dch s chuyn cỏc lnh cp
cao thnh mó mỏy mt cỏch t ng. Cỏc mó mỏy ny sau ú c a (np)
vo b nh ROM ca Vi iu khin, Vi iu khin s tỡm n c cỏc lnh t
ROM thc hin chng trỡnh . Bn thõn mỏy tớnh khụng th thc hin cỏc mó

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A



Đồ án học phần III

-4-

GVHD

: Hoàng

Thị Phơng

mỏy ny vỡ chỳng khụng phự hp vi phn cng mỏy tớnh, nun thc hin phi
cú cỏc chng trỡnh mụ phng dnh riờng.
Chng trỡnh cho Vi iu khin cú th vit bng C++,C,Visual Basic, hoc
bng cỏc ngụn ng cp cao khỏc. Tuy nhiờn hp ng Assembly c a s
ngi dựng Vi iu khin s dng lp trỡnh, vi lý do ny chỳng ta chn
Assembly vit chng trng trỡnh cho Vi iu khin. Assembly l mt ngụn
ng cp thp, trong ú mi cõu lnh chng trỡnh tng ng vi mt ch lnh
m b x lý cú th thc hin c. u im ca hp ng Assembly l: nh gn,
chim ớt dung lng b nh, hot ng vi tc nhanh, v nú cú hiu sut tt
hn so vi cỏc chng trỡnh vit bng ngụn ng bc cao khỏc.
II. H VI IU KHIN 8051
2.1. Cu trỳc h vi iu khin.
CPU

CU
INPU
T

Interface


ALU

REGIS
PC
TERS

IR

OUTP
Interface

UT

RO

Program Memory

M
RAM

Data Memory

Hỡnh2.1. Khỏi quỏt chung v h vk

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III


-5-

GVHD

: Hoàng

Thị Phơng

2.1.1. CPU(Central Processing Unit):
B vi x lý (VXL) l thut ng c bt ngun t tờn gi ting Anh l
MICROPROCESSOR (MP) hoc CENTRAL PROCESING UNIT (CPU). Trong
mi h VXL, CPU luụn l thnh phn quan trng nht, nú qun lý tt c cỏc
hot ng ca h VXL v thc hin cỏc thao tỏc trờn d liu. Hu ht cỏc CPU
ch bao gm mt tp cỏc mch Logic thc hin liờn tc 2 thao tỏc: tỡm np
lnh v thc thi lnh. CPU cú kh nng hiu v thc thi cỏc lnh da trờn mt
tp cỏc mó nh phõn, trong ú mi mt mó thc hin mt thao tỏc no ú. Cỏc
lnh ny bao gm:
- Nhúm lnh di chuyn d liu (Mov,...).
- Nhúm lnh s hc (Mul, Div, Add, Subb,...).
- Nhúm lnh Logic (ANL, ORL, CPL, XRL,...).
- Nhúm lnh r nhỏnh chng trỡnh (Jmp, Call, ...).
- Nhúm lnh iu khin bin Logic (Setb, Clr,...)....
Cỏc nhúm lnh trờn c biu th bi 1 tp cỏc mó nh phõn v c gi l
tp lnh.
Mi b VXL (CPU) thng bao gm:
- Cỏc thanh ghi ni (Registers): cú nhim v lu gi tm thi cỏc thụng
tin, d liu.
- n v s hc logic (Arithmetic Logic Unit - ALU): Thc hin cỏc thao
tỏc trờn cỏc thụng tin hay d liu ó c lu gi tm thi trong thanh ghi

ni.
- n v iu khin (Control Unit - CU): Cú nhim v gii mó lnh v iu
khin vic thc hin cỏc thao tỏc, ng thi thit lp cỏc hot ng cn
thit thc hin cỏc thao tỏc ú.
- Thanh ghi lnh (Instruction Register - IR): Lu gi mó nh phõn ca lnh
c thc thi.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-6-

GVHD

: Hoàng

Thị Phơng

- B m chng trỡnh (Program Counter - PC): Lu gi i ch ca lnh
k tip trong b nh cn c thc thi.
2.1.2. Quỏ trỡnh tỡm np lnh v thc thi lnh ca CPU:

+ Vic tỡm np mt lnh t RAM h thng l mt trong nhng thao tỏc c
bn nht m CPU thc hin. Quỏ trỡnh tỡm np c thc hin theo cỏc bc
sau:
Ni dung ca PC c gi lờn kờnh a ch.

Tớn hiu iu khin READ c xỏc lp (chuyn sang trng thỏi
tớch cc).
D liu (mó lnh) c c t RAM v gi i trờn kờnh d liu.
Mó lnh c cht vo thanh ghi lnh bờn trong CPU.
Ni dung ca PC c tng lờn chun b tỡm np lnh k tip t
b nh.
Address
Bus

CPU

P
C

n

IR opcod
e

Data
Bus

RAM

n+
2
CLO
opco n+
RE
de

CK
1
AD
n
nHỡnh 2.2. Hot ng ca Bus cho chu k tỡm np1lnh
Control
Bus

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-7-

GVHD

: Hoàng

Thị Phơng

+ Giai on thc thi lnh bao gm vic gii mó cỏc mó lnh v to ra cỏc
tớn hiu iu khin vic xut nhp gia cỏc thanh ghi ni vi ALU, ng
thi thụng bỏo ALU thc hin thao tỏc ó c xỏc nh.
2.2. B NH TRUNG TM CA H VI IU KHIN:
B nh trung tõm l b phn rt quan trng i vi mi h VXL, nú l tp
hp cỏc thanh ghi thụng tin vi s lng ln. Chc nng c bn ca b nh l
trao i v lu tr thụng tin.

2.2.1. B nh ch c (Read Only Memory - ROM):

a. ROM c bn:
ROM dựng lu tr chng trỡnh iu hnh (Monitor) ca h VXL.
Chng trỡnh ny s quy nh mi hot ng ca h VXL. B VXL s cn c
vo cỏc lnh cha trong chng trỡnh iu khin h VXL thc hin cỏc chc
nng, nhim v c n nh trong lnh. Núi cỏch khỏc, h VXL s thc hin
mt cỏch trung thc thut toỏn m ngi thit k phn mm ó xõy dng v ci
t vo ROM ca h.
Ngoi ra, ROM trong h VXL cũn dựng lu tr cỏc bng biu, tham s
ca h thng m trong quỏ trỡnh hot ng khụng c thay i nh: bng a
ch cng giao tip, cỏc bng tra cu s liu, cỏc b mó cn s dng trong h.
ROM cng c qun lý theo phng thc ma trn im, nú cú nhiu
chng loi khỏc nhau: ROM, PROM, EPROM, EEPROM,
ROM l b nh c nh cú cu trỳc n gin nht. Ni dung ca nú do
nh sn xut ch to, ngi s dng khụng th thay i ni dung ny c na.

b. PROM (Programmable ROM - ROM cú kh nng lp trỡnh
c):

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-8-

GVHD


: Hoàng

Thị Phơng

c im chung: Ni dung ca PROM do nh sn xut hoc ngi thit
k h VXL np vo nhng ch oc 1 ln. Sau khi np xong ni dung ny khụng
th thay i c na.

c. EPROM (Eraseable PROM ROM np/xoỏ c nhiu ln):
EPROM l b nh c nh cú cu trỳc c bit. Ni dung ca nú do nh
sn xut hay ngi thit k h VXL np vo v cú th np/xoỏ nhiu ln. Ngi
ta to ra 1 bit thụng tin trong EPROM da trờn nguyờn tc lm vic ca
Transistor trng cú cc ca cỏch ly kờnh cm ng (MOSFET kờnh cm ng).

d. EEPROM (Electrical EPROM ROM cú kh nng lp trỡnh
v xoỏ c bng in).
2.2.2. B nh truy cp ngu nhiờn (Random Acess Memory - RAM):
RAM l b nh cú th ghi v c c, thụng tin trờn RAM s b mt khi
mt ngun cung cp. Theo phng thc lu tr thụng tin, RAM c chia thnh
2 loi c bn: RAM tnh v RAM ng.
RAM tnh: Cú th lu tr thụng tin lõu tu ý min l c cung cp in
nng - tt c cỏc loi phn t nh bng Trig u thuc loi ny.
RAM ng: Ch lu c thụng tin trong 1 khong thi gian nht nh.
Mun kộo di thi gian ny cn cú phng thc lm ti li thụng tin trong
phn t nh RAM. Phn t nh ca RAM ng n gin nht l mt linh kin
in dung - t din. S dng RAM ng cú phc tp nhng v cu trỳc nh li
n gin, tiờu tn ớt nng lng, tng mt b nh v ụi khi cũn lm tng c
tc lm vic ca b nh.
Cu trỳc mch in ca cỏc b nh RAM rt a dng c v cụng ngh ch

to chỳng (TTL, MOS, ) v cỏc yờu cu s dng chỳng nh cỏc yờu cu v
ghộp ni, tc lm vic, mt linh kin v dung lng cn thit

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

-9-

GVHD

: Hoàng

Thị Phơng

2.2.3. Cỏc thit b xut/nhp:
Cỏc thit b xut/nhp hay cỏc thit b ngoi vi kt hp vi cỏc mch giao
tip (Interface) s to ra cỏc ng truyn thụng gia h VXL vi th gii bờn
ngoi. Tuy nhiờn trao i thụng tin gia h VXL vi cỏc thit b ngoi vi, cn
cú cỏc phng phỏp iu khin thớch hp nh:
- iu khin vo/ra bng chng trỡnh.
- iu khin vo/ra bng ngt.
- iu khin vo/ra bng phn cng.
Ni dung ny s c xột k cỏc chng sau.
2.2.4. Cu trỳc kờnh chung ca h VK:
Kờnh (Bus) l tp hp cỏc ng thụng tin cú cựng mc ớch. CPU cú th
giao tip c vi cỏc b phn khỏc trong h VXL theo yờu cu, mi h VXL

cn s dng 3 kờnh nh sau:
- Kờnh a ch (Adress Bus).
- Kờnh d liu (Data Bus).
- Kờnh iu khin (Control Bus).
thc hin thao tỏc c hoc ghi, CPU xỏc nh rừ v trớ (a ch) ca d
liu (hoc lnh) bng cỏch t a ch ú lờn kờnh a ch, sau ú kớch hot tớn
hiu Read hoc Write trờn kờnh iu khin ch ra thao tỏc l c hay ghi.
Nu kớch hot tớn hiu iu khin Read, thao tỏc c ly 1 byte d liu t b
nh v trớ ó xỏc nh v t byte ny lờn kờnh d liu. CPU s c d liu v
ct d liu vo 1 trong cỏc thanh ghi ni ca CPU.
Nu kớch hot tớn hiu iu khin Write, CPU s thc hin thao tỏc ghi bng
cỏch xut d liu lờn kờnh d liu. Nh vo tớn hiu iu khin, b nh nhn
bit c õy l thao tỏc ghi v lu d liu vo v trớ ó c xỏc nh.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 10 -

GVHD

:

Hoàng Thị Phơng

Kờnh d liu cho phộp trao i thụng tin gia CPU v b nh, cng nh gia

CPU vi thit b ngoi vi. Thụng thng cỏc h VXL dnh hu ht thi gian cho
vic di chuyn d liu, a s cỏc thao tỏc di chuyn d liu xy ra gia 1 thanh
ghi ca CPU vi ROM v RAM ngoi. Do ú ln ca kờnh d liu nh
hng rt ln ti hiu sut ca h VXL. Nu b nh ca h thng rt ln v
CPU cú kh nng tớnh toỏn cao, nhng vic truy xut d liu di chuyn d liu
gia b nh v CPU thụng qua kờnh d liu li b nghn thỡ hin tng nghn
c chai ny chớnh l hu qu ca rng kờnh d liu khụng ln. khc
phc hin tng ny, cn tng ng tớn hiu cho kờnh d liu.

CPU
D
A
T
E
N
B
U
S
8
Bi

Control Bus

ROM

RAM

A
D
R

E
S
S
B
U
S
16

I/O

Bi

Hỡnh 2.3. Cu trỳc kờnh chung ca h thng VXL

Nh hỡnh 1.3, kờnh d liu l kờnh 2 chiu, cũn kờnh a ch l kờnh 1
chiu. Cỏc thụng tin v a ch luụn c cung cp bi CPU, trong khi cỏc d
liu di chuyn theo c 2 hng tu thuc vo thao tỏc thc hin l c hay ghi.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 11 -

GVHD

:


Hoàng Thị Phơng

Thut ng d liu c s dng theo ngha tng quỏt: thụng tin di chuyn
trờn kờnh d liu cú th l lnh ca chng trỡnh, a ch theo sau lnh hoc d
liu c s dng bi chng trỡnh.
Kờnh iu khin l tp hp cỏc tớn hiu, mi tớn hiu cú mt vai trũ riờng
trong vic iu khin cú trt t hot ng ca h thng. Cỏc tớn hiu iu khin
c cung cp bi CPU ng b vic di chuyn thụng tin trờn cỏc kờnh a
ch v d liu. Cỏc b VXL thng cú 3 tớn hiu iu khin: Read, Write, Clock.
Tuy nhiờn tu vo yờu cu c th cng nh cu trỳc phn cng ca tng h VXL
m s lng tớn hiu iu khin cú th khỏc nhau.
Tu thuc vo tng h VK ca tng hóng sn xut khỏc
nhau m tớnh nng cng nh phm vi ng dng ca mi b
VK l khỏc nhau, v chỳng c th hin trong cỏc bng
thng kờ sau:
H VK

ROM
(bytes)

8051
8031AH
ROMLESS
8051AH
4K ROM
8051AHP 4K ROM
8751H
4K EPROM
8751BH

4K EPROM
8052
8032AH
ROMLESS
8052AH
8K ROM
8752BH
8K EPROM
80C51
80C31BH ROMLESS
80C51BH 4K ROM
80C31BHP 4K ROM
87C51
4K EPROM
8xC52/54/58
80C32
ROMLESS
80C52
8K ROM
87C52
8K EPROM
80C54
16K ROM
87C54
16K EPROM
H VK
ROM

RAM
(bytes)


Tc
(MHz)

128
128
128
128
128

12
12
12
12
12

256
256
256

12
12
12

Cỏc chõn
I/O

Timer/
Counter


Ngun
ngt

UART

32
32
32
32
32

2
2
2
2
2

1
1
1
1
1

5
5
5
5
5

3

3
3

1
1
1

6
6
6

128
128
128
128

32
32
32
32
12,16
32
12,16
32
12,16
32
12,16,20,24 32

2
2

2
2

1
1
1
1

5
5
5
5

256
256
256
256
256
RAM

12,16,20,24
12,16,20,24
12,16,20,24
12,16,20,24
12,16,20,24
Tc

3
3
3

3
3

1
1
1
1
1
UART

6
6
6
6
6

SVTH: PHM NGC HNH

32
32
32
32
32
Cỏc chõn

Timer/

Ngun

Lớp: ĐL-KTĐ1A



Đồ án học phần III

- 12 -

GVHD

:

Hoàng Thị Phơng

(bytes)
80C58
32K ROM
87C58
32K EPROM
8xL52/54/58
80L52
8K ROM
87L52
8K OTP ROM
80L54
16K ROM
16K
OTP
87L54
ROM
80L58
32K ROM

32K
OTP
87L58
ROM


(bytes)
256
256

(MHz)
I/O
12,16,20,24 32
12,16,20,24 32

Counter

ngt

3
3

1
1

6
6

256
256

256
256

12,16,20
12,16,20
12,16,20
12,16,20

32
32
32
32

3
3
3
3

1
1
1
1

6
6
6
6

256
256


12,16,20
12,16,20

32
32

3
3

1
1

6
6

Bng 2.1. Cỏc thụng s ca cỏc h VK thuc hóng Intel (MSC 51)

H VK
AT89C1051
AT89C2051
AT89C51
AT89C52
AT89C55
AT89S8252
AT89S53

B nh chng

B nh d liu


Timer

Cụng

trỡnh(Bytes)
1K Flash
2K Flash
4K Flash
8K Flash
20K Flash
8K Flash

(Bytes)
64 RAM
128 RAM
128 RAM
256 RAM
256 RAM
256 RAM + 2K

16 bit
1
2
2
3
3
3

ngh

CMOS
CMOS
CMOS
CMOS
CMOS
CMOS

12K Flash

EEPROM
256 RAM

3

CMOS

Bng 2.2. Cỏc thụng s ca cỏc h VK thuc hóng Atmel

Trong khuụn kh ti liu ny, tỏc gi s tp trung trỡnh by cu trỳc phn
cng ca h VK AT89C51 thuc hóng Atmel.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 13 -


GVHD

:

Hoàng Thị Phơng

CHNG III : KHO ST VI IU KHIN AT89C51
3.1. S KHI CU TRC KHễNG GIAN NH CA AT89C51:

External
Interrupt
s
Interru
pt
Contro
l

4K
FLASH

128
Bytes
RAM

Bus
Contro
l

4 I/O Ports


Timer 1
Timer 0

Count
er
Inputs

CPU

OSC

/WR /RD

Serial
Ports
TxD RxD

P0 P2 P1
P3
Address/D
ata

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 14 -


GVHD

:

Hoàng Thị Phơng

Hỡnh 3.1. S khi h VK AT89C51

B VK 8 bit AT89C51 hot ng tn s 12 MHz, vi b nh ROM
4Kbyte, b nh RAM 128 Byte c trỳ bờn trong v cú th m rng b nh ra
ngoi. b VK ny cũn cú 4 cng 8 bit (P0P3) vo/ ra 2 chiu giao
tip vi thit b ngoi vi. Ngoi ra, nú cũn cú:
- 2 b inh thi 16 bit (Timer 0 v Timer 1)
- Mch giao tip ni tip.
- B x lý bit (thao tỏc trờn cỏc bit riờng r).
- H thng iu khin v x lý ngt.
- Cỏc kờnh iu khin/ d liu/ a ch.
- CPU
- Cỏc thanh ghi chc nng c bit (SFR).

3.2. S CHN TN HIU CA AT89C51.
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7

RST
RXD P3.0
TXD P3.1
NT0 P3.2
NT1 P3.3
T0
P3.4
T1
P3.5
WR P3.6
RD P3.7
XTAL
SVTH: PHM NGC HNH
2
XTAL
1
GND

1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19
20

89C5
1

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

22
21

VCC
P0.0 AD0
P0.1 AD1
P0.2 AD2
P0.3 AD3
P0.4 AD4
P0.5 AD5
P0.6 AD6
P0.7 AD7
EA
ALE
PSEN
P2.7
P2.6
P2.5
P2.4
P2.3
P2.2
Lớp: ĐL-KTĐ1A
P2.1
P2.0


Đồ án học phần III

- 15 -


GVHD

:

Hoàng Thị Phơng

Hỡnh 3.2. IC AT89C51

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 16 -

GVHD

:

Hoàng Thị Phơng

3.2.1. Chc nng ca cỏc chõn:
1. Port 0
P0.0 n P0.7 cú s chõn t 32 39
Port 0 cú 2 chc nng:
- Port xut nhp d liu (P0.0 P0.7) khụng s dng nh ngoi
- Bus a ch byte thp v bus d liu a hp (AD0 AD7) cỳ s dng
b nh ngoi

* Khi Port 0 ỳng vai tr l port xut nhp d liu th phi s dng cc
in tr ko ln bn ngoi
2. Port 1
P1.0 n P1.7 cú s chõn t 1-8
Port1 cỳ 1 chc nng: Port xt nhp d liu (P1.0 P1.7) s dng hoc
khng s dng b nh ngoi.
3. Port 2
P2.0 n P2.7 cú s chõn t 21-28
Port 2 cỳ hai chc nng
- Port xut nhp d liu (P2.0 P2.7) khng s dng b nh ngoi
- Bus a ch byte cao (A8- A15) cỳ s dng b nh ngoi.
4. Port 3
P3.0 n P3.7 cú s chõn t 10 17
Port 3 cỳ hai chc nng
- Port xut nhp d liu (P3.0 P3.7) khng s dng b nh ngoi hoc
cc chc nng c bit.
- Cc tn hiu iu khin cỳ s dng b nh ngoi hoc cc chc nng
c bit.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 17 -

GVHD


:

Hoàng Thị Phơng

5. Chõn PSEN\ (Program Store Enable): cho php b nh chng trnh, chừn
s 29
Chc nng
L tn hiu cho php truy xut ( c) b nh chng trnh ( ROM)
ngoi.
L tn hiu xut, tch cc mc thp
6. Chõn ALE (Address Latch Enable): cho php cht a ch chừn s 30
Chc nng
L tn hiu cho php cht c ch thc hin vic gii a hp cho bus
a ch byte thp v bus d liu a hp (AD0- AD7)
L tn hiu xut. tch cc mc cao.
7. Chõn EA\ (External Access) truy xut ngoi, chừn s 31
Chc nng
L tn hiu cho php truy xut (s dng ) b nh chng trnh (ROM)
ngoi.
L tn hiu nhp, tch cc mc thp.
8. Chõn XTAL1, XTAL2 (Crystal) tinh th thch anh, chõn s 18 -19
Chc nng
Dng ni vi thch anh hoc mch dao ng tao xung clock bn ngoi,
cung cp tn hiu xung clock cho chip hot ng
XTAL1 Ng vo mch to xung clock trong chp
XTAL2 Ng ra mch to xung clock trong chip
9. Chõn RST (Reset) :Thit lp li, chõn s 9
Chc nng
L tn hiu cho php thit lp (t) li trng thi ban u cho h thng


SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 18 -

GVHD

:

Hoàng Thị Phơng

L tn hiu nhp, tch cc mc cao
10. Chõn Vcc, GND
Vcc. GND : ngun cp in , chừn s 40 v 20
Chc nng: Cung cp ngun in cho chip 8051 hot ng
Vcc = + 5V 10% v GND = 0V
11. Mt s chõn khỏc
- RxD: Nhn tn hiu kiu ni tip.
- TxD: Truyn tn hiu kiu ni tip.
- /INT0: Ngt ngoi 0.
- /INT1: Ngt ngoi 1.
- T0: Chừn vo 0 ca b Timer/Counter 0.
- T1: Chừn vo 1 ca b Timer/Counter 1.
- /Wr: Ghi d liu vo b nh ngoi.
- /Rd: c d liu t b nh ngoi.
- /EA/Vpp: Cho phộp On-chip truy cp b nh chng trnh ngoi khi /EA=0,

nu /EA=1 th On-chip s lm vic vi b nh chng trnh ni tr. Khi chừn
ny c cp ngun in ỏp 12V (Vpp) th On-chip m nhn chc nng np
chng trnh cho Flash bn trong nỳ.
3.2.2. Khụng gian nh ca AT89C51.
FFFF
h

Rom m rng

4kbyte rom
1000
khụng gian b
0FFF
h
nh chng
h
0000 trỡnh on chip
h
SVTH: PHM NGC HNH

7Fh

128byte ram
on chip

0000
h
Lớp: ĐL-KTĐ1A



Đồ án học phần III

- 19 -

GVHD

:

Hoàng Thị Phơng

Bng3.1:Khụng gian nh AT89C51

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 20 -

GVHD

:

Hoàng Thị Phơng

T chc b nh AT 89C51:
AT89C51Cú 128byte ram tớch hp trờn chip .Ta cú th m rng
thờm Ram ngoi lờn n 64kbyte.

7F
h
80 byte RAM bng nhỏp
30
2F
h
h
20
1F
h
h

16 byte RAM nh a
ch bớt
BANK3Ngn xp
BANK2Ngn xp
BANK 1Ngn xp
Mc nh R0 ->
BANK 0R7

00h

3.3. CHC NNG CC THNH PHN CA AT89C51:
3.3.1. Cỏc thanh ghi chc nng c bit.
SFR m nhim cỏc chc nng khỏc nhau trong On-chip. Chỳng nm
RAM bờn trong On-chip, chim vựng khụng gian nh 128 Byte c nh a
ch t 80h n FFh. Cu trỳc ca SFR bao gm cỏc chc nng th hin bng
3.2 v bng 3.3.

SVTH: PHM NGC HNH


Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 21 -

GVHD

:

Hoàng Thị Phơng

Thanh
ghi
IE
IP
PSW
TMOD
TCON
SCON
PCON
P1
P3

Ni

dung


MSB

LSB

EA

-

ET2

ES

ET1

EX1

ET0

EX0

-

-

PT2

PS

PT1


PX1

PT0

PX0

CY

AC

FO

RS1

RS0

OV

-

P

GATE

C/(/T)

M1

M0


GATE

C/(/T)

M1

M0

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

SM0

SM1

SM2


REN

TB8

RB8

TI

RI

SMOD

-

-

-

GF1

GF0

PD

IDL

T2

T2EX


/SS

MOSI

MISO

SCK

RXD

TXD

T0

T1

/WR

/RD

/INT0

/INT1

Bng 3.2. Chc nng riờng ca tng thanh ghi trong SFR

Symbol
* ACC
*B
* PSW

SP
DP0L
DP0H
* P0
* P1
Symbol
* P2
* P3
* IP
* IE
TMOD
* TCON
TH0
TL0
TH1
TL1
* SCON
SBUF
PCON

Name
Thanh ghi tớch lu
Thanh ghi B
T trng thỏi chng trỡnh
Con tr ngn xp
Byte cao ca con tr d liu 0
Byte thp ca con tr d liu 0
Cng 0
Cng 1
Name

Cng 2
Cng 3
TG iu khin ngt u tiờn
TG iu khin cho phộp ngt
iu khin kiu Timer/Counter
TG iu khin Timer/Counter
Byte cao ca Timer/Counter 0
Byte thp ca Timer/Counter 0
Byte cao ca Timer/Counter 1
Byte thp ca Timer/Counter 1
Serial Control
Serial Data Buffer
Power Control

Address
0E0h
0F0h
0D0h
81h
82h
83h
80h
90h
Address
0A0h
0B0h
0B8h
0A8h
89h
88h

8Ch
8Ah
8Dh
8Bh
98h
99h
87h

Reset Values
00000000b
00000000b
00000000b
00000111b
00000000b
00000000b
11111111b
11111111b
Reset Values
11111111b
11111111b
xxx00000b
0xx00000b
00000000b
00000000b
00000000b
00000000b
00000000b
00000000b
00000000b
indeterminate

0xxx0000b

* : cú th nh a ch bit, x: khụng nh ngha

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 22 -

GVHD

:

Hoàng Thị Phơng

Bng 3.3 a ch, ý ngha v giỏ tr ca cỏc SFR sau khi Reset

1. Thanh ghi ACC: l thanh ghi tớch lu, dựng lu tr cỏc toỏn hng v kt
qu ca phộp tớnh. Thanh ghi ACC di 8 bits. Trong cỏc tp lnh ca On-chip,
nú thng c quy c n gin l A.
2. Thanh ghi B : Thanh ghi ny c dựng khi thc hin cỏc phộp toỏn nhõn
v chia. i vi cỏc lnh khỏc, nú cú th xem nh l thanh ghi m tm thi.
Thanh ghi B di 8 bits. Nú thng c dựng chung vi thanh ghi A trong cỏc
phộp toỏn nhõn hoc chia.
3. Thanh ghi SP: Thanh ghi con tr ngn xp di 8 bit. SP cha a ch ca d
liu hin ang nh ca ngn xp. Giỏ tr ca nú c t ng tng lờn khi

thc hin lnh PUSH trc khi d liu c lu tr trong ngn xp. SP s t
ng gim xung khi thc hin lnh POP. Ngn xp cú th t bt c ni no
trong RAM on-chip, nhng sau khi khi ng li h thng thỡ con tr ngn xp
mc nh s tr ti a ch khi u l 07h, vỡ vy ngn xp s bt u t a
ch 08h. Ta cng cú th nh con tr ngn xp ti a ch mong mun bng cỏc
lnh di chuyn d liu thụng qua nh a ch tc thi.
4. Thanh ghi DPTR: Thanh ghi con tr d liu (16 bit) bao gm 1 thanh ghi
byte cao (DPH-8bit) v 1 thanh ghi byte thp (DPL-8bit). DPTR cú th c
dựng nh thanh ghi 16 bit hoc 2 thanh ghi 8 bit c lp. Thanh ghi ny c
dựng truy cp RAM ngoi.
5. Ports 0 to 3: P0, P1, P2, P3 l cỏc cht ca cỏc cng 0, 1, 2, 3 tng ng.
Mi cht gm 8 bit. Khi ghi mc logic 1 vo mt bit ca cht, thỡ chõn ra
tng ng ca cng mc logic cao. Cũn khi ghi mc logic 0 vo mi bit ca
cht thỡ chõn ra tng ng ca cng mc logic thp. Khi cỏc cng m

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III

- 23 -

GVHD

:

Hoàng Thị Phơng


nhim chc nng nh cỏc u vo thỡ trng thỏi bờn ngoi ca cỏc chõn cng
s c gi bit cht tng ng. Tt c 4 cng ca on-chip u l cng I/O
hai chiu, mi cng u cú 8 chõn ra, bờn trong mi cht bit cú b Pulluptng cng do ú nõng cao kh nng ni ghộp ca cng vi ti (cú th giao
tip vi 4 n 8 ti loi TTL).
6. Thanh ghi SBUF: m d liu ni tip gm 2 thanh ghi riờng bit, mt
thanh ghi m phỏt v mt thanh ghi m thu. Khi d liu c chuyn ti
SBUF, nú s i vo b m phỏt, v c gi y ch bin thnh dng
truyn tin ni tip. Khi d liu c truyn i t SBUF, nú s i ra t b m
thu.
7. Cỏc Thanh ghi Timer: Cỏc ụi thanh ghi (TH0, TL0), (TH1, TL1) l cỏc
thanh ghi m 16 bit tng ng vi cỏc b Timer/Counter 0 v 1.
8. Cỏc thanh ghi iu khin: Cỏc thanh ghi chc nng c bit: IP, IE,
TMOD, TCON, SCON, v PCON bao gm cỏc bit trng thỏi v iu khin i
vi h thng ngt, cỏc b Timer/Counter v cng ni tip. Chỳng s c mụ
t phn sau.
9. Thanh ghi PSW: T trng thỏi chng trỡnh dựng cha thụng tin v
trng thỏi chng trỡnh. PSW cú di 8 bit, mi bit m nhim mt chc
nng c th. Thanh ghi ny cho phộp truy cp dng mc bit.
* CY: C nh. Trong cỏc phộp toỏn s hc, nu cú nh t phộp cng bit 7
hoc cú s mn mang n bit 7 thỡ CY c t bng 1.
* AC: C nh ph (i vi mó BCD). Khi cng cỏc giỏ tr BCD, nu cú
mt s nh c to ra t bit 3 chuyn sang bit 4 thỡ AC c t bng 1. Khi
giỏ tr c cng l BCD, lnh cng phi c thc hin tip theo bi lnh DA

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


Đồ án học phần III


- 24 -

GVHD

:

Hoàng Thị Phơng

A (hiu chnh thp phõn thanh cha A) a cỏc kt qu ln hn 9 v giỏ tr
ỳng.
* F0: C 0 (Cú hiu lc vi cỏc mc ớch chung ca ngi s dng)
* RS1: Bit 1 iu khin chn bng thanh ghi.
* RS0: Bit 0 iu khin chn bng thanh ghi.
Lu ý: RS0, RS1 c t/xoỏ bng phn mm xỏc nh bng thanh
ghi ang hot ng

(Chn bng thanh ghi bng cỏch t trng thỏi cho 2

bit ny)
Bank 0
Bank 1
Bank 2
Bank 3

RS1
0
0
1
1


RS0
0
1
0
1

Bng 3.4. Chn bng thanh ghi

* OV: C trn. Khi thc hin cỏc phộp toỏn cng hoc tr m xut hin
mt trn s hc, thỡ OV c t bng 1. Khi cỏc s cú du c cng hoc
c tr, phn mm cú th kim tra OV xỏc nh xem kt qu cú nm trong
tm hay khụng. Vi phộp cng cỏc s khụng du, OV c b qua. Kt qu
ln hn +128 hoc nh hn -127 s t OV=1.
* -:

Bit dnh cho ngi s dng t nh ngha(Nu cn).

* P: C chn l. c t ng t/ xoỏ bng phn cng trong mi chu
trỡnh lnh ch th s chn hay l ca bit 1 trong thanh ghi tớch lu. S cỏc
bit 1 trong A cng vi bit P luụn luụn l s chn.
10. Thanh ghi PCON: Thanh ghi iu khin ngun.
* SMOD: Bit to tc Baud gp ụi. Nu Timer 1 c s dng to
tc baud v SMOD=1, thỡ tc Baud c tng lờn gp ụi khi cng
truyn tin ni tip c dựng bi cỏc kiu 1, 2 hoc 3.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A



Đồ án học phần III

- 25 -

GVHD

:

Hoàng Thị Phơng

* -: Khụng s dng, cỏc bit ny cú th c dựng cỏc b VXL trong
tng lai. Ngi s dng khụng c phộp t nh ngha cho cỏc bit ny.
* GF0, GF1: C dựng cho cỏc mc ớch chung (a mc ớch).
* PD: bit ngun gim. t bit ny mc tớch cc vn hnh ch
ngun gim trong AT89C51. Ch cú th ra khi ch bng Reset.
* IDL: bit chn ch ngh. t bit ny mc tớch cc vn hnh kiu
Idle (Ch khụng lm vic) trong AT89C51.
Lu ý: Nu PD v IDL cựng c kớch hot cựng 1 lỳc mc tớch cc, thỡ
PD c u tiờn thc hin trc. Ch ra khi ch bng 1 ngt hoc Reset li
h thng.
11. Thanh ghi IE: Thanh ghi cho phộp ngt
* EA: Nu EA=0, khụng cho phộp bt c ngt no hot ng. Nu EA=1,
mi ngun ngt riờng bit c phộp hoc khụng c phộp hot ng
bng cỏch t hoc xoỏ bit Enable ca nú.
* -: Khụng dựng, ngi s dng khụng nờn nh ngha cho Bit ny, bi vỡ
nú cú th c dựng cỏc b AT89 trong tng lai.
* ET2: Bit cho phộp hoc khụng cho phộp ngt b Timer 2.
* ES: Bit cho phộp hoc khụng cho phộp ngt cng ni tip (SPI v
UART).

* ET1: Bit cho phộp hoc khụng cho phộp ngt trn b Timer 1
* EX1: Bit cho phộp hoc khụng cho phộp ngt ngoi 1.
* ET0: Bit cho phộp hoc khụng cho phộp ngt trn b Timer 0
* EX0: Bit cho phộp hoc khụng cho phộp ngt ngoi 0.
12. Thanh ghi IP: Thanh ghi u tiờn ngt.
* - : Khụng dựng, ngi s dng khụng nờn ghi 1 vo cỏc Bit ny.
* PT2: Xỏc nh mc u tiờn ca ngt Timer 2.

SVTH: PHM NGC HNH

Lớp: ĐL-KTĐ1A


×