Академический Документы
Профессиональный Документы
Культура Документы
Ngaøy nay ñaïi ña soá caùc lónh vöïc saûn xuaát, ñieàu khieån, giaùm saùt, ño löôøng…ñeàu ñöôïc
trang bò heä thoáng töï ñoäng hoùa. Moät trong soá vi maïch ñöôïc söû duïng ñoù laø kyõ thuaät vi ñieàu khieån.
Nhôø tính naêng öu vieät cuûa boä vi ñieàu khieån nhö: khaû naêng laäp trình phuø hôïp vôùi thieát keá nhoû vaø
lôùn cuõng nhö giao tieáp vôùi caùc thieát bò ngoaïi vi vaø maùy tính ñaõ ñem laïi söï hoaøn haûo, ñoä chính
xaùc vaø tính meàm deûo cao thoâng qua giao tieáp giöõa ngöôøi vaø maùy.
Vi ñieàu khieån quaûn lyù vaø ñieàu khieån hoaït ñoäng cuûa heä thoáng thoâng qua phaàn meàm, nhôø
vaäy maø ta coù theå môû roäng vaø thay ñoåi hoaït ñoäng moät caùch deã daøng baèng caùch thay ñoåi moät soá
thoâng soá cuûa chöông trình. Vi ñieàu khieån hoaït ñoänh theo chöông trình ñaõ naïp saün,ñoïc caùc tín
hieäu töø beân ngoaøi ñöa vaøo sau ñoù löu tröõ vaø xöû lyù, treân cô sôû ñoù ñöa ra caùc thoâng baùo, tín hieäu
ñieàu khieån caùc thieát bò beân ngoaøi hoaït ñoäng theo ñuùng thoâng soá vaø yeâu caàu cuûa heä thoáng.
Heä thoáng ñieän töû soá söû duïng boä vi ñieàu khieån vaø maùy tính trong caùc daây chuyeàn saûn xuaát
coâng nghieäp, thöïc hieän nhieäm vuï ñieàu khieån vaø giaùm saùt heä thoáng. Ngoaøi ra vi ñieàu khieån cuõng
coù maët trong caùc saûn phaåm coâng nghieäp vaø tieâu duøng nhö: loø vi ba, loø söôõi, maùy giaët, heä thoáng
caûnh baùo vaø giaùm saùt cuûa caùc phöông tieän giao thoâng… vaø trong nhieàu thieát bò coâng nghieäp
khaùc.
Trong taäp ñoà aùn naøy em xin pheùp ñöôïc giôùi thieäu moät heä thoáng âiãöu khiãøn maïy
giàût söû duïng chip vi ñieàu khieån 8051.
Vieäc ñònh höôùng xaây ñöïng ñeà taøi naøy xuaát phaùt töø nhu caàu thöïc teá trong ñôøi soáng hiãûn
âaûi. Noäi dung cuûa ñoà aùn coù 2 phaàn:
+ Phaàn I : Cô sôû lyù thuyeát. Bao goàm kieán truùc cuûa chip vi ñieàu khieån 8051
+ Phaàn II: Tính toaùn vaø thieát keáá trình baøy veà thieát keá phaàn cöùng vaø phaàn meàm heä thoáng.
Qua noå löïc nghieân cöùu, tìm hieåu cuûa baûn thaân cuøng vôùi söï höôùng daãn taän tình chu ñaùo
cuûa Thaày giaùo Th.S Leâ Xöùng em ñaõ hoaøn thaønh ñoà aùn naøy.
Vôùi khoaûng thôøi gian coù haïn cuõng nhö trình ñoä kieán thöùc em coøn haïn cheá neân em tin chaéc
raèng heä thoáng naøy hoaït ñoäng chöa ñöôïc toái öu vaø cuõng seû khoâng traùnh khoûi nhöõng thieáu soùt.
Em kính mong Thaày Coâ thoâng caûm, giuùp ñôõ vaø chæ baûo theâm cho em nhöõng kinh nghieäm quyù
baùu.
1
Ñoà aùn moân hoïc VÑK
Vôùi maïch naøy coù theå vöøa ñieàu chænh toác ñoä ñoäng cô baèng xung , vöøa ñaûo ñöôïc chieàu
quay , hieäu suaát cao .Vi maïch LMD18200 tích hôïp saün maïch caàu ñieàu khieån ñoäng cô coù theå
hoaït ñoäng vôùi taàn soá 1Khz .Neáu coù theâm tuï 10nF chaân Bootstrap thì coù theå hoaït ñoäng leân tôùi
taàn soá 500Khz .Söû duïng vi ñieàu khieån 89C51 ñeå taïo xung ñieàu khieån LMD18200.
1.3 Phöông phaùp ñieàu cheá ñoä roäng xung (PWM):
Ñaây laø phöông phaùp ñöa ra ñoä roäng xung thay ñoåi töø ñoù ñieàu khieån ñöôïc coâng suaát treân
taûi thay ñoåi.
2
Ñoà aùn moân hoïc VÑK
MAÙY TÍNH
3
Ñoà aùn moân hoïc VÑK
Chöông 2
GIÔÙI THIEÄU CAÙC VI MAÏCH LIEÂN QUAN
2.1 Toång quan veà kyõ thuaät vi ñieàu khieån:( xem chi tieát ôû phuï luïc I)
2.1.1 Khaùi quaùt chung veà boä vi ñieàu khieån:
Boä vi ñieàu khieån vieát taét laø Micro-controller, laø maïch tích hôïp treân moät chip coù theå laäp
trình ñöôïc, duøng ñeå ñieàu khieån hoaït ñoäng cuûa moät heä thoáng, theo chöông trình ñieàu khieån ñaõ
naïp saün beân trong chip.
2.1.2 Lòch söû phaùt trieån cuûa vi ñieàu khieån:
Boä vi ñieàu khieån thöïc ra laø moät loaïi vi xöû lí trong taäp hôïp caùc boä vi xöû lyù noùi chung. Boä
vi ñieàu khieån ñöôïc phaùt trieån töø boä vi xöû lí, töø nhöõng naêm 1970 do söï phaùt trieån vaø hoaøn thieän
veà coâng ngheä vi ñieän töû döïa treân kyõ thuaät MOS (Metal-Oxide-Semiconductor), möùc ñoä tích
hôïp cuûa caùc linh kieän baùn daãn trong moät chip ngaøy caøng cao.
2.1.3 Sô ñoà khoái cuûa moät boä vi ñieàu khieån:
Sô ñoà khoái chung cuûa haàu heát caùc boä vi ñieàu khieån bao CPU, boä nhôù ROM hay EPROM
vaø RAM, maïch giao tieáp, maïch giao tieáp song song, boä ñònh thôøi gian, heä thoáng ngaét vaø caùc
BUS ñöôïc tích hôïp treân cuøng moät chip.
RAM ROM
4
Ñoà aùn moân hoïc VÑK
INT\1
INT\0
TIMER2
TIMER1
PORT noá tieáp
T1*
Ñ Ñieàu Cacùùthanh 128 byte Rom Timer1
T2*
khieån ngaét ghi khaùc Ram 4K-8051 Timer2
CPU
Phaàn chính cuûa vi ñieàu khieån 8051 laø boä xöû lí trung taâm (CPU: central processing unit )
bao goàm :
- Thanh ghi tích luõy A
- Thanh ghi tích luõy phuï B, duøng cho pheùp nhaân vaø pheùp chia
- Ñôn vò logic hoïc (ALU : Arithmetic Logical Unit )
- Töø traïng thaùi chöông trình (PSW : Prorgam Status Word)
- Boán baêng thanh ghi
- Con troû ngaên xeáp
- Ngoaøi ra coøn coù boä nhôù chöông trình, boä giaûi maõ leänh, boä ñieàu khieån thôøi gian vaø
logic.
5
Ñoà aùn moân hoïc VÑK
Trong vi ñieàu khieån 8051 / 8031 coù hai thaønh phaàn quan troïng khaùc ñoù laø boä nhôù vaø caùc
thanh ghi :
Boä nhôù goàm coù boä nhôù Ram vaø boä nhôù Rom (chæ coù ôû 8031) duøng ñeå löu tröõ döõ lieäu vaø
maõ leänh.
Caùc thanh ghi söû duïng ñeå löu tröõ thoâng tin trong quaù trình xöû lí. Khi CPU laøm vieäc noù
laøm thay ñoåi noäi dung cuû aùc thanh ghi.
2.2.2 Chöùc naêng caùc chaân cuûa vi ñieàu khieån:
40
30p
19 Vcc P0.7 32 AD7
XTAL1 P0.6 33 AD6
12MHz
P0.5 34 AD5
XTAL2 35
18 P0.4 AD4
30p 36
P0.3 AD3
P0.2 37 AD2
P0.1 38 AD1
29 PSEN\ P0.0 39 AD0
30 ALE 8
P2.7
7
31 P2.6
EA\ 6
9 P2.5
RET 5
P2.4
4
P2.3
17 3
RD\ P2.2
16 2
WR\ P2.1
15 1
T1 P2.0
T0 14 28
P1.7 A15
INT1 13 27
P1.6 A14
INT0 12 26
P1.5 A13
TXD 11 25
P1.4 A12
RXD 10 24
P1.3 A11
23
P1.2 A10
22
P1.1 A9
Vss 21
P1.0 A8
Vi ñieàu khieån 8051 coù 32 trong 40 chaân coù chöùc naêng nhö laø caùc coång I/O, trong ñoa 24
chaân ñöôïc söû duïng vôùi hai muïc ñích. Nghóa laø ngoaøi chöùc naêng coång I/O, moãi chaân coù coâng
duïng keùp naøy coù theå laø moät ñöôøng ñieàu khieån cuûa Bus ñòa chæ hay Bus döõ lieäu hoaëc laø moãi
chaân hoaït ñoäng moät caùch ñoäc laäp ñeå giao tieáp vôùi caùc thieát ñôn bit nhö laø coâng taéc, LED,
transistor…
a.Port0 : laø port coù 2 chöùc naêng ôû treân chaân töø 32 ñeán 39 cuûa MC 8051. Trong caùc thieát
keá côõ nhoû khoâng duøng boä nhôù ngoaøi, PO ñöôïc söû duïng nhö laø nhöõng coång I/O. Coøn trong caùc
thieát keá lôùn coù yeâu caàu moät soá löôïng ñaùng keå boä nhôù ngoaøi thì PO trôû thaønh caùc ñöôøng truyeàn
döõ lieäu vaø 8 bit thaáp cuûa bus ñòa chæ.
6
Ñoà aùn moân hoïc VÑK
b.Port1 : Port1 laø moät port I/O chuyeân duïng treân caùc chaân 1-8 cuûa MC8051. Chuùng ñöôïc
söû duïng vôùi moät muùc ñích duy nhaát laø giao tieáp vôùi caùc thieát bò ngoaøi khi caàn thieát.
c.Port2 : Port2 laø moät coång coù coâng duïng keùp treân caùc chaân 21 – 28 cuûa MC 8051.
Ngoaøi chöùc naêng I/O, caùc chaân naøy duøng laøm 8 bit cao cuûa bus ñòa chæ cho nhöõng moâ hình thieát
keá coù boä nhôù chöông trình ROM ngoaøi hoaëc boä nhôù döõ lieäu RAM coù dung löôïng lôùn hôn 256
byte.
d.Port3 : Port3 laø moät coång coù coâng duïng keùp treân caùc chaân 10 – 17 cuûa MC 8051. Ngoaøi
chöùc naêng laø coång I/O, nhöõng chaân naøy kieâm luoân nhieàu chöùc naêng khaùc nöõa lieân quan ñeán
nhieàu tính naêng ñaëc bieät cuûa MC 8051, ñöôïc moâ taû trong baûng sau :
e.PSEN (Program Store Enable ) : 8051 coù 4 tín hieäu ñieàu khieån. PSEN laø tín hieäu ra treân
chaân 29. Noù laø tín hieäu ñieàu khieån ñeå cho pheùp truy xuaát boä nhôù chöông trình môû roäng vaø
thöôøng ñöôïc noái ñeán chaân OE (Output Enable) cuûa moät EPROM ñeå cho pheùp ñoïc caùc byte maõ
leänh cuûa chöông trình. Tín hieäu PSEN ôû möùc thaáp trong suoát phaïm vi quaù trình cuûa moät leänh.
PSEN seõ ôû möùc thaáp trong thôøi gian laáy leänh. Caùc maõ nhò phaân cuûa chöông trình ñöôïc
ñoïc töø EPROM qua bus vaø ñöôïc choát vaøo thanh ghi leänh cuûa 8051 ñeå giaûi maõ leänh. Khi thi
haønh chöông trình trong ROM noäi PSEN seõ ôû möùc cao.
f.ALE (Address Latch Enable ) :
ALE laø tín hieäu ñeå choát ñòa chæ vaøo moät thanh ghi beân ngoaøi trong nöõa ñaàu cuûa chu kyø
boä nhôù. Sau ñoù, caùc ñöôøng Port 0 duøng ñeå xuaát hoaëc nhaäp döõ lieäu trong nöõa sau chu kyø cuûa
chu kyø boä nhôù.
Caùc xung tín hieäu ALE coù toác ñoä baèng 1/6 laàn taàn soá dao ñoäng treân chip vaø coù theå ñöôïc
duøng laø nguoàn xung nhòp cho caùc heä thoáng. Neáu xung treân 8051 laø 12MHz thì ALE coù taàn soá
2MHz. Chaân naøy cuõng ñöôïc laøm ngoõ vaøo cho xung laäp trình cho EPROM trong 8051.
g.EA (External Access) :
Tín hieäu vaøo EA treân chaân 31 thöôøng ñöôïc noái leân möùc cao (+5V) hoaëc möùc thaáp
(GND).
h.RST (Reset) :
7
Ñoà aùn moân hoïc VÑK
Ngoõ vaøo RST treân chaân 9 laø ngoõ reset cuûa 8051. Khi tín hieäu naøy ñöôïc ñöa leân möùc cao
(trong ít nhaát 2 chu kyø maùy ), caùc thanh ghi trong 8051 ñöôïc ñöa vaøo nhöõng giaù trò thích hôïp ñeå
khôûi ñoäng heä thoáng.
i. OSC:
Nhö ñaõ thaáy trong caùc hình treân, 8051 coù moät boä dao ñoäng treân chip. Noù thöôøng ñöôïc noái
vôùi thaïch anh giöõa hai chaân 18 vaø 19. Taàn soá thaïch anh thoâng thöôøng laø 12MHz.
j. POWER:
8051 vaän haønh vôùi nguoàn ñôn +5V. Vcc ñöôïc noái vaøo chaân 40 vaø Vss (GND) ñöôïc noái vaøo
chaân 20.
2.2.3.Toå chöùc boä nhôù cuûa boä vi ñieàu khieån 8051 :
8051 coù boä nhôù theo caáu truùc Harvard : coù nhöõng vuøng boä nhôù rieâng bieät cho chöông
trình vaø döõ lieäu. Nhö ñaõ noùi ôû treân, caû chöông trình vaø döõ lieäu coù theå ôû beân trong 8051, duø vaäy
chuùng coù theå ñöôïc môû roäng baèèng caùc thaønh phaàn ngoaøi leân ñeán toái ña 64 Kbytes boä nhôù
chöông trình vaø 64 Kbytes boä nhôù döõ lieäu.
Boä nhôù beân trong bao goàm ROM (8051) vaø RAM treân chip. RAM treân chip bao goàm nhieàu
phaàn : phaàn löu tröõ ña duïng, phaàn löu tröõ ñòa chæ hoùa töøng bit, caùc bank thanh ghi vaø caùc thanh
ghi chöùc naêng ñaëc bieät.
Chi tieát veà boä nhôù RAM treân chip :
RAM beân trong chip 8051 ñöôïc phaân chia nhö sau:
• bank thanh ghi (00H – 1FH).
• RAM ñòa chæ hoùa töøng bit (20H – 2FH).
• RAM ña duïng (30H – 7FH)ø.
• Caùc thanh ghi chöùc naêng ñaëc bieät (80H – FFH).
8
Ñoà aùn moân hoïc VÑK
a. RAM ña duïng.
RAM ña duïng
30 7F 7E 7D 7C 7B 7A 79 78
2F 77 76 75 74 73 72 71 70
2E
2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60
2B 5F 5E 5D 5C 5B 5A 59 58
2A 57 56 55 54 53 52 51 50
29 4F 4E 4D 4C 4B 4A 49 48
28 47 46 45 44 43 42 41 40
27 3F 3E 3D 3C 3B 3A 39 38
26 37 36 35 34 33 32 31 30
25 2F 2E 2D 2C 2B 2A 29 28
24 27 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18
22 17 16 15 14 13 12 11 10
21
0F 0E 0D 0C 0B 0A 09 08
20
07 06 05 04 03 02 01 00
1F
18 BANK 3
17
BANK 2
10
0F BANK 1
08 Default register
07 Bank for RO÷R7
00
Hình 2.3 Baûng toùm taét baûn baûn ñoà vuøng nhôù döõ lieäu treân chip 8051
9
Ñoà aùn moân hoïc VÑK
FF
F0 F7 F6 F5 F4 F3 F2 F1 F0 B
E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC
D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW
B8 - - - BC BB BA B9 B8 IP
B0 B7 B6 B5 B4 B3 B2 B1 B0 P3
A8 AF - - AC AB AA A9 A8 IE
A0
A7 A6 A5 A4 A3 A2 A1 A0 P2
SBUF
99 Not bit addressable
98 9F 9E 9D 9C 9B 9A 99 98 SCON
90 97 96 95 94 93 92 91 90 P1
8D TH1
Not bit addressable
8C TH0
Not bit addressable
8B
8A Not bit addressable
TL1
89 Not bit addressable
TL0
Not bit addressable TMOD
88 8F 8E 8D 8C 8B 8A 89 88 TCON
87 Not bit addressable PCON
Hình 2.4 Toùm taét boä nhôù döõ lieäu treân chip
Moïi ñòa chæ trong vuøng RAM ña duïng ñeàu coù theå ñöôïc truy xuaát töï do duøng caùch ñaùnh
ñòa chæ tröïc tieáp hoaëc giaùn tieáp. Ví duï, ñeå ñoïc noäi dung ôû ñòa chæ 5FH cuûa RAM noäi vaøo thanh
ghi tích luõy leänh sau seõ ñöôïc duøng :
MOV A, 5FH
10
Ñoà aùn moân hoïc VÑK
Leänh naøy di chuyeån moät byte döõ lieäu duøng caùch ñaùnh ñòa chæ tröïc tieáp ñeå xaùc ñònh “ñòa
chæ nguoàn” (5FH). Ñích nhaän döõ lieäu ñöôïc ngaàm xaùc ñònh trong maõ leänh laø thanh ghi tích luõy
A.
RAM beân trong cuõng coù theå ñöôïc truy xuaát duøng caùch ñaùnh ñòa chæ giaùn tieáp qua RO hay
R1. Ví duï, sau khi thi haønh cuøng nhieäm vuï nhö leänh ñôn ôû treân :
MOV R0, #5FH
MOV A, @R0
Leänh ñaàu duøng ñòa chæ töùc thôøi ñeå di chuyeån giaù trò 5FH vaøo thanh ghi R0 vaø leänh thöù hai
duøng ñòa giaùn tieáp ñeå di chuyeån döõ lieäu “ñöôïc troû bôûi R0” vaøo thanh ghi tích luõy.
b.RAM ñòa chæ hoùa töøng bit :
8051 chöùa 210 bit ñöôïc ñòa chæ hoùa, trong ñoù 128 bit laø ôû caùc ñòa chæ byte 20H ñeán 2FH,
vaø phaàn coøn laïi trong caùc thanh ghi chöùc naêng ñaëc bieät .
Coù 128 bit ñöôïc ñòa chæ hoùa ña duïng ôû caùc byte 20H ñeán 2FH. Caùc ñòa chæ naøy ñöôïc truy
xuaát nhö caùc byte hoaëc caùc bit phuï thuoäc vaøo leänh ñöôïc duøng. Ví duï, ñeå ñaët bit 67H, ta duøng
leänh sau :
SETB 67H
ÔÛ ñaây ñòa chæ bit 67H laø bit coù troïng soá lôùn nhaát (MSB) ôû ñòa chæ byte 2CH, leänh treân seõ
khoâng taùc ñoäng ñeán caùc bit khaùc cuûa byte naøy.
c.Caùc bank thanh ghi :
MC 8051 cung caáp 32 byte thaáp nhaát cuûa boä nhôù döõ lieäu noäi laø daønh cho caùc bank
thanh ghi. 8 thanh ghi (RO ñeán R7) ôû vò trí cuoái cuøng cuûa RAM vaø theo maëc ñònh (sau khi
Reset heä thoáng) caùc thanh ghi naøy ôû caùc ñòa chæ 00H-07H, tieáp ñoù laø bank 1, bank 2 vaø bank 3.
Leänh sau ñaây seõ ñoïc noäi dung ôû ñòa chæ 05H vaøo thanh ghi tích luõy:
MOV A,R5
Ñaây laø leänh moät byte duøng ñòa chæ thanh ghi. Taát nhieân, thao taùc töông töï coù theå ñöôïc
thi haønh baèng leänh 2 byte duøng ñòa chæ tröïc tieáp naèm trong byte thöù hai:
MOV A,05H
Caùc leänh duøng caùc thanh ghi R0 ñeán R7 thì seõ ngaén hôn vaø nhanh hôn caùc leänh töông
öùng duøng ñòa chæ tröïc tieáp. Caùc giaù trò döõ lieäu ñöôïc duøng thöôøng xuyeân neân duøng moät trong caùc
thanh ghi naøy.
2.2.4 Caùc thanh ghi chöùc naêng ñaëc bieät SFR:
Caùc thanh ghi noäi cuûa 8051 ñöôïc truy xuaát ngaàm ñònh bôûi boä leänh. Ví duï leänh “INC A”
seõ taêng noäi dung cuûa thanh ghi tích luõy A leân 1. Taùc ñoäng naøy ñöôïc ngaàm ñònh trong maõ leänh.
Cuõng nhö R0 ñeán R7, coù 21 thanh ghi chöùc naêng ñaëc bieät (SFR: Special Funtion
Rgister) ôû vuøng treân cuûa RAM noäi, töø ñòa chæ 80H ñeán FFH. Chuù yù raèng haàu heát 128 ñòa chæ töø
80H ñeán FFH khoâng ñöôïc ñònh nghóa, chæ coù 21 ñòa chæ SFR laø ñöôïc ñònh nghóa.
Ngoaïi tröø tích luõy (A) coù theå ñöôïc truy xuaát ngaàm nhö ñaõ noùi, ña soá caùc SFR ñöôïc truy
xuaát duøng ñòa chæ tröïc tieáp. chuù yù raèng moät vaøi SFR coù theå ñöôïc ñòa chæ hoùa bit hoaëc byte. Khi
thieát keá phaûi thaän troïng khi truy xuaát bit vaø byte. Ví duï leänh sau:
SETB 0E0H
Seõ Set bit 0 trong thanh ghi tích luõy, caùc bit khaùc khoâng thay ñoåi. Ta thaáy raèng E0H ñoàng
thôøi laø ñòa chæ byte cuûa thanh ghi tích luõy vaø laø ñòa chæ bit coù troïng soá nhoû nhaát trong thanh ghi
tích luõy. Vì leänh SETB chæ taùc ñoäng treân bit, neân chæ coù ñòa chæ bit laø coù hieäu quaû.
11
Ñoà aùn moân hoïc VÑK
12
Ñoà aùn moân hoïc VÑK
b. Thanh ghi B:
Thanh ghi B ôû ñòa chæ F0H ñöôïc duøng cuøng vôùi thanh ghi tích luõy A cho caùc pheùp toaùn
nhaân vaø chia. Leänh MUL AB seõ nhaân caùc giaù trò khoâng daáu 8 bit trong A vaø B roài traû veà keát
quûa 16 bit trong A (byte thaáp) vaø B (byte cao). Leänh DIV AB seõ chia A cho B roài traû veà keát
quûa nguyeân trong A vaø phaàn dö trong B. Thanh ghi B cuõng coù theå ñöôïc xem nhö thanh ghi ñeäm
ña duïng. Noù ñöôïc ñòa chæ hoùa ttöøng bit baèng caùc ñòa chæ bit FOH ñeán F7H.
c. Con troû ngaên xeáp:
Con troû ngaên xeáp (SP) laø moät thanh ghi 8 bit ôû ñòa chæ 81H. Noù chöùa ñòa chæ cuûa byte döõ
lieäu hieän haønh treân ñænh cuûa ngaên xeáp. Caùc leänh treân ngaên xeáp bao goàm caùc thao taùc caát döõ
lieäu vaøo ngaên xeáp vaø laáy döõ lieäu ra khoûi ngaên xeáp. Leänh caát döõ lieäu vaøo ngaên xeáp seõ laøm taêng
SP tröôùc khi ghi döõ lieäu, vaø leänh laáy döõ lieäu ra khoûi ngaên xeáp seõ doïc döõ lieäu vaø laøm giaûm SP.
Ngaên xeáp cuûa 8051 ñöôïc giöõ trong RAM noäi vaø ñöôïc giôùi haïn caùc ñòa chæ coù theå truy xuaát
baèng ñòa chæ giaùn tieáp. chuùng laø 128 byte ñaàu cuûa 8051.
Ñeå khôûi ñoäng laïi SP vôùi ngaên xeáp baét ñaàu taïi 60H, caùc leänh sau ñaây ñöôïc duøng:
MOV SP,#5FH
d. Con troû döõ lieäu:
Con troû döõ lieäu (DPTR) ñöôïc duøng ñeå truy xuaát boä nhôù ngoaøi, ñaây laø moät thanh ghi 16
bit ôû ñòa chæ 82H( byte thaáp) vaø 83H (byte cao). Ba leänh sau seõ ghi 55H vaøo RAM ngoaøi ôû ñòa
chæ 1000H:
MOV A,#55H
MOV DPTR,#1000H
MOVX @DPTR,A
Leänh ñaàu tieân duøng ñòa chæ töùc thôøi ñeå taûi döõ lieäu 55H vaøo thanh ghi tích luõy, leänh thöù
hai cuõng duøng ñòa chæ töùc thôøi, laàn naøy ñeå taûi döõ lieäu 16 bit 1000H vaøo con troû döõ lieäu. Leänh
thöù ba duøng ñòa chæ giaùn tieáp ñeå di chuyeån döõ lieäu trong A (55H) ñeán RAM ngoaøi ôû ñòa chæ
ñöôïc chöùa trong DPTR (1000H)
e. Caùc thanh ghi port xuaát nhaäp:
Caùc port cuûa 8051/8031 bao goàm Port 0 ôû ñòa chæ 80H, Port 1 ôû ñòa chæ 90 H, Port 2 ôû ñòa
chæ A0H vaø Port 3 ôû ñòa chæ B0H. Taát caû caùc Port ñeàu ñöôïc ñòa chæ hoùa töøng bit. Ñieàu ñoù cung
caáp moät khaû naêng giao tieáp thuaän lôïi.
f. Caùc thanh ghi timer:
8051 chöùa 2 boä ñònh thôøi ñeám 16 bit ñöôïc duøng trong vieäc ñònh thôøi hoaëc ñeám söï kieän.
Timer 0 ôû ñòa chæ 8AH (TL0:byte thaáp) vaø 8CH (TH0:byte cao).Timer 1 ôû ñòa chæ 8BH
(TL1:byte thaáp) vaø 8DH (TH1: byte cao).
Vieäc vaän vaänhaønh timer ñöôïc set bôûi thanh ghi Timer Mode (TMOD) ôû ñòa chæ 89H vaø
thanh ghi ñieàu khieån timer (TCON) ôû ñòa chæ 88H. Chæ coù TCON ñöôïc ñòa chæ hoùa töøng bit.
g. Caùc thanh ghi port noái tieáp:
8051 chöùa moät port noái tieáp treân chip daønh cho vieäc trao ñoåi thoâng tin vôùi caùc thieát bò noái
tieáp nhö maùy tính, modem hoaëc cho vieäc giao tieáp vôùi caùc IC khaùc coù giao tieáp noái tieáp (coù boä
chuyeån ñoåi A/D, caùc thanh ghi dòch..). Moät thanh ghi goïi laø boä ñeäm döõ lieäu noái tieáp (SBUF) ôû
ñòa chæ 99H seõ giöõ caû hai döõ lieäu truyeàn vaø nhaän. Khi truyeàn döõ lieäu thì ghi leân SBUf, khi nhaän
döõ lieäu thì ñoïc töø SBUF. Caùc mode vaän haønh khaùc nhau ñöôïc laäp trình qua thanh ghi ñieàu
khieån port noái tieáp (SCON) ñöôïc ñòa chæ hoùa töøng bit ôû ñòa chæ 98H.
h. Caùc thanh ghi ngaét:
13
Ñoà aùn moân hoïc VÑK
8051 coù caáu 5 nguoàn ngaét, 2 möùc öu tieân. Caùc ngaét bò caám sau khi reset heä thoáng vaø seõ
ñöôïc cho pheùp baèng vieäc ghi vaøo thanh ghi cho pheùp ngaét (IE) ôû ñòa chæ 8AH moät giaù trò phuø
hôïp. Caû hai thanh ghi ñöôïc ñòa chæ hoùa töøng bit.
i. Caùc thanh ghi ñieàu khieån coâng suaát:
Thanh ghi ñieàu khieån coâng suaát (PCON) ôû ñòa chæ 87H chöùa nhieàu bit ñieàu khieån. Chuùng
ñöôïc toùm taét trong baûng sau:
100Ω
10uF
S1
Reset
8.2K
14
Ñoà aùn moân hoïc VÑK
Traïng thaùi cuûa taát caû caùc thanh ghi cuûa 8051 sau khi reset heä thoáng ñöôïc toùm taét trong
baûng sau:
Hình 2.9 : Traïng thaùi caùc thanh ghi sau khi reset
Quan troïng nhaát trong caùc thanh ghi treân laø thanh ghi ñeám chöông trình, noù ñöôïc ñaët laïi
0000H. Khi RST trôû laïi möùc thaáp, vieäc thi haønh chöông trình luoân baét ñaàu ôû ñòa chæ ñaàu tieân
trong boä nhôù trong chöông trình: ñòa chæ 0000H. Noäi dung cuûa RAM treân chip khoâng bò thay ñoåi
bôûi leänh reset.
2.2.7. Hoaït ñoäng cuûa boä ñònh thôøi (timer):
a. Giôùi thieäu.
Moät ñònh nghóa ñôn giaûn cuûa timer laø moät chuoãi caùc flip-flop chia ñoâi taàn soá noái tieáp vôùi
nhau, chuùng nhaän tín hieäu vaøo laøm nguoàn xung nhòp. Ngoõ ra cuûa taàn soá cuoái laøm nguoàn xung
nhòp cho flip-flop baùo traøn cuûa timer (flip-flop côø). Giaù trò nhò phaân trong caùc flip-flop cuûa
timer coù theå xem nhö soá ñeám soá xung nhòp (hoaëc caùc söï kieän) töø khi khôûi ñoäng timer. Ví duï
timer 16 bit seõ ñeám leân töø 0000H ñeán FFFFH. Côø baùo traøn seõ leân 1 khi soá ñeám traøn töø FFFFH
ñeán 0000H.
8051 coù 2 timer 16 bit, moãi timer coù boán caùch laøm vieäc. Ngöôøi ta söû duïng caùc timer ñeå : ñònh
khoaûng thôøi gian, ñeám söï kieän hoaëc taïo toác ñoä baud cho port noái tieáp trong 8051.
Trong caùc öùng duïng ñònh khoaûng thôøi gian, ngöôøi ta laäp trình timer ôû moät khoaûng ñeàu
ñaën vaø ñaët côø traøn timer. Côø ñöôïc duøng ñeå ñoàng boä hoùa chöông trình ñeå thöïc hieän moät taùc
ñoäng nhö kieåm tra traïng thaùi cuûa caùc ngoõ vaøo hoaëc göûi caùc söï kieän ra caùc ngoõ ra. Caùc öùng
duïng khaùc coù theå söû duïng vieäc taïo xung nhòp ñeàu ñaën cuûa timer ñeå ño thôøi gian troâi qua giöõa
hai söï kieän (ví duï : ño ñoä roäng xung).
Ñeám söï kieän duøng ñeå xaùc ñònh soá laàn xaûy ra cuûa moät söï kieän. Moät söï kieän laø baát cöù taùc
ñoäng ngoaøi naøo coù theå cung caáp moät chuyeån traïng thaùi treân moät chaân cuûa 8051. Caùc timer
cuõng coù theå cung caáp xung nhòp toác ñoä baud cho port noái tieáp trong 8051.
Truy xuaát timer cuûa 8051 duøng 6 thanh ghi chöùc naêng ñaëc bieät cho trong baûng sau:
SFR MUÏC ÑÍCH ÑÒA CHÆ Ñòa chæ hoùa töøng bit
15
Ñoà aùn moân hoïc VÑK
Hình 2.10 : Thanh ghi chöùc naêng ñaëc bieät duøng timer.
b. Thanh ghi cheá ñoä timer (TMOD:
Thanh ghi TMOD chöùa hai nhoùm 4 bit duøng ñeå ñaët cheá ñoä laøm vieäc cho timer 0 vaø
timer 1.
17
Ñoà aùn moân hoïc VÑK
TL1 TH1
Xung nhòp timer
TLx TFx
(8 bit) (8 bit)
18
Ñoà aùn moân hoïc VÑK
CLK
SUBF
Q D Thanh ghi
(Chæ ghi)
CLK
Xung nhòp toác
Ñoä baud (thu) SBUF
Xung nhòp toác (chæ ñoïc)
Ñoä baud (thu)
SBUF
(chæ ñoïc)
19
Ñoà aùn moân hoïc VÑK
SCON.6 SM1 9EH Bit 1 cuûa cheá ñoä port noái tieáp
SCON.5 SM2 9DH Bit 2 cuûa cheá ñoä 2 noái tieáp.
cho pheùp trueàn thoâng ñaõ xöû lyù
trong caùc cheá ñoä 2 vaø 3 ;RI seõ
khoâng bò taùc ñoäng neáu bit thöù
9 thu ñöôïc laø 0
SCON.4 REN 9CH Cho pheùp boä thu phaûi ñaët leân
1 ñeå thu (nhaän) caùc kyù töï
SCON.3 TB8 9BH Bit 8 phaùt, bit thöù 9 ñöôïc phaùt
caùc cheá ñoä 2 vaø 3; ñöôïc ñaët
vaø xoùa baèng phaàn meàm
SCON.2 RB8 9AH Bit 8 thu, bit thöù 9 thu ñöôïc
SCON.1 TI 99H Côø ngaét phaùt. Ñaët leân 1 khi
keát thuùc phaùt kyù töï; ñöôïc xoùa
phaàn meàm
SCON.0 RI 98H Côø ngaét thu. Ñaët leân 1 khi
Keát thuùc thu kyù töï; ñöôïc xoùa
Baèng phaàn meàm
Baûng 2.7:Toùm taét thanh ghi cheá ñoä port noái tieáp SCON.
Khôûi ñoäng port noái tieáp cho cheá ñoä 1 (SM0/SM1=0/1), cho pheùp boä thu (REN=1) vaø ñaët
côø ngaét phaùt (TP=1) ñeå chæ boä phaùt saün saøng hoaït ñoäng.
2.2.8 Khôûi ñoäng vaø truy xuaát caùc thanh ghi coång noái tieáp.
a. Cho pheùp thu:
Bit cho pheùp boä thu (REN = Receiver Enable) trong SCON phaûi ñöôïc ñaët leân 1 baèng
phaàn meàm ñeå cho pheùp thu caùc kyù töï. Thoâng thöôøng thöïc hieän vieäc naøy ôû ñaàu chöông trình khi
khôûi ñoäng coång noái tieáp, timer...Coù theå thöïc hieän vieäc naøy theo hai caùch. Leänh :
20
Ñoà aùn moân hoïc VÑK
SETB REN
Seõ ñaët REN leân 1, hoaëc leänh :
MOV SCON,#xxx1xxxxB
Seõ ñaët REN 1 vaø ñaëc hoaëc xoùa ñi caùc bit khaùc treân SCON khi caàn (caùc x phaûi laø 0 hoaëc
2 ñeå ñaëc cheá ñoä laøm vieäc).
b. Bit döõ lieäu thöù 9:
Bit döõ lieäu thöù 9 caàn phaùt trong caùc cheá ñoä 2 vaø 3, phaûi ñöôïc naïp vaøo trong TB8 baèng
phaàn meàm. Bit döõ lieäu thöù 9 thu ñöôïc ñaët ôû RBS. Phaàn meàm coù theå caàn hoaëc khoâng caàn bit döõ
lieäu thöù 9, phuï thuoäc vaøo caùc ñaëc tính kyõ thuaät cuûa thieát bò noái tieáp söû duïng (bit döõ lieäu thöù 9
cuõng ñoùng vai moät troø quan troïng trong truyeàn thoâng ña xöû lyù).
c. Theâm 1 bit parity:
Thöôøng söû duïng bit döõ lieäu thöù 9 ñeå theâm parity vaøo kyù töï. Nhö ñaõ xeùt ôû caùc chöông
tröôùc, pit P trong töø traïng thaùi chöông trình (PSW) ñöôïc ñaët leân 1 hoaëc bò xoùa bôûi chu kyø maùy
ñeå thieát laäp kieåm tra chaün vôùi 8 bit trong thanh tích luõy.
d. Caùc côø ngaét:
Hai côø ngaét thu vaø phaùt (RI vaø TI) trong SCON ñoùng moät vai troø quan troïng truyeàn
thoâng noái tieáp duøng 8051/8031. Caû hai bit ñöôïc ñaët leân 1 baèng phaàn cöùng, nhöng phaûi ñöôïc
xoùa baèng phaàn meàm.
8.4 . Toác ñoä baud port noái tieáp.
Nhö ñaõ noùi, toác ñoä baud coá ñònh ôû caùc cheá ñoä 0 vaø 2. Trong cheá ñoä 0 noù luoân luoân laø
taàn soá dao ñoäng treân chip ñöôïc chia cho 12 . Thoâng thöôøng thaïch anh aán ñònh taàn soá dao ñoäng
treân chip cuûa 8051/8031 nhöng cuõng coù theå söû duïng nguoàn xung nhòp khaùc. Giaû söû vôùi taàn soá
dao ñoäng danh ñònh laø 12 MHz, tìm toác ñoä baud cheá ñoä 0 laø 1 MHz.
a. Cheá ñoä 0
÷64
SMOD=0
Dao ñoäng Xung nhòp
treân chip toác ñoä baud
SMOD=1
÷32
b. Cheá ñoä 2
21
Ñoà aùn moân hoïc VÑK
÷32
SMOD=0
Dao ñoäng Xung nhòp
treân chip toác ñoä baud
SMOD=1
÷16
÷16
Maëc nhieân, sau khi reset heä thoáng, toác ñoä baud cheá ñoä laø 2 taàn soá boä dao ñoäng chia cho
64. Toác ñoä baud cuõng aûnh höôûng bôûi 1 bit trong thanh ghi ñieàu khieån nguoàn cung caáp (PCON).
Bit 7 cuûa PCON laø bit SMOD. Ñaët bit sMOD leân moät laøm gaáp ñoâi toác ñoä baud trong cheá ñoä 1,2
vaø 3. Trong cheá ñoä 2, toác ñoä baud coù theå bò gaáp ñoâi töø giaù trò maëc nhieân cuûa 1/64 taàn soá dao
ñoäng (SMOD=0) ñeán 1/32 taàn soá dao ñoäng (SMOD=1)
Vì PCON khoâng ñöôïc ñònh ñòa chæ theo bit, neân ñeå ñaët bit SMOD leân 1 caàn phaûi theo
caùc leänh sau:
MOV A,PCON laáy giaù trò hieän thôøi cuûa PCON
SETB ACC.7 ñaët bit 7 (SMOD) leân 1
MOV PCON,A ghi giaù trò ngöôïc veà PCON
Caùc toác ñoä baud trong caùc cheá ñoä 1 vaø 3 ñöôïc xaùc ñònh baèng toác ñoä traøn cuûa timer 1. Vì
timer hoaït ñoäng ôû taàn soá töông ñoái cao, traøn timer ñöôïc chia theâm cho 32 (hay 16 neáu
SMOD=1) tröôùc khi cung caáp xung nhòp toác ñoä baud cho port noái tieáp.
2.2.9. Hoaït ñoäng ngaét.
Ngaét laø hoaït ñoäng ngöøng taïm thôøi moät chöông trình naøy ñeå tji haønh moät chöông trình
khaùc. Caùc ngaét coù moät vai troø quan troïng trong thieát keá vaø khaû naêng thöïc thi cuûa vi ñieàu khieån.
Chuùng cho pheùp heä thoán ñaùp öùng khoâng cuøng luùc tôùi moät coâng vieäc vaø giaûi quyeát moät coâng
vieäc ñoù trong khi moät chöông trình khaùc ñang thöïc thi.
Moät heä thoáng ñöôïc ñieàu khieån baèng ngaét cho aûo giaùc laø laøm nhieàu vieäc ñoàng thôøi. Dó
nhieân CPU moãi laàn khoâng theå thöïc thi moät chöông trình ñeå thöïc thi moät chöông trình khaùc, roài
quay veà chöông trình ñaàu. khi coù yeâu caàu ngaét. Chöông trình giaûi quyeát ngaét ñöôïc goïi laû
chöông trình phuïc vuï ngaét (ISR : Interrupt Sevice Reutine).
9.1 Toå chöùc ngaét.
Ôû 8051 coù 5 nguoàn ngaét:
- 2 ngaét ngoaøi
- 2 ngaét töø timer.
- 1 ngaét port noái tieáp.
Taát caû caùc ngaét seõ khoâng ñöôïc ñaët sau khi reset heä thoáng vaø cho pheùp ngaét rieâng reõ bôûi
phaàn meàm.
a. Cho pheùp vaø khoâng cho pheùp ngaét.
Moãi nguoàn ngaét ñöôïc cho pheùp hoaëc khoâng cho pheùp töøng ngaét moät qua thanh ghi chöùc
naêng ñaët bieät coá ñònh ñòa chæ bit IE (Interrupt Enable : cho pheùp ngaét) ôû ñòa chæ A8H. Cuõng nhö
caùc bit cho pheùp moãi nguoàn ngaét, coù moät bit cho pheùp hoaëc caám toaøn boä ñöôïc xoùa ñeå caám taát
caû caùc ngaét hoaëc ñöôïc ñaët leân 1 ñeå cho pheùp taát caû caùc ngaét.
22
Ñoà aùn moân hoïc VÑK
Bit Kyù hieäu Ñòa chæ bit Moâ taû (1=cho pheùp,0=caám)
IE.7 EA AFH Cho pheùp hoaëc caám toaøn boä
IE.6 EA AEH Khoâng ñöôïc ñònh nghóa
IE.5 ET5 ADH Cho pheùp ngaét töø timer 2 (8052)
IE.4 E5 ACH Cho pheùp ngaét Port noái tieáp
IE.3 ET1 ABH Cho pheùp ngaét töø timer 1
IE.2 EX1 AAH Cho pheùp ngaét ngoaøi 1
IE.1 ET0 A9H Cho pheùp ngaét töø timer 0
IE.0 EX0 A8H Cho pheùp ngaét ngoaøi 0
Bit Kyù hieäu Ñòa chæ bit Moâ taû (1=möùc cao hôn,0=möùc thaáp)
IP.7 Khoâng ñöôïc ñònh nghóa
IP.6 Khoâng ñöôïc ñònh nghóa
IP.5 PT2 BDH Öu tieân cho ngaét töø timer 2 (8052)
IP.4 PS BCH Öu tieân cho ngaét Port noái tieáp
IP.3 PT1 BBH Öu tieân cho ngaét töø timer 1
IP.2 PX1 BAH Öu tieân cho ngaét ngoaøi
IP.1 PT0 B9H Öu tieân cho ngaét töø timer 0
IP.0 PX0 B8H Öu tieân cho ngaét ngoaøi 0
23
Ñoà aùn moân hoïc VÑK
24
Ñoà aùn moân hoïc VÑK
phaùt hieän ñöôïc caïnh xuoáng. Neáu ngaét ngoaøi ñöôïc taùc ñoäng theo möùc thì nguoàn beân ngoaøi phaûi
giöõ tín hieäu yeâu caàu taùc ñoäng cho ñeán khi ngaét ñöôïc yeâu caàu ñöôïc thaät söï taïo ra vaø khoâng taùc
ñoäng yeâu caàu ngaét tröôùc khi ISR ñöôïc hoaøn taát . Neáu khoâng moät ngaét khaùc seõ ñöôïc laëp laïi
2.2Caûm bieán:(caùc vi maïch xem phuï luïc 2& 3)
a. Giôùi thieäu sô löôïc veà maïch caûm bieán:
Ñeå caûm nhaän moãi laàn saûn phaåm ñi qua thì caûm bieán phaûi coù phaàn phaùt vaø phaàn thu. Phaàn
phaùt phaùt ra aùnh saùng hoàng ngoaïi vaø phaàn thu haáp thuï aùnh saùng hoàng ngoaïi vì aùnh saùng hoàng
ngoaïi coù ñaëc ñieåm laø ít bò nhieãu so vôùi caùc loaïi aùnh saùng khaùc. Hai boä phaän phaùt vaø thu hoaït
ñoäng vôùi cuøng taàn soá. Khi coù saûn phaåm ñi qua giöõa phaàn phaùt vaø phaàn thu, aùnh saùng hoàng
ngoaïi bò che boä phaän thu seõ hoaït ñoäng vôùi taàn soá khaùc taàn soá phaùt nhö theá taïo ra moät xung taùc
ñoäng tôùi boä phaän xöû lí. Vaäy boä phaän phaùt vaø boä phaän thu phaûi coù nguoàn taïo dao ñoäng. Boä phaän
dao ñoäng taùc ñoäng tôùi coâng taéc ñoùng ngaét cuûa nguoàn phaùt vaø nguoàn thu aùnh saùng. Coù nhieàu
linh kieän phaùt vaø thu aùnh saùng hoàng ngoaïi nhöng chuùng em choïn led hoàng ngoaïi vaø transitor
quang laø linh kieän phaùt vaø thu vì transistor quang laø linh kieän raát nhaïy vôùi aùnh saùng hoàng
ngoaïi. Boä phaän taïo dao ñoäng coù theå duøng maïch LC, coång logic, hoaëc IC dao ñoäng. Vôùi vieäc söû
duïng IC chuyeân duøng taïo dao ñoäng, boä taïo dao ñoäng seõ trôû neân ñôn giaûn hôn vôùi taàn soá phaùt
vaø thu
Vì tín hieäu ôû ngoõ ra trasitor quang raát nhoû neân caàn coù maïch khuyeách ñaïi tröôùc khi ñöa ñeán boä
taïo dao ñoäng. Chuùng em choïn IC khueách ñaïi ñeå khueách ñaïi tín hieäu leân ñuû lôùn. Vaäy sô ñoà
khoái cuûa phaàn phaùt vaø phaàn thu laø:
KHOÁI KHOÁI
TRANSITOR KHUYEÁCH ÑAÏI DAO
DAO THU ÑOÄNG
ÑOÄNG
25
Ñoà aùn moân hoïc VÑK
I(A)
ϕ=4
ϕ=3
ϕ=2
ϕ=1
ϕ=0
U(V)
Cöïc neàn B C
(base) E N P N
Cöïc phaùt (emiter)
B
E u
Kyù hieä Caáu taïo
. Chuyeån tieáp PN emitor ñöôïc cheá taïo nhö caùc transistor thoâng thöôøng, nhöng chuyeån
tieáp PN colector, thì do mieàn bazô caàn ñöôïc chieáu saùng, cho neân noù coù nhieàu hình daïng khaùc
nhau, cuõng coù daïng hình troøn naèm giöõa taâm mieàn bazô. Khi söû duïng transistor quang maéc
maïch töông töï nhö transistor maéc chung emitor (CE). Chuyeån tieáp emitor ñöôïc phaân cöïc thuaän
coøn chuyeån tieáp colector ñöôïc phaân cöïc nghòch. Coù nghóa laø transistor quang ñöôïc phaân cöïc ôû
cheá ñoä khuyeách ñaïi.
Doøng ñieän trong transistor:
Vì noái thu ñöôïc phaân cöïc nghòch neân coù doøng ræ Ico chaïy giöõa thu – neàn vaø vì noái neàn - phaùt
ñöôïc phaân cöïc thuaän neân doøng thu laø (β + 1)Ico ñaây laø doøng toái cuûa quang transistor. Khi chieáu
aùnh saùng vaøo mieàn bazô, trong mieàn bazô coù söï phaùt xaï caëp ñieän töû loã troáng laøm xuaát hieän
doøng IL. Do aùnh saùng khieán doøng thu trôû thaønh:
Ic = (β + 1) .(Ico + IL)
26
Ñoà aùn moân hoïc VÑK
H=9
I(A)
H=7
8 H=5
6 H=4
4
H=1
2
0
5 10 15 20 1
U(V)
Ñaëc tuyeán cuûa transistor quang cuõng gioáng nhö ñaëc tuyeán Volt- ampere cuûa transistor
thoâng thöôøng maéc EC. Ñieàu khaùc nhau ôû ñaây laø caùc tham soá khoâng phaûi laø doøng Ib maø laø
löôïng chieáu saùng
Ñaëc tuyeán Volt ampere cuûa transistor quang öùng vôùi khoaûng Uce nhoû cuõng coù theå goïi
laø mieàn baõo hoøa vì khi aáy do söï tích tuï ñieän tích coù theå coi nhö chuyeån tieáp colector ñöôïc phaân
cöïc thuaän. Cuõng töông töï nhö trong tröôøng hôïp transistor thoâng thuôøng, ñoä doác ñaëc tuyeán trong
mieàn khuyeách ñaïi.
b3. IC dao ñoäng 555
Sô ñoà chaân:
GND VCC
8 6 4 7
TRI DIS
OUT THR
RES CN
5
FLIP
FLOP
OUTPUT
3 1
27
Ñoà aùn moân hoïc VÑK
14 13 12 11 10 9 8
GND
4 +3
+
1+
+2
+3 - 30V
1 2 3 4 5 6 7
LM 324 IC coù 4 taàng khueách ñaïi thuaät toaùn, IC laøm vieäc vôùi loaïi nguoàn ñôn.
Ñoä lôïi treân 100dB, tuy nhieân baêng thoâng heïp hôn LM 3900.
Chuù yù: khoâng ñeå ngaõ ra chaïm vaøo nguoàn V+ hay chaïm thaúng vaøo masse, ñieàu naøy seõ laøm hö
IC.
• IC 567 (TONE DECODER):
IC 567 Boä giaûi maõ aâm saéc.
IC chöùa moät voøng khoùa pha. Khi taàn soá phuø hôïp vôùi taàn soá trung taâm thì chaân 8 coù möùc aùp
thaáp. Do ñoù tín hieäu töø transistor qua taàng khuyeách ñaïi ñöa ñeán ngoõ vaøo cuûa IC 567. Taàn soá
hieän nay ñöôïc xaùc laäp theo maïch ñònh thôøi R vaø C hay 1,1/(RC). R laáy khoaûng 2K ñeán 20K.
567 coù theå taùch doø taàn soá ngaõ vaøo töø 0,01Hz ñeán 500KHz.
1
Tuï ngoõ ra 8 Ngoõ ra
2
Tuï loïc 3 5 7 GND
6 Tuï ñònh thôøi
thoângthaáp 4 67 5 Ñieän trôû ñònh thôøi
Ngoõvaøo
+4,75-9,0V
Ghi chuù: caùc ngaõ vaøo trong maïch loïc thaáp qua tính theo μF seõ ñöôïc xaùc ñònh bôûi n/F0. Trong
ñoù n trong khoaûng 1300 ñeán 62000. Tuï ngaõ ra laáy trò soá gaáp ñoâi tuï trong maïch loïc thaáp qua ôû
ngaõ vaøo.
28
Ñoà aùn moân hoïc VÑK
29
Ñoà aùn moân hoïc VÑK
Chöông 4 :
LÖU ÑOÀ THUAÄT TOAÙN VAØ CHÖÔNG TRÌNH
HIGH
LOW
P3.6
t2
t1
T=65536us
30
Ñoà aùn moân hoïc VÑK
BEGIN
KHÔÛI TAÏO
1. PWM = 0%, giaù trò cuûa T0 ban ñaàu
2. PWMF = 0 ;ñaùnh daáu ñöa ra pwm
3. ÑAËT BRAKE BIT( P3.4=1 ; ñoäng cô döøng )
4.KHÔÛI TAÏO BOÄ ÑÒNH THÔØI :
T0 : 16 BIT ; taïo ngaét ñeå ñöa ra PWM
T1: 16 BIT ; ñeå taïo toác ñoä baund cho coång noái tieáp
5. CAØI ÑAËT NGAÉT :(cho pheùp caùc ngaét sau )
- NGAÉT ÑÒNH THÔØI T1 ; ñeå ñieàu cheá xung sau
nhöõng khoaõng thôøi gian caøi ñaët
- NGAÉT NGOAØI ; ñeå ñöøng khaån caáp neáu quaù
nhieät ñoä hoaêc bò quaù taûi
- NGAÉT DO T0 , ñeå taïo thôøi gian laáy maåu toác ñoä
thöïc
NO
COÙ NHAÁN NUÙT TAÊNG
HOAC GIAM ;caøi ñaët
toác ñoä tröôùc khi chaïy
YES
NO
COÙ NHAÁN NUÙT TAÊNG
YES 1
31
Ñoà aùn moân hoïc VÑK
HIENTHICAI DAËT
YES
COÙ NHAÁN NUÙT TAÊNG
NO 2
NO
YES
HIENTHICAI DAËT
3 YES` 4 NO
COÙ NHAÁN NUÙT GIAM
32
Ñoà aùn moân hoïc VÑK
5
` YES`
STOP = 0 ? ,coâng taéc
döøng aán
NO`
ÑOÄNG CÔ DÖØNG ;
p3.4=0
YES`
33
Ñoà aùn moân hoïc VÑK
6
`
5
TOÁC ÑOÄ THÖÏC=TOÁC `
ÑOÄÑAËT
YES`
YES`
34
Ñoà aùn moân hoïc VÑK
4.1.2>Chöông trình con phuïc vuï ngaét T0 : chöùc naêng laø taïo ra xung co möùc cao thay ñoåi ñöôïc ñoä roäng
treân neàn chu kì coá ñònh laø 65536us.
T0INT
NO
`
RETI
PWMLOW
CLR TR0
CLR PWMF ; ñaùnh daáu ñö ra xung thaáp
CLR P3.6 ; ñöa xung ra möùcTHAP
MOV TH0 ,#HIGH( T-PWM)
MOV TL0 ,#LOW(T- PWM)
SET TR0
RETI
35
Ñoà aùn moân hoïc VÑK
4.1.3>Chöông trình con phuïc vuï ngaét layùy maãu : sau 0,25s seõ laùy giaù trò ñeám trong R0 naïp vaøo A ñeå so saùnh
vôùi toác ñoä ñaët.
T1ISR
RETI
4.1.4>Chöông trìngh con phuïc vuï ngaét ngoaøi INT0 vaø INT an toaøn :khi ñoäng cô bò quaù taûi hoaëc LM18200 bò
quaù nhieät thì seõ taùc ñoäng vaøo ngaét ngoaøi INT0 vaù INT1 , coøi hu leân vaø bitb strop ñöôïc SET
36
Ñoà aùn moân hoïc VÑK
4.1.5>Chöông trình con hieån thò : giaù trò caøi ñaët ñöôïc löu vaøo R2 , giaù trò thöïc löu vaøo R1
HIEÅN THÒ
NO
R5 = 4 ?
YES
YES
NO
R6 = 4 ?
YES
RET
37