- Khi MT8870 nhận được tín hiệu đảo cực chân 15 tức là STD sẽ lên mức logic 
1 và làm cho chân 12 của vi điều khiển 8031 ngắt T0. Đồng thời chân 28 cho 
hoạt động mức logic 1 có địa chỉ 8000, chân 17 của 8031 là chân RD cho phép 
đọc dữ liệu ở mức logic 0. 
- Tín hiệu từ chân 28 qua IC5A thì ở mức logic 0 và kết hợp chân 17 của 8031 ở 
mức logic 0 qua IC5C thì tínhiệu sẽ là 1, làm cho chân TOE của MT8870 tác 
động. 
- Chân TOE (chân 10) của MT8870 sẽ tácđộng khi ngỏ vào ở mức logic 1 và 
xuất ra ở ngỏ ra Q1 đến Q4 là Data sẽ đưa về CPU để điều khiển bộ phận giải 
mã địa chỉ.
                
              
                                            
                                
            
 
            
                 50 trang
50 trang | 
Chia sẻ: lylyngoc | Lượt xem: 2659 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang tài liệu Thiết kế mạch tính cước điện thoại, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
 cuôùc ñieän thoaïi treân döõ lieäu. Noù laø taäp hôïp caùc 
maïch logic thöïc hieän caùc hoaït ñoäng ñem veà caùc leänh vaø thöïc thi caùc leänh. 
2. Khoái EPROM : 
Ñaây laø khoái löu tröõ chöông trình hoaït ñoäng chính cuûa khoái CPU, noäi dung khoâng bò 
maát khi maát ñieän. Chöông trình phaàn meàm ñöôïc naïp ôû ñaây. 
3. Khoái RAM nhôù ngoaøi: 
Löu tröõ taïm thôøi caùc thoâng soá cuûa cuoäc goïi, cuõng nhö khaû naêng thay ñoåi chöông trình 
do ngöôøi söû duïng laäp. Ram ngoaøi coù theå ñöôïc ñoïc hoaëc ghi khi coù tín hieäu ñieàu khieån 
ghi hoaëc ñoïc töø CPU 
4. Khoái Choát Ñòa Chæ: 
Löu tröõ caùc ñòa chæ do CPU ñöa vaøo vaø chuyeån caùc ñòa chæ naøy ñeán caùc khoái RAM 
nhôù ngoaøi vaø EPROM , thöïc hieän nhôø IC choát 74LS 373. 
5. Khoái Giaûi Maõ Ñòa Chæ: 
Khi coù tín hieäu xung clock taùc ñoäng veà ngoõ vaøo cuûa xung clock. Khi coù tín hieäu töø 
CPU gôûi veà thì ngoõ ra seõ taùc ñoäng cho heä thoáng led 7 ñoaïn hoaït ñoäng. 
6. Khoái Thu DTMF: 
Ñaây laø IC 8870 duøng ñeå giaûi maõ tone, giaûi maõ caùc soá töø baøn phím cuûa ñieän thoaïi vaø 
ñöa döõ lieäu veà coång xuaát nhaäp döõ lieäu qua bus döõ lieäu. 
7. Khoái Khueách Ñaïi Coâng Suaát: 
Bao goàm caùc transistor daãn baûo hoøa khueách ñaïi coâng suaát cho heä thoáng led 7 ñoaïn, 
caùc transistor ñöôïc kích töø khoái giaûi maõ ñòa chæ vaø töø port 1 cuûa vi ñieàu khieån. 
8. Khoái Xung CK: 
Taïo ra xung clock coù taàn soá coá ñònh ñeå caùc khoái trong maùy hoaït ñoäng ñoàng boä vôùi 
nhau. 
9. Khoái Ñaûo Cöïc: 
Nhaän bieát ñöôïc vaø xöû lyù khi coù tín hieäu töø toång ñaøi göûi ñeán cho thueâ bao beân kia nhaác 
maùy thoâng thoaïi thì tính tieàn. 
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 17
10. Khoái Hieån Thò: 
Hieån thò caùc thoâng soá veà giaù thaønh, thôøi gian vaø soá cuoäc goïi cuõng nhö tình traïng cuûa 
maùy ôû thôøi ñieåm hieän taïi. 
11. Khoái Nguoàn: 
Taïo ra moät nguoàn ñieän aùp thoûa maõn yeâu caàu veà ñieän aùp cung caáp cho taát caû caùc linh 
kieän trong maïch. 
III. GIAÛI THÍCH SÔ LÖÔÏC VEÀ NGUYEÂN LYÙ HOAÏT ÑOÄNG 
CUÛA MAÏCH: 
- Khi heä thoáng ñöôïc cung caáp nguoàn, nguoàn ñieän aùp seõ ñeán taát caû caùc vi 
maïch cuûa maùy. CPU ñöôïc caáp nguoàn seõ baét ñaàu hoaït ñoäng ôû ñòa chæ 0000H. 
- Khi coù yeâu caàu thöïc hieän cuoäc goïi töùc laø maùy ôû cheá ñoä nhaác toå hôïp (off 
hook) CPU saün saøng tieáp nhaân soá goïi. 
- Khi ngöôøi goïi thöïc hieän baám soá goïi, CPU seõ löu tröõ taïm thôøi soá goïi vaøo 
Ram vaø ñoàng thôøi ñöa ra maïch hieån thò ñeå hieån thò caùc soá vöøa goïi. 
- Sau khi chaám döùt cuoäc goïi, maùy seõ hieån thò giaù tieàn vaø soá cuoäc goïi. 
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 18
 CHÖÔNG II : THIEÁT KEÁ PHAÀN CÖÙNG 
 n¡«¡n 
I. KHOÁI XÖÛ LYÙ TRUNG TAÂM (CPU): 
n Trong maùy tính cöôùc, khoái CPU chính laø phaàn quan troïng nhaát, noù tieáp nhaän 
vaø xöû lyù taát caû caùc thoâng tin hoaït ñoäng lieân quan ñeán vieäc tính cöôùc cuûa maùy.ÔÛ 
ñaây ta choïn Vi ñieàu khieån 8051 vì noù coù caùc ñaëc ñieåm noåi baät nhö maïch dao 
ñoäng ñöôïc tích hôïp saün beân trong ,vieäc laäp trình baèng ngoân ngöõ (Assembly) deã 
daøng ,ngöôøi laäp trình coù theå can thieäp vaøo töøng bit cuûa caùc port xuaát nhaäp baèng 
moät leänh duy nhaát. 
 - Khoái ñieàu khieån trung taâm coù nhieäm vuï ñieàu khieån moïi hoaït ñoäng cuûa maùy 
tính cöôùc, vieäc ñieàu khieån bao goàm caùc hoaït ñoäng sau: 
 - Nhaän bieát traïng thaùi nhaác maùy, gaùc maùy cuûa thueâ bao. Khi thueâ bao nhaác 
maùy, khoái ñieàu khieån seõ nhaän bieát traïng thaùi cuûa thueâ bao vaø hieån thò ñoàng hoà 
saún saøng nhaän tín hieäu xung töø baøn phím. 
 - Nhaän bieát xung quay soá vaø giaûi maõ xung quay soá (neáu thueâ bao söû duïng 
daïng pulse) hoaëc nhaän caùc bit döõ lieäu ñaõ ñöôïc giaûi maõ töø khoái giaûi maõ tone ñeå 
bieát soá maø thueâ bao muoán goïi. Sau ñoù CPU kieåm tra xem soá goïi laø quoác teá, lieân 
tænh hay noäi haït, CPU seõ ñieàu khieån cho ra giaù tieàn cuï theå cho töøng nöôùc, töøng 
tænh, noäi haït vôùi thôøi gian töông öùng khaùc nhau ñöôïc vieát trong chöông trình. 
II. KHOÁI TAÏO XUNG CK: 
 K Trong maùy tính cöôùc, taát caû caùc hoaït ñoäng cuûa maïch ñeàu coù lieân quan ñeán xung 
clock cung caáp cho CPU. Vì caùc boä Timers/Counters seõ döïa vaøo taàn soá xung clock naøy 
maø thöïc hieän caùc coâng vieäc ñöôïc laäp trình saün vaø ngöôøi laäp trình cuõng döïa vaøo taàn soá 
xung naøy ñeå vieát chöông trình trì hoaõn cuûa maùy. 
 K Vi ñieàu khieån 8051 coù 2 Timer beân trong ,khi döôïc duøng laøm ñoàng hoà thì caùc Timer 
seõ ñeám giôø theo taàn soá thaïch anh gaén vaøo XTAL1 vaø XTAL2. Ta choïn thaïch anh coù 
taàn soá laøm vieäc laø 7,373 MHz. Caùc tuï C1 , C2 duøng ñeå oån ñònh taàn soá dao ñoäng cuûa 
thaïch anh. 
18
19
C2 
C1 X1 
 8031 
 X2 
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 19
III. KHOÁI RAM – ROM: 
- 8051 coù khaû naêng môû roäng boä nhôù leân ñeán 64Kb boä nhôù chöông trình(ROM) vaø 64Kb 
boä nhôù döõ lieäu ngoaøi(RAM). Khi duøng theâm boä nhôù ngoaøi ,Port 0 khoâng coøn laø Port I/O 
thuaàn tuyù nöõa .Noù ñöôïc keát hôïp giöõa Bus döõ lieäu (D0 ÷ D7) vaø Bus ñòa chæ cuûa byte thaáp 
(A0 ÷ A7) baèng tín hieäu choát ALE ñeå choát byte thaáp cuûa ñòa chæ khi baét ñaàu moãi chu kyø 
boä nhôù .Trong nöûa chu kyø ñaàu cuûa boä nhôù ,byte thaáp cuûa ñòa chæ ñöôïc caáp cho Port 0 vaø 
ñöôïc choát baèng xung ALE. Moät IC choát 74HC373 (hoaëc töông ñöông ) seõ giöõ byte ñòa 
chæ thaáp trong phaàn coøn laïi cuûa chu kyø boä nhôù .Trong nöûa sau cuûa chu kyø boä nhôù Port 0 
ñöôïc duøng nhö Bus döõ lieäu vaø ñöôïc ñoïc hoaëc ghi tuyø theo leänh. 
 1. ROM : 
- Boä nhôù ROM (Read Only Memory) laø boä nhôù ñöôïc thieát keá ñeå löu tröõ caùc döõ lieäu coá 
ñònh. Trong luùc hoaït ñoäng bình thöôøng, döõ lieäu môùi khoâng theå ñöôïc ghi vaøo ROM maø 
döõ lieäu chæ coù theå ñöôïc ñoïc töø ROM. Khi ROM ñöôïc laäp trình thì khi ngöøng caáp nguoàn 
caùc döõ lieäu beân trong ROM khoâng bò maát. 
- EPROM (Esarable Programable ROM) laø loaïi ROM coù theå laäp trình laïi ñöôïc .Trong 
maïch tính cöôùc , ñeå coù theå thoûa maõn nhu caàu thò tröôøng do giaù tính cöôùc ôû moãi thôøi ñieåm 
coù theå khaùc nhau .Ta caàn phaûi coù loaïi ROM coù theå ñöôïc xoùa vaø laäp trình laïi nhieàu laàn 
ñeå caäp nhaät laïi giaù cöôùc ñieän thoaïi. 
- Xuaát phaùt töø yeâu caàu treân , ta choïn loaïi ROM coù khaû naêng môû roäng boä nhôù chöông 
trình leân ñeán 8 Kbytes. Ñoù laø EPROM 2764 
 Giao tieáp giöõa 8051 vaø EPROM 
2 Truy xuaát boä nhôù chöông trình ngoaøi : 
- Truy xuaát giöõa 8051 vaø EPROM ñöôïc cho pheùp bôûi tín hieäu PSEN.Moät chu kyø maùy 
cuûa 8051 coù 12 xung nhòp , khi söû duïng thaïch anh 7,3728 Mhz thì xung nhòp cuûa 8051 laø 
D Q
74HC373 
G 
 Port 0 
 EA 
8051 
 ALE 
 Port 2 
 PSEN 
 D0 – D7 
A0 – A7 
 EPROM 
A8 – A15 
OE 
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 20
 T = s 3,5 
3728,7
12 µ= Trong moät chu kyø maùy seõ coù 2 xung ALE vaø 2 byte ñöôïc ñoïc töø 
boä nhôù chöông trình (neáu leänh hieän haønh laø leänh 2 byte thì byte thöù hai deõ ñöôïc loaïi boû) 
2. RAM : 
- Boä nhôù RAM (Random Access Memory) laø boä nhôù truy xuaát ngaãu nhieân coù nghóa laø 
baát kyø oâ nhôù naøo cuõng deã daøng truy xuaát trong boä nhôù. 
- Boä nhôù RAM duøng ñeå löu tröõ taïm thôøi chöông trình vaø döõ lieäu, noäi dung caùc oâ nhôù 
trong RAM thay ñoåi lieân tuïc khi vi xöû lyù thöïc hieän chöông trình.Tuy nhieân ,döõ lieäu löu 
tröõ taïm thôøi trong RAM seõ bò xoaù saïch khi maát nguoàn cung caáp .Ñieàu naøy coù theå ñöôïc 
khaéc phuïc baèng caùch duøng nguoàn döï phoøng . 
- Do yeâu caàu cuûa maïch tính cöôùc coù theå nhôù tôùi 255 cuoäc ñaøm thoaïi bao goàm soá tieàn, 
soá cuoäc goïi,… neân SRAM ñöôïc choïn seõ laø 6264 coù dung löôïng nhôù 8 Kbytes 
 NC 
 Giao tieáp giöõa 8051 vaø RAM 
, Truy xuaát boä nhôù döõ lieäu ngoaøi : 
- Boä nhôù döõ lieäu ngoaøi RAM 6264 ñöôïc cho pheùp ghi/ ñoïc baèng caùc tín hieäu WR vaø 
RD ( caùc chaân P3.6 vaø P3.7 thay ñoåi chöùc naêng ). 
- Keát noái Bus ñòa chæ vaø Bus döõ lieäu giöõa RAM 2764 vaø 8051 cuõng gioáng nhö 
EPROM 6264 vaø do ñoù cuõng coù theå leân ñeán 8 Kbytes. Ngoaøi ra , chaân RD cuûa 8051 
ñöôïc noái tôùi chaân cho pheùp xuaát (OE) cuûa RAM vaø chaân WR ñöôïc noái tôùi chaân ghi 
(WR) cuûa RAM. 
? Keát Noái Boä Nhôù EPROM Vaø RAM Vaøo CPU : 
- Boä nhôù EPROM vaø RAM ñöôïc keát noái vôùi CPU thoâng qua caùc bus ñòa chæ, bus döõ 
lieäu vaø bus ñieàu khieån. Khaû naêng môû roäng boä nhôù cuûa 8051 leân ñeán 64Kbytes nhöng 
trong phaïm vi maùy tính do chöông trình laøm vieäc cuõng töông ñoái lôùn neân ta choïn hai 
IC nhôù SRAM vaø EPROM coù toång dung löôïng nhôù laø 16 Kbytes. 
 D0 – D7 
A0 – A7 
 RAM 
A8 – A15 
OE 
WR 
CS 
 Po t 0 
 EA 
8051 
 ALE 
 Port 2 
 RD 
 WR 
 PSEN 
D Q
74HC373 
G 
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 21
a. Bus ñòa chæ (Address Bus): 
Laø bus moät chieàu chuyeån taûi thoâng tin töø CPU 8051 ñeán caùc IC nhôù. Do 8051 
coù theå ñieàu khieån boä nhôù môû roäng leân ñeán 64 Kbytes töùc laø coù tôùi 16 ñöôøng ñòa chæ 
ra A0 ….A15 maø caùc IC nhôù chæ coù 16 Kbytes. Vì vaäy ta söû duïng 13 bit thaáp ñòa chæ 
cuûa CPU töø A0 … A12 ñeå keát noái song song vôùi 13 ñöôøng ñòa chæ cuûa SRAM vaø 
EPROM. Caùc bit ñòa chæ coøn laïi seõ duøng cho vieäc ñieàu khieån. 
b. Bus döõ lieäu (Data Bus): 
Laø bus döõ lieäu hai chieàu coù chöùc naêng chuyeån döõ lieäu qua laïi giöõa CPU vaø caùc IC nhôù. Do 
vaäy 8 ñöôøng döõ lieäu cuûa CPU 8031 seõ noái song song vôùi 8 ñöôøng döõ lieäu cuûa SRAM vaø 
EPROM. 
c. Bus ñieàu khieån (Control Bus): 
Bus ñieàu khieån laø bus khaù quan troïng trong maïch vì noù quyeát ñònh xem khi naøo 
SRAM hay EPROM seõ ñöôïc ñoïc döõ lieäu vaø khi naøo SRAM seõ ghi döõ lieäu. 
 Moãi SRAM vaø EPROM coù dung löôïng nhôù 8 Kbytes neân vieäc qui ñònh noäi dung ñòa 
chæ oâ nhôù nhö sau: 
- Ñoái vôùi EPROM do CPU coù ñaëc ñieåm khi maùy ñöôïc caáp nguoàn thì seõ baét ñaàu hoaït 
ñoäng ôû ñòa chæ 0000H neân ñòa chæ cuûa EPROM baét ñaàu töø 0000H vaø keát thuùc ôû ñòa chæ 
1FFFH. 
- Ñoái vôùi SRAM, ñòa chæ baét ñaàu laø 8000H vaø keát thuùc ôû 9FFFH. Sôû dó ta choïn ñòa 
chæ naøy vì theo thieát keá phaàn cöùng chaân ñòa chæ cuoái cuøng cuûa CPU (A15) ñöôïc duøng laøm 
chaân ñieàu khieån vaø ñöôïc noái ñeán chaân CS\ cuûa SRAM. 
IV. KHOÁI NGUOÀN : 
- +
1
2
3
4
47
LM7805
1
2
3
VI
G
N
D
VO
6V
+
1000u+
1000u
1
1
1N4007
1 2
1N4007
1
2
Os
TD
9V
O
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 22
  Cung caáp nguoàn 5V cho taát caû caùc vi maïch töø nguoàn beân ngoaøi 9V thoâng qua vi maïch 
oån aùp 7805, caùc tuï duøng keøm theo maïch ñeå naâng cao chaát löôïng nguoàn ñieän cho maïch. 
  Do SRAM löu tröõ caùc thoâng soá cuûa cuoäc goïi neân phaûi coù moät nguoàn pin döï phoøng cho 
SRAM ñeå ñeà phoøng caùc döõ lieäu bò maát khi nguoàn khoâng coøn. Nguoàn döï phoøng laø moät pin coù 
theå saïc laïi ñöôïc coù giaù trò ñieän aùp baèng 3.6 VDC. 
K Nguyeân Lyù Hoaït Ñoäng : 
- Khi coù nguoàn 9V qua boä naén ñieän caàu , coâng taéc baät ON qua IC oån aùp 7805 ñöa vaøo 
nuoâi maïch ,ñoàng thôøi nguoàn qua D1 qua ñieän trôû 47Ω saïc vaøo pin 6V. 
- Khi maát ñieän ,pin 6V seõ phoùng qua D2 cung caáp nguoàn cho maïch giuùp maïch khoâng 
bò maát döõ lieäu.(Tuï 1000µF laø tuï taêng cöôøng ) 
2 Maïch pick up cho boä nhôù: 
∪ Nguyeân lyù: 
Khi coù nguoàn 5V, moät phaàn qua D1 , R vaø naïp vaøo pin, moät phaàn nuoâi boä nhôù 
qua D2. 
Khi maát ñieän, pin laäp töùc phoùng qua D3 nuoâi boä nhôù. 
∪ Thieát keá: 
 - Choïn D1, D2, D3 laø loaïi 1N4007 
 - Vcc laø 5V 
 - Suït aùp qua Diode laø 0.7V 
 - Ñieän aùp nguoàn nuoâi Ram laø: 
 Vng Ram = Vcc – Vd = 5V – 0.7V = 4.3V 
 - Ñieän aùp cho nguoàn nuoâi pin döï tröõ: 
 Vpin = Vcc – Vd3 – VR = 3V 
 ⇒ VR = Vcc – Vd3 - Vpin 
 = 5V – 0.7V – 3V 
 ⇒ VR = 1.3V 
 maø VR = I.R 
3V
1N4007
D2
1 2
1N4007
D1
12
1N4007
D3
12
R6
1k
1
1
+5V
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 23
 Choïn doøng naïp cho pin I = 15mA 
 ⇒ R = Ω== 
mA 15
V 1,3
 6,86
I
RV 
 Choïn R = 220Ω 
K Maïch RESET: 
- Ñeå Reset CPU 8051 chaân RST (chaân reset cuûa 8051) phaûi ôû möùc cao ít nhaát trong 
hai chu kyø maùy. 
 Ta coù : Tmaùy= µs 0,6 12
MHz 3728,7 = 
Ñeå Reset heä thoáng T phaûi ≥ 2Tmaùy ⇒ T = s 3,2 MHz 3728,7
24 µ= 
Bieán trôû caàn ñuû nhoû ñeå traùnh tröôøng hôïp doøng naïp cho tuï phaân cöïc beân trong 
8051 choïn R1 = 100Ω. Ñieän aùp ôû chaân RST laø: 
 RSTV = τ
− t 
e.VCC ⇒ 
CC
RST
V
Ve =τ
− t 
RST
CC
V
Vlnt =τ ⇒ 
RST
CC
V
Vln
t =τ 
 τ = RC : Thôøi haèng naïp ñieän cuûa maïch 
 Giaû söû ñieän aùp cuûa Vrst laø 3V 
 ⇒ RC = 3.9 10-6 
 Do Vrst coù theå lôùn hôn → ñeå ñaûm baûo doøng reset ta choïn: 
 C = 10µF ; R = 8.2 K 
 Maïch reset heä thoáng: 
RST
CC
V
VlnR
tC =
+5V+5V
RST
100
SW
8,2K
10uF
 Ñoà Aùn Moân Hoïc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 24
Chaân Reset cuûa 8051 taùc ñoäng ôû möùc cao 
- Khi cho nguoàn 5V vaøo, thì tuï ñöôïc naïp ñaày. Sau ñoù tuï ñöôïc phoùng qua chaân 
reset vaø toaøn boä maïch ñöôïc reset töø ñaàu.Maïch Reset phaûi thoûa maõn 2 chöùc naêng: 
 Reset luùc caáp nguoàn vaø Reset baèng tay. 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 24 Khoa Ñieän – Ñieän Töû 
VCC
VCC
PORT1
33 pF
7,3728 MHz
33 pF
C1
10 uF
R1
8,2 K
SW
AM2764
10
9
8
7
6
5
4
3
25
24
21
23
2
20
22
27
1
11
12
13
15
16
17
18
19
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
CE
OE
PGM
VPP
O0
O1
O2
O3
O4
O5
O6
O7
D2
1
2
HM6264A
10
9
8
7
6
5
4
3
25
24
21
23
2
20
26
22
27
11
12
13
15
16
17
18
19
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
CS1
CS2
OE
WE
D0
D1
D2
D3
D4
D5
D6
D7
R1
220
D3
1
2
D1
1N4007
1
2
3V
VCC
1
74LS373
3
4
7
8
13
14
17
18
1
11
2
5
6
9
12
15
16
19
D0
D1
D2
D3
D4
D5
D6
D7
OC
G
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
3,3k
8051
31
19
18
9
12
13
14
15
1
2
3
4
5
6
7
8
39
38
37
36
35
34
33
32
21
22
23
24
25
26
27
28
17
16
29
30
11
10
EA/VP
X1
X2
RESET
INT0
INT1
T0
T1
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
LED
DISPLAY
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 25 Khoa Ñieän – Ñieän Töû 
IV. KHOÁI CHOÁT ÑÒA CHÆ: 
 Trong maïch tính cöôùc naøy, ta söû duïng IC choát 74LS373 coù taùc duïng choát ñòa 
chæ 8 bit thaáp vaø 8 bit data ñeå giao tieáp giöõa Ram, Rom vaø 8051. 
- 8 ngoõ vaøo cuûa 74LS373 ñöôïc keát noái vôùi 8 ngoõ AD0 … AD7 (Port 0) cuûa CPU 8051. 
- 8 ngoõ ra cuûa 74LS373 ñöôïc keát noái vôùi caùc ñöôøng ñòa chæ cuûa SRAM vaø EPROM. 
 2 Vi maïch 74LS373 coù 8 Flip-Flop D vaø 8 coång ñeäm ñieàu khieån. Tín hieäu ñieàu 
khieån choát ñòa chæ ñöôïc CPU ñöa ra ôû chaân ALE (Address Latch Enable) ñöôïc noái 
vaøo chaân C (Chip) cuûa 74LS373. 
 2 ÔÛ nöûa chu kyø ñaàu cuûa chöông trình laøm vieäc, caùc Flip-Flop D cuûa 74LS373 
seõ choát caùc ñòa chæ do CPU ñöa tôùi, khi ñoù chaân C ôû möùc 1. ÔÛ nöõa chu kyø coøn laïi, 
C ôû möùc 0 döõ lieäu xuaát ra ôû Q chính laø döõ lieäu ôû caùc ngoõ vaøo tröôùc ñoù, luùc naøy caùc 
ñöôøng port 0 seõ raõnh roãi ñeå nhaän vaø xuaát döõ lieäu ñeán SRAM vaø EPROM. 
V. KHOÁI NHAÄN AÂM HIEÄU – GIAÛI MAÕ BAØN PHÍM (ÑAÛO CÖÏC – DTMF THU): 
 K Trong phaïm vi thieát keá cuûa Ñoà Aùn Moân Hoïc ta chæ quan taâm ñeán caùch tính cöôùc 
baèng phöông phaùp ñaûo cöïc .Coù nghóa laø thueâ bao coù ñaêng kyù ñaûo cöïc taïi Toång ñaøi. 
 - Khi maùy ñöôïc caøi ôû cheá ñoä ñaûo cöïc, chaân 1 vaø chaân 2 seõ ñeå hôû, chaân RXD vaø 
TXD khoâng coøn ñöôïc noái vôùi nhau nöõa. 
- Ñeå tính tieàn cuoäc goïi, thueâ bao baét ñaàu nhaác maùy, khi toång ñaøi ñöôïc yeâu 
caàu phuïc vuï thì seõ phaùt tín hieäu môøi quay soá vaøo chaân 6 vaø chaân 7, tín hieäu vaøo 
chaân 6 seõ laøm cho ISO1 hoaït ñoäng vaø kích transistor daãn keùo theo chaân RXD seõ 
ñöôïc daãn xuoáng mass töùc laø ôû möùc logic 0 vaø TXD thì ñöôïc noái Vcc cho neân noù 
vaãn ôû möùc logic 1. 
 - Tín hieäu qua ISO1 ñi ra maùy ñieän thoaïi theo chaân 5 cuûa head7, tín hieäu töø 
chaân 7 cuûa khoái giaûi maõ baøn phím sau ñoù ñi ra maùy ñieän thoïai ñeå baùo hieäu môøi 
goïi. 
- Thueâ bao baét ñaàu quay soá, tín hieäu vaøo maïch laøm cho ISO1 daãn, töùc laø chaân 
RXD ôû möùc logic 0 vaø TXD ôû möùc logic 1. Chöông trình phaàn meàm seõ nhaän bieát 
vaø xöû lyù raèng vôùi möùc logic cuûa hai chaân naøy thì cho pheùp maïch hoaït ñoäng ôû cheá 
ñoä ñaûo cöïc. 
- Sau khi toång ñaøi nhaän bieát raèng thueâ bao naøy ñaõ thöïc hieän ñaêng kyù ñaûo cöïc 
taïi toång ñaøi thì toång ñaøi seõ baét ñaàu tính cöôùc sau khi maùy thueâ bao beân kia nhaác 
maùy. Ngoaøi vieäc toång ñaøi laøm nhieäm vuï chuyeån maïch thoâng thoaïi noù coøn ñöa tín 
hieäu ñaûo cöïc veà maùy thueâ bao. Tín hieäu ñaûo cöïc naøy seõ ñöa vaøo chaân ñaûo –IN cuûa 
MT8870. Laäp töùc seõ coù tín hieäu ngoõ ra chaïy veà INT0 cuûa vi ñieàu khieån 8051 vaø 
chöông trình phaàn meàm seõ ñieàu khieån ngoû ra cho pheùp ñoïc RD\ taùc ñoäng vaøo 
chaân TOE cuûa MT8870 cho pheùp xuaát döõ lieäu vaøo CPU xöû lyù tính tieàn hieån thò qua 
led. Tín hieäu sau khi vaøo MT8870 ñeå xöû lyù thì quay ra ñeå noái thoâng thoaïi vôùi maùy 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 26
thueâ bao. Khi cuoäc goïi keát thuùc maùy seõ hieån thò toaøn boä thôøi gian vaø soá tieàn keå töø 
khi thueâ bao beân kia baét ñaàu nhaác maùy. 
* Tính R5 
 - Khi thueâ bao nhaác maùy, doøng thoâng thoaïi caáp cho thueâ bao töø (20 –100 )mA 
Cho doøng cuûa toång ñaøi caáp cho thoâng thoaïi nhoû nhaát laø 20mA. 
Choïn opto laø 4N35, choïn doøng qua led laø 4mA, ñieän aùp suït treân led opto laø 
V = 2V. 
⇒ Doøng qua R5 laø: I5 = 20 – 4 = 16mA 
 Choïn R5 = 220Ω 
n Khoái Giaûi maõ DTMF: 
IC MT8870 seõ giaûi maõ xung DTMF ra soá BCD 4 bit vaø ñöa tôùi CPU, ñoàng 
thôøi cuõng taïo ra moät tín hieäu ngaét ôû chaân 15 (STD) ñöa tôùi chaân INT0\ cuûa CPU 
taïo ngaét khi nhaän moät tín hieäu Tone vaøo. 
Chaân 8 vaø chaân 7 cuûa MT8870 ñöôïc noái tôùi moät thaïch anh 3,579 MHz, taàn soá 
cuûa thaïch anh naøy seõ ñem so saùnh vôùi caùc taàn soá cuûa DTMF ñeå taïo ra caùc soá BCD 
4 bit. 
Khi chaân 10 ôû möùc thaáp, MT8870 seõ taïo xung baùo cho CPU bieát qua chaân 
INT0\ ñeå taïo ngaét, khi ñoù CPU phaûi chuyeån sang cheá ñoä Tone. Luùc ñoù, vi maïch 
MT8870 seõ nhaäp caùc soá döôùi daïng tín hieäu caùc maõ soùng DTMF ñoàng thôøi caùc ngoõ 
ra Q1…Q4 ôû möùc toång trôû cao. 
Khi RD\ cuûa CPU ôû möùc thaáp vaø A15 cuûa CPU ôû möùc cao khi ñoù chaân 10 
(TOE) seõ ôû möùc cao, MT8870 xuaát ra döõ lieäu. 
Sô ñoà keát noái MT8870: 
VCC
MT 8870
1
2
3
4
5
6
7
8
9 10
11
12
13
14
15
16
17
18
IN+
IN-
GS
VREF
IC
IC
OSC1
OSC2
GND TOE
Q1
Q2
Q3
Q4
STD
EST
ST/GT
VCC
3,57MHz
R12
150K
104100K 100K
330K
104
74LS02
2
3
1
74LS02
2
3
1
INT0
P.0
A15
RD
CPU
Ω=== K125,1
16
2
I
V
R
5
opto
5
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 27
VI. KHOÁI GIAÛI MAÕ ÑÒA CHÆ – HIEÅN THÒ : 
 - Yeâu caàu maïch naøy phaûi coù ngoõ ra ñeå giaûi maõ led 7 ñoaïn döïa vaøo caùc bit döõ 
lieäu ñöa veà töø maïch giaûi maõ baøn phím phía tröôùc. 
 - Khi coù tín hieäu caùc bit döõ lieäu ghi treân boä nhôù ngoaøi cuûa CPU töø caùc ngoõ ra 
cuûa maïch giaûi maõ baøn phím, chöông trình phaàn meàm seõ xöû lyù cho ra caùc ñòa chæ 
caùc led ñeå cho pheùp caùc ñòa chæ led naøo hoaït ñoäng thoâng qua port T1 töùc laø P3.5, 
döõ lieäu naøy ñöa vaøo hai chaân A vaø B cuûa 74164 nhaèm xuaát ñòa chæ ra led 7 ñoaïn. 
 - Muoán maïch hoaït ñoäng toát thì chaân CLEAR phaûi luoân ôû vò trí tích cöïc laø +Vcc. 
 - Tín hieäu xung clock vaøo ñeå ñeám nhòp xung cho vieäc giaûi maõ ra led 7 ñoaïn. Ñeå 
coù xung clock thì chaân WR\ cuûa vi ñieàu khieån 8051 töùc laø P3.7 phaûi ôû möùc logic 0 
vaø chaân 28 cuûa 8051 ôû ñòa chæ 8000H töùc laø möùc logic 1. Vì choïn RAM khoâng tích 
cöïc cho neân hai tín hieäu naøy phaûi qua hai coång NOR cuûa vi maïch 7402, tín hieäu 
cuoái cuøng laø ôû möùc logic 1. 
 - Khi coù xung clock taùc ñoäng vaøo chaân CK cuûa vi maïch 74164, keát hôïp vôùi döõ 
lieäu ôû P3.5 cuûa vi ñieàu khieån 8031 ñeå xuaát caùc ngoõ ra Q1 ñeán QH. Moãi ngoõ ra noái 
vôùi Katod chung cuûa moãi led 7 ñoaïn. 
 - Vì caùc led 7 ñoaïn coù coâng suaát lôùn cho neân ta phaûi khueách ñaïi coâng suaát caùc 
tín hieäu ngoõ ra töø Q1 ñeán QH tröôùc khi ñöa vaøo Katod cuûa led 7 ñoaïn. ÔÛ ñaây ta söû 
duïng transistor B562 vaø ñieän trôû R = 3.3kΩ ñeå laøm maïch khueách ñaïi. 
 - Ñoàng thôøi cuøng luùc P3.5 cuûa 8051 xuaát döõ lieäu ra 74164 thì caùc port I/O töø 
P1.0 ñeán P1.7 cuûa vi ñieàu khieån 8031 cuõng xuaát döõ lieäu ra tröïc tieáp anod led 7 
ñoaïn. Noù seõ ñieàu khieån ñoàng loaït anod caùc thanh cuûa led 7 ñoaïn hoaït ñoäng. Döïa 
vaøo chöông trình phaàn meàm ñieàu khieån, caùc port I/O cuûa 8051 keát hôïp vôùi phaàn 
giaûi maõ ñòa chæ vôùi vi maïch 74164, ñeå taïo ra moät döõ lieäu sau cuøng ñöôïc hieån thò 
qua 8 led 7 ñoaïn maø ta coù theå hieåu ñöôïc thoâng qua caùc con soá hieån thò nhö soá giaù 
cöôùc cuoäc goïi, soá ñieän thoaïi ñaõ goïi, giôø cuoäc goïi, soá laàn goïi ….. 
 - Cuõng nhö caùc tín hieäu ra töø Q1 y QH , ngoõ ra cuûa Port 1.0 cuõng phaûi qua maïch 
khueách ñaïi ,vì neáu khoâng thì caùc tín hieäu ngoõ ra seõ bò Led 7 ñoaïn coù coâng suaát lôùn 
huùt heát doøng gaây suït aùp lôùn daãn ñeán hoûng maïch .ÔÛ maïch khueách ñaïi naøy ta söû 
duïng 8 Transistor loaïi C945 ñieän trôû coù trò soá R13 = 10k vaø 8 ñieän trôû R14 = 220Ω. 
Tính R12 ,R13 ,R14 
Tính toaùn giaù trò Rb(R12) vaø BJT A1015 
Transistor A1015 coù caùc thoâng soá : 
Loaïi Si coù : 
+ Vγ (ñieän aùp ngöôõng VBE ) = 0,5V 
+ Vδ (ñieän aùp khueách ñaïi BE) = 0.65V 
+ VBES (ñieän aùp baõo hoøa BE) =0,8V 
+ VCES (ñieän aùp baõo hoøa CE) = 0,2V 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 28
+ ICS =100mA 
+ β (heä soá khueách ñaïi hfe) =70 → 240 
+ P (Coâng suaát lôùn nhaát) = 400mW 
+ f (Taàn soá giôùi haïn ) = 80 MHz 
ÔÛ ñaây ta söû duïng Transistor nhö moät khoùa ñieän töû ñoùng/ ngaét 
Qsat → V0 = 0 → Coâng taéc ñoùng . 
Qoff → V0 = 0 VCC → Coâng taéc hôû . 
+ Vi = 0 → Qoff 
 Ic = 0 → V0 = Vcc 
+ Vi = V(möùc 1) → Qsat 
VBE = VBES ; IB = IBS 
VCE = VCES ; IC = ICS 
Cho Vcc = 5 V ,βmin = 80 
Ta coù : Ibs ≥ 
min
CS
β
I
 Rb = 
BS
BESCC
12 I
VVR −= 
→ ( )
CS
minBESCC
12 I
βVVR −≤ ; ( ) Ω=−≤ K 36,3
1,0
80.8.05R12 
Choïn R12 = 3,3 KΩ 
- Tính toaùn ñieän aùp vaø doøng ñeå Led saùng 
- Choïn aùp qua Led laø 2V 
- Doøng qua Led 10mA 
Vì Led qua 2 Transistor neân qua 2 moái noái CE1 vaø CE2 
Ñieän trôû haïn doøng vaø aùp R14 
LED
LED2CE1CECC
14 I
VVVVR −−−= 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 29
 Ω=−−−= 260
01,0
22,02,05R14 
 Choïn R = 260 Ω 
- Choïn Trasistor C 945 coù : 
 Pmax = 200 mW 
 Ic max =100 mA 
 hfe = 200 
- Ñeå töøng ñoaïn Led ñöôïc hieån thò thì C945 phaûi daãn baõo hoøa 
 Choïn doøng cho töøng Led : 
 Ics =50 mA Maø : Ibs * hfe ≥ Ics = 50mA 
⇒ Ibs = mA 25,0
200
50 = 
 Ω=−=−= K 4,8
25,0
3,04,2
I
VV
R
bs
2ce1p
13 
Choïn R13 = 10 KΩ 
- Ñeå Relay chuyeån traïng thaùi , Q phaûi daãn baõo hoøa 
 Relay = 300 Ω . Do ñoù ta phaûi choïn R6 sao cho 
 hfe * Ibs ≥ mA 16 =
300
V5
 ⇒ mA 0,08 =≥
200
16Ibs Choïn Ibs =0,25 mA 
⇒ Ω=−=−== K 8,4 
25,0
3,04,2
I
VV
RR
bs
2ce1p
6b 
 Choïn R6 = 10 KΩ 
Tính toaùn caùc ñieän trôû, transistor: 
Ñoä saùng cuûa led 7 ñoaïn phuï thuoäc doøng ñieän chaïy qua chuùng. ÔÛ cheá ñoä saùng 
bình thöôøng, ñieän aùp rôi coá ñònh treân moät led thöôøng laø (1.6 – 2.4)V. Doøng ñieän 
chaïy qua led laø 20mA. Vì vaäy ta phaûi duøng ñieän trôû ñeå haïn doøng. Maët khaùc ñoái vôùi 
hoï TTL 74 doøng ra cöïc ñaïi laø 16mA, do ñoù theå laáy ngoõ ra cuûa vi maïch ñeå kích led. 
Nhö vaäy ta phaûi duøng caùc transistor ñeäm ñeå kích cho caùc led saùng. 
Vôùi doøng ñieän taûi laø laø 20mA, ta duøng caùc transistor A vaø C945, hai 
transistor coù doøng taûi cöïc C lôùn vaø chòu ñöôïc ñieän aùp khaù cao, maø ta chæ duøng 
nguoàn cung caáp laø 5V. Neân caùc yeâu caàu veà kyõ thuaät ñoái vôùi caùc transistor coi nhö 
thoûa vaø hai loaïi transistor naøy raát phoå bieán treân thò tröôøng. 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 30
Caû hai transistor ñeàu laøm vieäc ôû cheá ñoä baõo hoøa neân ta choïn chuùng coù caùc 
heä soá khueách ñaïi β nhoû. ÔÛ B562 choïn heä soá khueách ñaïi β = 20 vaø C 945 heä soá 
khueách ñaïi β = 35. 
Vì caùc transistor laøm vieäc ôû cheá ñoä baõo hoøa neân khi caùc transistor daãn ñieän, 
aùp rôi treân moái noái CE laø nhoû: 
 VCE = 0.3V 
Ta coù: IB B562 = IC B562 / β = 20mA / 20 = 1mA 
 IB C945 = IC C945 / β = 20mA /35 = 0.6 mA 
ÔÛ vi maïch loaïi TTL, möùc logic ra coù ñieän aùp: Möùc 0 = 0.8V 
 Möùc 1 = 3.5V 
R1 = [ VCC – (VL + VBE)] / IB B562 = [ 5V – (0.8 + 0.7)] / 1mA = 3.5 KΩ 
Choïn R1 = 3.3 KΩ 
R2 = (VCC – VBE )/ IB C945 = (5V – 0.7V) / 0.6mA = 7.2 KΩ 
Choïn R2 = 10 KΩ 
R3 coù taùc duïng haïn doøng qua led traùnh gaây hoûng led 
R3 = [VCC – (VCE1 + VCE2 + 2.4)]/ ITransistor 
 = [5-(0.3+0.3+2.4)]/ 20 = 100Ω. 
VIII. Nguyeân Lyù Hoaït Ñoäng Chung: 
Giaû söû thueâ bao söû duïng heä tone vaø ñaõ ñöôïc cho pheùp ñaûo cöïc, chaân 1 vaø 2 cuûa 
head 7 ñeå hôû ra. 
- Khi thueâ bao nhaác maùy tín hieäu töø toång ñaøi ñieän thoaïi göûi vaøo chaân 6 laøm cho 
ISO1 hoaëc ISO2 hoaït ñoäng tuøy theo ta choïn ñaàu vaøo laø 5 hay 6 cuûa head 7 laøm 
cho 4N351 hoaëc 4N352 hoaït ñoäng thì seõ coù doøng ñieän chaïy qua R4 ñi vaøo 
4N351 daãn hay qua R3 thì seõ laøm cho 4N352 daãn. 
- Khi 4N352 hoaït ñoäng, ñoàng nghóa vôùi chaân RXD cuûa 8031 xuoáng möùc logic 0. 
Chaân TXD vaãn ôû möùc logic 1, chöông trình phaàn meàm seõ hieåu vaø noù seõ taùc 
ñoäng theo cheá ñoä ñaûo cöïc. Tín hieäu INTERUP1 töø chaân 13 cuûa 8031 qua R6 
phaân cöïc cho Q1 laøm cho 2 tieáp ñieåm rôle ñoùng khi cuoän daây rôle hoaït ñoäng. 
- Tín hieäu töông töï töø toång ñaøi ñöa ñeán qua R8 tieáp tuïc qua C7 qua R9 vaø ñeán 
chaân ñaûo cöïc –IN cuûa IC MT8870. 
+
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 31
- Khi MT8870 nhaän ñöôïc tín hieäu ñaûo cöïc chaân 15 töùc laø STD seõ leân möùc logic 
1 vaø laøm cho chaân 12 cuûa vi ñieàu khieån 8031 ngaét T0. Ñoàng thôøi chaân 28 cho 
hoaït ñoäng möùc logic 1 coù ñòa chæ 8000, chaân 17 cuûa 8031 laø chaân RD cho pheùp 
ñoïc döõ lieäu ôû möùc logic 0. 
- Tín hieäu töø chaân 28 qua IC5A thì ôû möùc logic 0 vaø keát hôïp chaân 17 cuûa 8031 ôû 
möùc logic 0 qua IC5C thì tín hieäu seõ laø 1, laøm cho chaân TOE cuûa MT8870 taùc 
ñoäng. 
- Chaân TOE (chaân 10) cuûa MT8870 seõ taùc ñoäng khi ngoû vaøo ôû möùc logic 1 vaø 
xuaát ra ôû ngoû ra Q1 ñeán Q4 laø Data seõ ñöa veà CPU ñeå ñieàu khieån boä phaän giaûi 
maõ ñòa chæ. 
- Ñeå cho khoái giaûi maõ hoaït ñoäng thì phaûi coù xung clock vaøo chaân QA ñeán QH 
cuûa IC 741641 vaø QA ñeán QB cuûa IC 741642. Luùc naøy, chaân 16 laø chaân cho pheùp 
vieát cuûa 8031 ñang ôû möùc logic 0 neân ngoû ra cuûa IC5B ôû möùc logic 1 töùc laø coù 
xung ñi vaøo IC74164 neân cho pheùp chaân A, B göûi veà chaân timer1 cuûa 8031, 
CPU xöû lyù cho data ra port 1. 
- Khi coù xung clock taùc ñoäng thì ñoàng thôøi caùc chaân QA ñeán QH cuûa IC 741641 
vaø QA ñeán QB cuûa IC 741642 cuõng taùc ñoäng vaøo taát caû caùc chaân katot cuûa heä 
thoáng 10 led 7 ñoaïn nhaèm taïo cho 10 led 7 ñoaïn saún saøng hoaït ñoäng khi coù taùc 
ñoäng cuûa port 1 töø CPU göûi ñeán. 
- CPU xöû lyù caùc söï kieän ñöa veà thoâng qua chöông trình quaûn lyù ñöa veà 
EPROM, vaø RAM ñeå ñöa ra ñòa chæ giaûi maõ thoâng qua 10 led 7 ñoaïn. 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 32
 THIEÁT KEÁ CHÖÔNG TRÌNH VI XÖÛ LYÙ 
 5¤5 
I.n GIÔÙI THIEÄU VEÀ CAÙC VUØNG RAM NOÄI TRONG 8051: 
 - Trong IC vi ñieàu khieån 8051 coù chöùa 128 byte RAM töø ñòa chæ 20H y 7FH. Trong 
ñoù caùc byte töø 20H – 7FH duøng cho caùc muïc ñích ñaëc bieät , coøn ñòa chæ töø 30H – 7FH 
duøng cho muïc ñích thoâng thöôøng . 
 - Trong chöông trình ta söû duïng caùc vuøng RAM töø : 
n 30H ÷ 4FH: Vuøng laøm vieäc daønh cho thueâ bao thöù 1. 
n 50H ÷ 6FH: Vuøng laøm vieäc daønh cho thueâ bao thöù 2. 
n Ñòa chæ cuûa EPROM tö ø: 0000H ÷ 0FFFH duøng ñeå löu chöông trình xöû lyù cho 8051. 
n Ñòa chæ cuûa RAM töø : 1000H ÷ 13FFH duøng ñeå löu döõ lieäu cho caû 2 maùy. 
? Caùc thoâng soá duøng cho keânh 1: 
n 30H ÷ 38H :Löu Dial Tone. 
n 39H ÷ 3CH :Löu thôøi gian . 
n 3DH :Löu möùc cöôùc cuûa cuoäc goïi . 
n 3EH ÷ 47H : Löu tröõ tieàn cöôùc cuûa moät cuoäc goïi. 
n 48H : Löu taïm thôøi soá Dial Tone nhaän vaøo ñeå xöû lyù . 
n 4AH : Löu Flag cho maùy 1. 
n 4BH : Löu traïng thaùi cuõ cuûa maùy 1. 
? Caùc thoâng soá duøng cho keânh 2 : 
n 50 ÷ 58H : Löu Dial Tone 
n 59 ÷ 5CH : Löu thôøi gian 
n 5DH : Löu möùc cöôùc cuûa cuoäc goïi 
n 5E ÷ 67H : Löu giöõ tieàn cöôùc cuûa moät cuoäc goïi 
n 68H : Löu taïm thôøi soá Dial Tone nhaän vaøo ñeå xöû lyù . 
n 6AH : Löu Flag cho maùy 2. 
n 6BH : Löu traïng thaùi cuõ cuûa maùy 2. 
II. CAÙC KYÙ HIEÄU SÖÛ DUÏNG TRONG CHÖÔNG TRÌNH : 
- Ngoõ ra Delay Steering (STD) cuûa IC MT8870: 
 + Khi STD = 1 :MT8870 ñaõ nhaän ñöôïc moät caëp aâm hieäu coù taàn soá keùp vaø ñaõ 
chuyeån sang maõ nhò phaân . 
 + Khi STD = 0 : Caùc ngoõ ra cuûa Q0 ÷ Q3 cuûa MT8870 ôû traïng thaùi toång trôû cao. 
- Caùc côø hieäu söû duïng trong chöông trình : 
 + Flag = 0 : Thueâ bao ñang gaùc maùy . 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 33
 + Flag = 1 : Thueâ bao nhaác maùy. 
 + Flag = 2 : Thueâ bao ñang quay soá . 
 + Flag = 3 : Thueâ bao chuaån bò thoâng thoaïi . 
 + Flag = 4 : Thueâ bao ñang thoâng thoaïi . 
 + Flag = 5 : Thueâ bao gaùc maùy hay thueâ bao ñoái phöông gaùc maùy. 
 + Flag = 6 : Thueâ bao ñaõ gaùc maùy . 
III.K CAÙCH TÍNH THÔØI GIAN : 
 - Ñeå ñaûm baûo vieäc tính thoài gian moät caùch töông ñoái chính xaùx, ta duøng ngaét 
Timer 0, vôùi chu kyø ngaét laø 0,05s .Cöù sau 20 laàn ngaét chöông trình seõ caäp nhaät laïi 
thôøi gian moät laàn cho caùc thueâ bao ñang thoâng thoaïi . 
IV. LÖU ÑOÀ GIAÛI THUAÄT : 
 K Löu ñoà chöông trình tính cöôùc : 
BEGIN 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 34
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 35
- Chöông trình khi phaùt hieän ñöôïc thueâ bao ñaõ ngöøng thoâng thoaïi seõ tính giaù cöôùc cuûa cuoäc 
goïi baèng caùch kieåm tra soá Dial Tone. Neáu soá ñaàu laø 0 chöông trình seõ ñoïc 2 soá tieáp theo 
cuûa maõ vuøng ñeå tra vaøo baûng giaù lieân tænh. Ngöôïc laïi neáu laø soá noäi haït thoâng thöôøng (baét 
ñaàu baèng soá 8) thì seõ tính cöôùc phí cho cuoäc goïi noäi haït . 
 nnn GIAÛI THÍCH YÙ TÖÔÛNG PHAÀN MEÀMnnn 
m.Ñoïc caùc traïng thaùi: 
 - Chöông trình seõ queùt lieân tuïc vaø ñoïc vaøo caùc traïng thaùi hieän thôøi cuûa hai maùy ñieän 
thoaïi vaø caát vaøo moät byte taïm trong RAM noäi. Neáu phaùt hieän coù tín hieäu nhaác maùy ( NM = 
0, DC=1 hay ngöôïc laïi NM =1 ,DC=0) chöông trình seõ chuyeån sang traïng thaùi chôø nhaän soá 
ñieän thoaïi nhaán vaøo. Khi phaùt hieän ra STD =1, chöông trình seõ ñoïc tín hieäu quay soá do 
DTMF chuyeån ñoåi vaøo . Khi STD = 0 chöông trình seõ ngöng ñoïc DTMF. Ñoàng thôøi luùc naøy 
chöông trình seõ kieåm tra coù tín hieäu gaùc maùy hay ñaûo cöïc moät laàn nöõa chöa ? Neáu phaùt 
hieän coù söï ñaûo cöïc laàn nöõa treân ñöôøng daây thì chöông trình cho khôûi ñoäng boä Timer baét 
ñaàu tính giôø cho maùy ñang goïi .Ngöôïc laïi neáu ñoù laø tín hieäu ñoù laø gaùc maùy thì chöông trình 
seõ chuyeån sang traïng thaùi nhaác maùy trong moät laàn tieáp theo. 
 - Khi ñang thoâng thoaïi , neáu nhö nhaän thaáy coù söï ñaûo cöïc moät laàn nöõa treân ñoâi daây hay laø 
gaùc maùy ,chöông trình seõ ngöøng tính thôøi gian cho maùy goïi vaø seõ tính tieàn cöôùc cuûa cuoäc 
goïi ,ghi laïi trong RAM ngoaøi vaø hieån thò ra LED giaù tieàn.Sau ñoù neáu trong khoaûng thôøi 
gian 45’’ maø khoâng coù cuoäc goïi naøo ñöôïc thieát laäp thì chöông trình seõ ngöøng hieån thò ra 
LED ñeå tieát kieäm naêng löôïng vaø baûo veä LED. 
 - Luùc naøy neáu muoán xem laïi cuoäc goïi ta coù theå nhaán moät phím chöùc naêng .Chöông trình 
seõ cho pheùp hieån thò laïi thôøi gian vaø soá Dial Tone. Neáu nhaán tieáp moät laàn nöõa chöông trình 
seõ cho pheùp xem laïi giaù cöôùc cuûa cuoäc goïi. 
n Caùch ghi cöôùc : 
 - Ñeå tính cöôùc cuûa cuoäc goïi , ta xeùt soá ñaàu tieân nhaán vaøo. 
 + Neáu laø soá 0: Chöông trình seõ kieåm tra 2 soá tieáp theo .Neáu laø soá thöù 2 laø soá 8, chöông 
trình seõ tính cöôùc lieân tænh döïa vaøo maõ lieân tænh ví duï quay soá (058.831313). Neáu soá thöù 2 
laø soá 9, chöông trình seõ tính cöôùc di ñoäng ví duï (090.650823). 
 + Neáu khaùc 0: Chöông trình seõ kieåm tra soá goïi noäi haït. Neáu baét ñaàu laø 8 seõ tính cuôùc cho 
cuoäc goïi noäi haït . 
 + Khi goïi noäi haït thì caên cöù vaøo thôøi gian toång coäng ñeå tính cöôùc cöù moãi ñôn vò thôøi gian 
(2 phuùt laøm troøn) seõ tính laø 800 ñoàng , sau ñoù nhaân leân ra soá tieàn cuûa cuoäc goïi. 
 + Khi goïi lieân tænh thì chöông trình seõ caên cöù vaøo soá maõ vuøng sai ñoù tra vaøo baûng giaù ñeå tính 
 + Khi goïi di ñoäng thì chöông trình seõ caên cöù vaøo soá phuùt goïi ñeå tính cöôùc vì trong heä 
thoáng thoâng tin di ñoäng thì khoâng phaân bieät khoaûng caùch . 
CHÖÔNG TRÌNH ÑAÕ ÑÖÔÏC DÒCH BAÈNG MSC_51 MACRO ASSEMBLER.
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 36
_MCS-51 MACRO ASSEMBLER CHARGING 
DOS 8.0 (038-N) MCS-51 MACRO ASSEMBLER, V2.2 
OBJECT MODULE PLACED IN C:\CHARGING.OBJ 
ASSEMBLER INVOKED BY: C:\ASM51.EXE C:\CHARGING 
LOC OBJ LINE SOURCE 
 0004 1 COST EQU 4 
 4000 2 LED EQU 4000H 
 2000 3 DTMF1 EQU 2000H 
 3000 4 DTMF2 EQU 3000H 
 1000 5 RAMAY1 EQU 1000H 
 1020 6 RAMAY2 EQU 1020H 
0000 7 ORG 0000H 
0000 020030 8 LJMP START 
000B 11 ORG 000BH ;Dia chi ngat cho Timer 0 
000B 020326 12 LJMP TIME 
0030 15 ORG 0030H 
0030 75A882 16 START: MOV IE ,# 82H ;MAIN: 88 
0033 758901 17 MOV TMOD, # 01H ; 02H 
0036 758C3C 18 MOV TH0,# HIGH(-50000) ;(-30) 
0039 758AB0 19 MOV TL0,# LOW(-50000) 
003C 7930 20 MOV R1, # 30H 
003E 7A3E 21 MOV R2, # 62 
0040 770A 22 LOOP_MAIN: MOV @R1, # 0AH 
0042 09 23 INC R1 
0043 DAFB 24 DJNZ R2, LOOP_MAIN 
0045 754A00 25 MOV 4AH, # 00H 
0048 756A00 26 MOV 6AH, # 00H 
004B 754B03 27 MOV 4BH, # 03H 
004E 756B03 28 MOV 6BH, # 03H 
0051 753D00 29 MOV 3DH, # 00H 
0054 755D00 30 MOV 5DH, # 00H 
0057 754CFF 31 MOV 4CH, # 0FFH 
005A 754D00 32 MOV 4DH, # 00H 
005D 756D00 33 MOV 6DH, # 00H 
0060 756CFF 34 MOV 6CH, # 0FFH 
0063 757004 35 MOV 70H, # COST 
0066 D28C 36 SETB TR0 
0068 120076 37 MAIN: LCALL INT_TIME 
006B 120118 38 LCALL PROCESSING 
006E 1202D8 39 LCALL KEY_PRESS 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 37
0071 120391 40 LCALL DATA_IN 
0074 80F2 41 SJMP MAIN 
0076 902000 42 INT_TIME: MOV DPTR,# DTMF1 
0079 E0 43 MOVX A, @DPTR 
007A F548 44 MOV 48H, A 
007C 903000 45 MOV DPTR, # DTMF2 
007F E0 46 MOVX A, @DPTR 
0080 F568 47 MOV 68H, A 
0082 12009E 48 LCALL SUBINT_TIME1 
0085 902000 49 MOV DPTR, # DTMF1 
0088 1200D7 50 LCALL SUBINT_TIME2 
008B 791F 51 MOV R1, # 31 
008D 7930 52 MOV R1, # 30H 
008F 7850 53 MOV R0, # 50H 
0091 1201D3 54 LCALL SWAPPED 
0094 12009E 55 LCALL SUBINT_TIME1 
0097 903000 56 MOV DPTR, # DTMF2 
009A 1200D7 57 LCALL SUBINT_TIME2 
009D 22 58 RET 
009E 784A 59 SUBINT_TIME1: MOV R0,# 4AH 
00A0 B60011 60 CJNE @R0,# 00H,TH2 
00A3 E548 61 MOV A, 48H 
00A5 5403 62 ANL A, # 03H 
00A7 B54B03 63 CJNE A, 4BH ,SET1 
00AA 0200D6 64 JMP EXIT_INT1 
00AD 7601 65 SET1: MOV @R0, # 01H 
00AF F54B 66 MOV 4BH, A 
00B1 0200D6 67 JMP EXIT_INT1 
00B4 B60411 68 TH2: CJNE @R0, # 04H, TH3 
00B7 E548 69 MOV A,48H 
00B9 5403 70 ANL A,# 03H 
00BB B54B03 71 CJNE A, 4BH, SET2 
00BE 0200D6 72 JMP EXIT_INT1 
00C1 7605 73 SET2: MOV @R0, #05H 
00C3 F54B 74 MOV 4BH, A 
00C5 0200D6 75 JMP EXIT_INT1 
00C8 B6060B 76 TH3: CJNE @R0, # 06H,EXIT_INT1 
00CB E548 78 MOV A, 48H 
00CD 5403 79 ANL A,# 03H 
00CF B54B00 80 CJNE A,4BH,SET3 
00D2 7600 81 SET3: MOV @R0, # 00H 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 38
00D4 F54B 82 MOV 4BH, A 
00D6 22 83 EXIT_INT1: RET 
00D7 784A 84 SUBINT_TIME2: MOV R0, # 4AH 
00D9 B80220 85 CJNE R0,# 02H,EXIT_INT2 
00DC E548 86 MOV A,48H 
00DE 20E218 87 JB ACC.2, READ_DTMF 
00E1 5403 88 ANL A, # 03H 
00E3 B54B02 89 CJNE A, 4BH,SET4 
00E6 8014 90 SJMP EXIT_INT2 
00E8 B40307 91 SET4: CJNE A,# 03H, SET5 
00EB F54B 92 MOV 4BH, A 
00ED 7600 93 MOV @R0,# 00H 
00EF 0200FC 94 JMP EXIT_INT2 
00F2 F54B 95 SET5: MOV 4BH,A 
00F4 7603 96 MOV @R0, #03H 
00F6 0200FC 97 JMP EXIT_INT2 
00F9 1200FD 98 READ_DTMF: LCALL DICH 
00FC 22 99 EXIT_INT2: RET 
00FD 7937 100 DICH: MOV R1, # 37H 
00FF 7A08 101 MOV R2,# 08D 
0101 E0 102 MOVX A, @DPTR 
0102 03 103 RR A 
0103 03 104 RR A 
0104 03 105 RR A 
0105 540F 106 ANL A, # 0FH 
0107 B40A02 107 CJNE A, # 0AH, DICH_TONE 
010A 7400 108 MOV A, # 00H 
010C 87F0 109 DICH_TONE: MOV B, @R1 ; SAI SAI DICH_ TONE 
010E 09 110 INC R1 
010F A7F0 111 MOV @R1, B 
0111 19 112 DEC R1 
0112 19 113 DEC R1 
0113 DAF7 114 DJNZ R2,DICH_TONE 
0115 09 115 INC R1 
0116 F7 116 MOV @R1, A 
0117 22 117 RET 
0118 120168 118 PROCESSING: CALL SUBPROCES1 
011B 901020 119 MOV DPTR, # RAMAY2 
011E 120199 120 CALL SUBPROCES2 
0121 7F05 121 MOV R7,# 5 
0123 7A0E 122 WAITI: MOV R2,# 0EH 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 39
0125 7950 123 MOV R1,# 50H 
0127 C2B4 124 CLR P3.4 
0129 1201B7 125 LCALL OUT_LED 
012C D2B4 126 SETB P3.4 
012E 7A0E 127 MOV R2,# 0EH 
0130 7930 128 MOV R1,# 30H 
0132 C2B5 129 CLR P3.5 
0134 1201B7 130 LCALL OUT_LED 
0137 D2B5 131 SETB P3.5 
0139 DFE8 132 DJNZ R7, WAITI 
013B 7A1F 133 MOV R2, # 31 
013D 7930 134 MOV R1, # 30H 
013F 7850 135 MOV R0, # 50H 
0141 1201D3 136 LCALL SWAPPED 
0144 120168 137 CALL SUBPROCES1 
0147 901000 138 MOV DPTR, # RAMAY1 
014A 120199 139 CALL SUBPROCES2 
014D 7F05 140 MOV R7,# 5 
014F 7A0E 141 WAIT2: MOV R2,# 0EH 
0151 7930 142 MOV R1,# 30H 
0153 C2B4 143 CLR P3.4 
0155 1201B7 144 LCALL OUT_LED 
0158 D2B4 145 SETB P3.4 
015A 7A0E 146 MOV R2,# 0EH 
015C 7950 147 MOV R1,# 50H 
015E C2B5 148 CLR P3.5 
0160 1201B7 149 LCALL OUT_LED 
0163 D2B5 150 SETB P3.5 
0165 DFE8 151 DJNZ R7, WAIT2 
0167 22 152 RET 
0168 784A 153 SUBPROCES1: MOV R0,# 4AH 
016A B60113 154 CJNE @R0,# 01H,C2 
016D 7930 155 MOV R1, # 30H 
016F 7A09 156 MOV R2, # 09H 
0171 1201B1 157 LCALL DEL 
0174 7939 158 MOV R1,# 39H 
0176 7A05 159 MOV R2, # 05 
0178 7600 160 XOA_TG: MOV @R0, # 00H 
017A DAFC 161 DJNZ R2, XOA_TG 
017C 7602 162 MOV @R0,# 02H 
017E 8018 163 SJMP PR1 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 40
0180 B6030B 164 C2: CJNE @R0, # 03H,C3 
0183 793E 165 MOV R1,# 3EH 
0185 7A09 166 MOV R2, # 09H 
0187 1201B1 167 LCALL DEL 
018A 7604 168 MOV @R0,# 04H 
018C 800A 169 SJMP PR1 
018E B60507 170 C3: CJNE @R0,# 05H,PR1 
0191 783E 171 MOV R0,# 3EH 
0193 793C 172 MOV R1,# 3CH 
0195 12021E 173 LCALL POST_AGE 
0198 22 174 PR1: RET 
0199 784A 175 SUBPROCES2: MOV R0,# 4AH 
019B B80512 176 CJNE R0,# 05H,EXIT_P02 
019E 1201C8 177 LCALL WRITE 
01A1 7930 178 MOV R1,# 30H 
01A3 783E 179 MOV R0,# 3EH 
01A5 7A1F 180 MOV R2,# 31 
01A7 1201D3 181 LCALL SWAPPED 
01AA 754A06 182 MOV 4AH,# 06H 
01AD 754CFF 183 MOV 4CH,# 0FFH 
01B0 22 184 EXIT_P02: RET 
01B1 770A 185 DEL: MOV @R1,# 0AH 
01B3 09 186 INC R1 
01B4 DAFB 187 DJNZ R2, DEL 
01B6 22 188 RET 
01B7 7400 189 OUT_LED: MOV A,# 00H 
01B9 47 190 OUT_PUT: ORL A, @R1 
01BA F590 191 MOV P1,A 
01BC 7CFF 192 MOV R4,# 0FFH 
01BE DCFE 193 DJNZ R4, $ 
01C0 54F0 194 ANL A,# 0F0H 
01C2 2410 195 ADD A,# 10H 
01C4 09 196 INC R1 
01C5 DAF2 197 DJNZ R2, OUT_PUT 
01C7 22 198 RET 
01C8 7930 199 WRITE: MOV R1,# 30H 
01CA 7A18 200 MOV R2,# 18H 
01CC E7 201 WRT: MOV A, @R1 
01CD F0 202 MOVX @DPTR, A 
01CE 09 203 INC R1 
01CF A3 204 INC DPTR 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 41
01D0 DAFA 205 DJNZ R2,WRT 
01D2 22 206 RET 
01D3 E6 207 SWAPPED: MOV A, @R0 
01D4 87F0 208 MOV B, @R1 
01D6 A6F0 209 MOV@R0, B 
01D8 F7 210 MOV @R1, A 
01D9 08 211 INC R0 
01DA 09 212 INC R1 
01DB DAF6 213 DJNZ R2, SWAPPED 
01DD 22 214 RET 
01DE 7600 215 BINARY_BCD: MOV @R0,# 00H 
01E0 08 216 INC R0 
01E1 7600 217 MOV @R0,# 00H 
01E3 75F00A 218 MOV B,# 10 
01E6 1201FF 219 LCALL DIV_16_8 
01E9 08 220 INC R0 
01EA A6F0 221 MOV @R0, B 
01EC 75F00A 222 MOV B,# 10 
01EF 1201FF 223 LCALL DIV_16_8 
01F2 08 224 INC R0 
01F3 A6F0 225 MOV @R0, B 
01F5 75F00A 226 MOV B,# 10 
01F8 84 227 DIV AB 
01F9 08 228 INC R0 
01FA A6F0 229 MOV @R0, B 
01FC 08 230 INC R0 
01FD F6 231 MOV @R0, A 
01FE 22 232 RET 
01FF 7A10 233 DIV_16_8: MOV R2,# 16 
0201 FB 234 MOV R3, A 
0202 E4 235 CLR A 
0203 CB 236 DIVIDE: XCH A, R3 
0204 C3 237 CLR C 
0205 33 238 RLC A 
0206 CB 239 XCH A, R3 
0207 C9 240 XCH A, R1 
0208 33 241 RLC A 
0209 C9 242 XCH A, R1 
020A 33 243 RLC A 
020B B5F002 244 CJNE A,B,NOT_EQUAL 
020E 8002 245 SJMP A_EQ_B 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 42
0210 4006 246 NOT_EQUAL: JC BELOW 
0212 95F0 247 A_EQ_B: SUBB A,B 
0214 CB 248 XCH A, R3 
0215 4401 249 ORL A,# 01 
0217 CB 250 XCH A, R3 
0218 DAE9 251 BELOW: DJNZ R2, DIVIDE 
021A C5F0 252 XCH A,B 
021C EB 253 MOV A, R3 
021D 22 254 RET 
021E E7 255 POST_AGE: MOV A, @R1 
021F 75F00A 256 MOV B,# 10D 
0222 A4 257 MUL AB 
0223 19 258 DEC R1 
0224 27 259 ADD A, @R1 
0225 FA 260 MOV R2, A 
0226 C3 261 CLR C 
0227 19 262 DEC R1 
0228 19 263 DEC R1 
0229 19 264 DEC R1 
022A B70024 265 CJNE @R1,# 00H,LOCAL 
022D 19 266 DEC R1 
022E E7 267 MOV A, @R1 
022F 75F00A 268 MOV B,# 10D 
0232 A4 269 MUL AB 
0233 19 270 DEC R1 
0234 27 271 ADD A, @R1 
0235 9412 272 SUBB A,# 18 
0237 F9 273 MOV R1, A 
0238 900262 274 MOV DPTR,# FIRST_T 
023B 93 275 MOVC A, @A+DPTR 
023C 8570F0 276 MOV B, 70H 
023F A4 277 MUL AB 
0240 8AF0 278 MOV B, R2 
0242 A4 279 MUL AB 
0243 29 280 ADD A, R1 
0244 C5F0 281 XCH A,B 
0246 3400 282 ADDC A,# 00H 
0248 C5F0 283 XCH A,B 
024A A9F0 284 MOV R1, B 
024C 1201DE 285 LCALL BINARY_BCD 
024F 8010 286 SJMP EXIT_POST 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 43
0251 19 287 LOCAL: DEC R1 
0252 19 288 DEC R1 
0253 B7080B 289 CJNE @R1,# 08H,EXIT_POST 
0256 EA 290 MOV A, R2 
0257 04 291 INC A 
0258 8570F0 292 MOV B, 70H 
025B A4 293 MUL AB 
025C A9F0 294 MOV R1, B 
025E 1201DE 295 LCALL BINARY_BCD 
0261 22 296 EXIT_POST: RET 
0262 0B 297 FIRST_T: DB 11 
0263 0D 298 DB 13 
0264 0D 299 DB 13 
0265 0D 300 DB 13 
0266 0B 301 DB 11 
0267 0D 302 DB 13 
0268 0D 303 DB 13 
0269 0D 304 DB 13 
026A 0B 305 DB 11 
026B 0D 306 DB 13 
026C 0B 307 DB 11 
026D 0D 308 DB 13 
026E 0B 309 DB 11 
026F 0D 310 DB 13 
0270 0B 311 DB 11 
0271 0B 312 DB 11 
0272 0B 313 DB 11 
0273 0B 314 DB 11 
0274 0B 315 DB 11 
0275 0B 316 DB 11 
0276 0B 317 DB 11 
0277 0B 318 DB 11 
0278 0B 319 DB 11 
0279 0B 320 DB 11 
027A 0B 321 DB 11 
027B 0B 322 DB 11 
027C 0B 323 DB 11 
027D 0B 324 DB 11 
027E 0B 325 DB 11 
027F 0B 326 DB 11 
0280 04 327 DB 4 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 44
0281 08 328 DB 8 
0282 0B 329 DB 11 
0283 08 330 DB 8 
0284 08 331 DB 8 
0285 08 332 DB 8 
0286 06 333 DB 6 
0287 06 334 DB 6 
0288 06 335 DB 6 
0289 06 336 DB 6 
028A 06 337 DB 6 
028B 03 338 DB 3 
028C 04 339 DB 4 
028D 04 340 DB 4 
028E 0B 341 DB 11 
028F 03 342 DB 3 
0290 03 343 DB 3 
0291 04 344 DB 4 
0292 04 345 DB 4 
0293 04 346 DB 4 
0294 04 347 DB 4 
0295 03 348 DB 3 
0296 03 349 DB 3 
0297 04 350 DB 4 
0298 03 351 DB 3 
0299 04 352 DB 4 
029A 04 353 DB 4 
029B 04 354 DB 4 
029C 04 355 DB 4 
029D 08 356 SECOND_T: DB 8 
029E 0A 357 DB 10 
029F 0A 358 DB 10 
02A0 0A 359 DB 10 
02A1 08 360 DB 8 
02A2 0A 361 DB 10 
02A3 0A 362 DB 10 
02A4 0A 363 DB 10 
02A5 08 364 DB 8 
02A6 0A 365 DB 10 
02A7 08 366 DB 8 
02A8 0A 367 DB 10 
02A9 08 368 DB 8 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 45
02AA 0A 369 DB 10 
02AB 08 370 DB 8 
02AC 08 371 DB 8 
02AD 08 372 DB 8 
02AE 08 373 DB 8 
02AF 08 374 DB 8 
02B0 08 375 DB 8 
02B1 08 376 DB 8 
02B2 08 377 DB 8 
02B3 08 378 DB 8 
02B4 08 379 DB 8 
02B5 08 380 DB 8 
02B6 08 381 DB 8 
02B7 08 382 DB 8 
02B8 08 383 DB 8 
02B9 08 384 DB 8 
02BA 08 385 DB 8 
02BB 03 386 DB 3 
02BC 06 387 DB 6 
02BD 08 388 DB 8 
02BE 06 389 DB 6 
02BF 06 390 DB 6 
02C0 06 391 DB 6 
02C1 04 392 DB 4 
02C2 04 393 DB 4 
02C3 04 394 DB 4 
02C4 04 395 DB 4 
02C5 04 396 DB 4 
02C6 02 397 DB 2 
02C7 03 398 DB 3 
02C8 03 399 DB 3 
02C9 08 400 DB 8 
02CA 02 401 DB 2 
02CB 02 402 DB 2 
02CC 03 403 DB 3 
02CD 03 404 DB 3 
02CE 03 405 DB 3 
02CF 03 406 DB 3 
02D0 02 407 DB 2 
02D1 02 408 DB 2 
02D2 03 409 DB 3 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 46
02D3 02 410 DB 2 
02D4 03 411 DB 3 
02D5 03 412 DB 3 
02D6 03 413 DB 3 
02D7 03 414 DB 3 
02D8 784A 415 KEY_PRESS: MOV R0,# 4AH 
02DA B6001D 416 CJNE @R0,# 00H,KEY_MAY2 
02DD D2B0 417 SETB P3.0 
02DF 20B018 418 JB P3.0, KEY_MAY2 
02E2 7830 419 MOV R0,# 30H 
02E4 B60A0A 420 CJNE @R0,# 0AH,SW_M1 
02E7 7930 421 MOV R1,# 30H 
02E9 901000 422 MOV DPTR,# RAMAY1 
02EC 12031D 423 LCALL READ 
02EF 8009 424 SJMP KEY_MAY2 
02F1 7830 425 SW_M1: MOV R0,# 30H 
02F3 793E 426 MOV R1,# 3EH 
02F5 7A09 427 MOV R2,# 09 
02F7 1201D3 428 LCALL SWAPPED 
02FA 786A 429 KEY_MAY2: MOV R0,# 6AH 
02FC B6001D 430 CJNE @R0,# 00H,EXIT_KEY 
02FF D2B1 431 SETB P3.1 
0301 20B118 432 JB P3.1, EXIT_KEY 
0304 7850 433 MOV R0,# 50H 
0306 B60A0A 434 CJNE @R0,# 0AH,SW_M2 
0309 7950 435 MOV R1,# 50H 
030B 901020 436 MOV DPTR,# RAMAY2 
030E 12031D 437 LCALL READ 
0311 8009 438 SJMP EXIT_KEY 
0313 7850 439 SW_M2: MOV R0,# 50H 
0315 795E 440 MOV R1,# 5EH 
0317 7A09 441 MOV R2,# 09 
0319 1201D3 442 LCALL SWAPPED 
031C 22 443 EXIT_KEY: RET 
031D 7A18 444 READ: MOV R2,# 18H 
031F E0 445 LOOP_READ: MOVX A, @DPTR 
0320 F7 446 MOV @R1, A 
0321 A3 447 INC DPTR 
0322 09 448 INC R1 
0323 DAFA 449 DJNZ R2, LOOP_READ 
0325 22 450 RET 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 47
0326 C28C 451 TIME: CLR TR0 
0328 C28D 452 CLR TF0 
032A 758C3C 453 MOV TH0,# HIGH(-50000) 
032D 758AB0 454 MOV TL0,# LOW(-50000) 
0330 D28C 455 SETB TR0 
0332 AE4A 456 MOV R6, 4AH 
0334 BE042A 457 CJNE R6,# 04H,T_MAY2 
0337 054D 458 INC 4DH 
0339 AE4D 459 MOV R6,4DH 
033B BE1423 460 CJNE R6,# 20D,T_MAY2 
033E 754D00 461 MOV 4DH,# 00H 
0341 0539 462 INC 39H 
0343 AE39 463 MOV R6, 39H 
0345 BE0A19 464 CJNE R6,# 0AH,T_MAY2 
0348 753900 465 MOV 39H,# 00H 
034B 053A 466 INC 3AH 
034D AE3A 467 MOV R6, 3AH 
034F BE060F 468 CJNE R6,# 06H,T_MAY2 
0352 753A00 469 MOV 3AH,# 00H 
0355 053B 470 INC 3BH 
0357 AE3C 471 MOV R6, 3CH 
0359 BE0A05 472 CJNE R6,# 0AH,T_MAY2 
035C 753B00 473 MOV 3BH,# 00H 
035F 053C 474 INC 3CH 
0361 AE6A 475 T_MAY2: MOV R6, 6AH 
0363 BE042A 476 CJNE R6,# 04H,EXIT_TE 
0366 056D 477 INC 6DH 
0368 AE6D 478 MOV R6, 6DH 
036A BE14F4 479 CJNE R6,# 20D,T_MAY2 
036D 756D00 480 MOV 6DH,# 00H 
0370 0559 481 INC 59H 
0372 AE59 482 MOV R6, 59H 
0374 BE0A19 483 CJNE R6,# 0AH,EXIT_TE 
0377 755900 484 MOV 59H,# 00H 
037A 055A 485 INC 5AH 
037C AE5A 486 MOV R6, 5AH 
037E BE060F 487 CJNE R6,# 06H,EXIT_TE 
0381 755A00 488 MOV 5AH,# 00H 
0384 055B 489 INC 5BH 
0386 AE5C 490 MOV R6, 5CH 
0388 BE0A05 491 CJNE R6,# 0AH,EXIT_TE 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 48
038B 755B00 492 MOV 5BH,# 00H 
038E 055C 493 INC 5CH 
0390 32 494 EXIT_TE: RETI 
0391 E54A 495 DATA_IN: MOV A, 4AH 
0393 B40062 496 CJNE A,# 00H,EXIT_DATA 
0396 E55A 497 MOV A, 5AH 
0398 B4005D 498 CJNE A,# 00H,EXIT_DATA 
039B D2B3 499 SETB P3.3 
039D 20B358 500 JB P3.3,EXIT_DATA; 
03A0 7930 501 MOV R1,# 30H 
03A2 7A09 502 MOV R2,# 09H 
03A4 1201B1 503 LCALL DEL 
03A7 753000 504 MOV 30H,# 00H 
03AA 753100 505 MOV 31H,# 00H 
03AD 857032 506 MOV 32H, 70H 
03B0 7F0A 507 ROTATE: MOV R7,# 10 
03B2 7A09 508 LOOP_DATA: MOV R2,# 09 
03B4 7930 509 MOV R1,# 30H 
03B6 C2B4 510 CLR P3.4 
03B8 1201B7 511 LCALL OUT_LED 
03BB D2B4 512 SETB P3.4 
03BD 7A09 513 MOV R2,# 09 
03BF 7930 514 MOV R1,# 30H 
03C1 C2B5 515 CLR P3.5 
03C3 1201B7 516 LCALL OUT_LED 
03C6 D2B5 517 SETB P3.5 
03C8 DFE8 518 DJNZ R7, LOOP_DATA 
03CA D2B0 519 SETB P3.0 
03CC 20B00A 520 JB P3.0, H_CHUC 
03CF 0532 521 INC 32H 
03D1 E532 522 MOV A, 32H 
03D3 B50A03 523 CJNE A, 0AH, H_CHUC 
03D6 753200 524 MOV 32H,# 00H 
03D9 D2B1 525 H_CHUC: SETB P3.1 
03DB 20B10A 526 JB P3.1, ENTER 
03DE 0531 527 INC 31H 
03E0 E531 528 MOV A, 31H 
03E2 B50A03 529 CJNE A, 0AH,ENTER 
03E5 753100 530 MOV 31H,# 00H 
03E8 D2B2 531 ENTER: SETB P3.2 
03EA 20B2C3 532 JB P3.2, ROTATE 
 Ñoà Aùn Moân Hoc II – Leâ Minh Theá – 97ÑT04 
 Khoa Ñieän – Ñieän Töû 49
03ED 853270 533 MOV 70H,32H 
03F0 7930 534 MOV R1,# 30H 
03F2 901000 535 MOV DPTR,# RAMAY1 
03F5 12031D 536 LCALL READ 
03F8 22 537 EXIT_DATA: RET 
 538 END 
REGISTER BANK(S) USED: 0 
ASSEMBLY COMPLETE, NO ERRORS FOUND 
            Các file đính kèm theo tài liệu này:
 thietke_machtichcuoc_dienthoai_6911.pdf thietke_machtichcuoc_dienthoai_6911.pdf