Trong IC SZ9148 coù chöùa boä ñaûo pha CMOS laø ñieän trôû ñònh thieân cuøng noái boä dao ñoäng baèng thaïch anh hoaëc maïch ñieän dao ñoäng coäng höôûng. Khi taàn soá cuûa boä phaän dao ñoäng thieát keá xaùc ñònh laø 455kHz, thì taàn soá phaùt xaï soùng mang laø 38 kHz. Chæ khi coù thao taùc nhaán phím môùi coù theå taïo ra dao ñoäng, vì theá ñaûm baûo coâng suaát cuûa noù tieâu hao thaáp. Noù coù theå thoâng qua caùc chaân k1 ñeán k6 vaø ñaàu ra thöù töï thôøi gian chaân T1 ñeán T3 ñeå taïo ra baøn phím 6x3 theo kieåu ma traän. Taïi t1 saùu phím ñöôïc saép xeáp coù theå tuøy choïn ñeå taïo thaønh 6x3 traïng thaùi tín hieäu lieân tuïc ñöa ra ñöôïc trình baøy ôû hình 3.
47 trang |
Chia sẻ: lethao | Lượt xem: 1808 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đề tài Thiết kế mạch lịch vạn niên có Remote điều khiển từ xa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
u maø chuùng khoâng laãn loän nhau, ta phaûi tieán haønh maõ hoùa caùc tín hieäu (leänh ñieàu khieån). Khoái maõ hoùa naøy coù nhieäm vuï bieán ñoåi caùc leänh ñieàu khieån thaønh caùc bit nhò phaân, hieän töôïng bieán ñoåi naøy goïi laø taïo maõ hay maõ hoaù.
Khoái dao ñoäng taïo soùng mang:
Khoái naøy coù nhieäm vuï taïo ra soùng mang taàn soá oån ñònh, soùng mang naøy seõ mang tín hieäu ñieàu khieån khi truyeàn ra moâi tröôøng.
Khoái ñieàu cheá:
Khoái naøy coù nhieäm vuï keát hôïp tín hieäu ñieàu khieån ñaõ maõ hoùa soùng mang ñeå ñöa ñeán khoái khueách ñaïi.
Khoái khueách ñaïi:
Khueách ñaïi tín hieäu ñuû lôùn ñeà LED phaùt hoàng ngoaïi phaùt tín hieäu ra moâi tröôøng.
LED phaùt:
Bieán ñoåi tín hieäu ñieän thaøng soùng hoàng ngoaïi vaø phaùt ra moâi tröôøng
Khối thời gian thực
2.khối mạch lịch vạn niên
Khối hiển thị
Khối nhận tín hiệu hồng ngoại
Khối vi điều khiển
Khối chuông
Khối điều khiển
2.1.Giaûi thích sô ñoà khoái mạch lịch vạn niên:
Chöùc naêng cuûa mạch vạn niên laø thu ñöôïc tín hieäu ñieàu khieån töø remote,hiển thị giờ, phút, giây, thứ, ngày, tháng, năm, và có thể hẹn giờ được.
Khối nhận tín hiệu hồng ngoại :
Thu tín hieäu hoàng ngoaïi do remote truyeàn tôùi và biến đổi thành tín hiệu điều khiển. Khối này gồm : mắt nhận hồng ngoại ,c1815, và IC BL2248
Khoái thời gian thực:
Coù nhieäm vuï tạo ra thời gian thực, khối này dung real time DS12C887, được tích hợp thời gian thực trong IC
Khối điều khiển :
Khoái naøy coù chöùc naêng tác động vào khối VĐK để tạo ra lệnh điêu khiển đồng hồ , khối này dùng 4 nút nhấn để chỉnh mode, up, dwn, hẹn giờ
Khối VĐK:
Nhieäm vuï cuûa khoái naøy laø đọc tín hiệu thời gian thực từ real time để hiện thị thời gian qua led 7 đoạn ,khối này dùng con VĐK89S52
Khối hiển thị:
Coù nhieäm hiển thị thời gian do khối VĐK đọc từ real time , để hiển thị ta dùng led 7 đoạn
Khối chuông:
Khối chuông có tác dụng phat ra tiếng nhạc để báo thức , khối nay gôm có LM386 để khuếch đại tín hiệu , 1 biến trở nút áo để chỉnh to nhỏ , và loa để phát tiếng nhạc
Phần III
MẠCH THU PHAÙT DUØNG IC CHUYEÂN DUØNG
BL9418, BL9149 laø nhöõng IC thu phaùt trong heä thoáng ñieàu khieån töø xa baèng tia hoàng ngoaïi. Trong ñoù SZ9148 laø maïch ñieän IC phaùt xaï ñieàu khieån coù maõ hoùa kieåu ma traän. Noù vaø maïch ñieän IC SZ9149 phoái hôïp vôùi nhau coù theå hoaøn thaønh boä ñieàu khieån xa coù 10 chöùc naêng; phoái hôïp vôí maïch ñieän IC SZ 9150 coù theå hoaøn thaønh boä ñieàu khieån xa coù 18 chöùc naêng, coù hôn 75 leänh coù theå phaùt xa, trong ñoù 63 leänh laø leänh lieân tuïc, coù theå coù nhieàu toå hôïp phím; 12 leänh khoâng lieân tuïc, chæ coù theå söû duïng phím ñôn. Toå hôïp nhö vaäy coù theå duøng cho nhieàu loaïi ñieàu khieån xa cho caùc thieát bò ñieän.
A. MAÏCH REMOTE DUØNG BL 9148:
Maïch ñieän IC SZ9148 söû duïng coâng ngheä CMOS qui moâ lôùn ñeå cheá taïo laø moät loaïi linh kieän phaùt xa maõ hoùa tia hoàng ngoaïi raát thoâng duïng, phaïm vi ñieän aùp nguoàn ñieän laø 2,2V~5,5V. Vì söû duïng coâng ngheä CMOS ñeå cheá taïo neân coâng suaát tieâu hao cöïc thaáp, doøng ñieän traïng thaùi tónh chæ 10 µA, noù coù theå söû duïng nhieàu toå hôïp phím, linh kieän beân ngoaøi raát ít, maõ soá cuûa noù thích hôïp vôùi nhieàu qui moâ khaùc, chæ caàn noái ngoaøi linh kieän LC hoaëc boä dao ñoäng goám laø coù theå gaây ra dao ñoäng.
1. Sơ Đồ Chân IC 9148
SÔ ÑOÀ KHOÁI BEÂN TRONG
2.Chöùc naêng cuûa caùc chaân daãn:
IC SZ9148 söû duïng 16 chaân voû nhöïa kieåu caém thaúng haøng.
Chaân 1: GND laø ñaàu aâm cuûa doøng ñieän noái vôùi ñaát.
Chaân 2: XT laø ñaàu vaøo cuûa boä phaän dao ñoäng beân trong.
Chaân 3: XTN laø ñaàu ra cuûa boä phaän dao ñoäng beân trong, beân trong noù khoâng coù ñieän trôû phaûn hoài.
Chaân 4 ñeán chaân 9: (k1-k6) laø ñoïan ñaàu vaøo tín hieäu cuûa baøn phím kieåu ma traän.
Chaân 10 ñeán chaân 12: T1 –T3 keát hôïp vôùi caùc chaân k1 ñeán k6 coù theå taïo thaønh 18 phím.
Chaân 13: (code) laø ñaàu vaøo cuûa maõ soá, duøng maõ soá ñeå truyeàn taûi vaø tieáp nhaän.
Chaân 14: (TCST) laø ñaàu ño thöû, bình thöôøng khi söû duïng coù theå boû troáng
Chaân 15:(Txout ) laø ñaàu ra tín hieäu truyeàn taûi tín hieäu 12 bit thaønh moät chu kyø, söû duïng soùng mang 38kHz ñeå ñieàu cheá.
Chaân 16: (V00) laø ñaàu döông cuûa nguoàn ñieän noái vôùi ñieän aùp moät chieàu 2,2-5,5 V, ñieän aùp laøm vieäc bình thöôøng 3V.
Beân trong IC 9148 do boä phận dao ñoäng, boä phaân taàn, boä giaõi maõ, maïch ñieän ñaàu vaøo cuûa baøn phím, boä phaän phaùt maõ soá…taïo thaønh.
Tham soá chuû yeáu cuûa SZ9148:
Baûng 1 :
Muïc Luïc
Kí hieäu
Ñieàu kieän ño thöû
Nhoû nhaát
Ñieån hình
Lôùn nhaát
Ñôn vò
Ñieän aùp nguoàn ñieän
VDD
taát caû chöùc naêng thao taùc
2.2
_
5.0
V
Doøng ñieän laøm vieäc
IDD
phím thoâng khoâng phuï taûi
_
_
1.0
mA
Doøng ñieän traïng thaùi baõo hoøa
IDS
phím môû khoâng dao ñoäng
_
_
10
mA
Ñaàu vaøo
k14
k5
code
ñieän aùp ñaàu vaøo
möùc ñieän cao
VIH
_
2.0
_
3.0
V
möùc ñieän thaáp
VIL
_
0
_
0.5
V
k24 k6
doøng ñieän ñaàu vaøo
möùc ñieän cao
IIH
VIH = 3V
20
30
60
mA
möùc ñieän thaáp
IIL
VIL = 0V
-1.0
_
1.0
mA
Code
Test
doøng ñieän ñaàu vaøo
möùc ñieän cao
IIH
VIH = 3V
-1.0
_
1.0
mA
möùc ñieän thaáp
IIL
VIL = 0V
20
30
60
mA
Ñaàu ra
k14 k3
doøng ñieän ñaàu ra
möùc ñieän cao
IOH
VOH = 2V
_
_
-500
mA
möùc ñieän thaáp
IOL
VOL = 3V
-50
_
_
mA
TXOUT
doøng ñieän ñaàu ra
möùc ñieän cao
IOH
VOH = 2V
_
_
-0.1
mA
möùc ñieän thaáp
IOL
VOL = 2V
1.0
_
_
mA
ñieän trôû phaûn hoài boä dao ñoäng
R
_
_
500
_
KV
Coâng suaát dao ñoäng
fosc
-
400
455
600
KHZ
Tham soá cöïc haïn cuûa IC SZ9148:
Baûng 2:
Tham soá
Kyù hieäu
Giaù trò cöïc haïn
Ñôn vò
Ñieän aùp nguoàn ñieän
Ñaàu vaøo/ra ñieän aùp
Coâng suaát toån hao
Nhieät ñoä laøm vieäc
Nhieät ñoä caát giöõ
Doøng ñieän ñaàu ra (Iout)
V00
VIN
PD
TOPP
TSfg
IOUT
6.0
VSS –3v ~ VDD+3V
200
-200~75
-55 ~125
-5
V
V
mW
0C
0C
mA
3. Nguyeân lyù hoaït ñoäng :
Trong IC SZ9148 coù chöùa boä ñaûo pha CMOS laø ñieän trôû ñònh thieân cuøng noái boä dao ñoäng baèng thaïch anh hoaëc maïch ñieän dao ñoäng coäng höôûng. Khi taàn soá cuûa boä phaän dao ñoäng thieát keá xaùc ñònh laø 455kHz, thì taàn soá phaùt xaï soùng mang laø 38 kHz. Chæ khi coù thao taùc nhaán phím môùi coù theå taïo ra dao ñoäng, vì theá ñaûm baûo coâng suaát cuûa noù tieâu hao thaáp. Noù coù theå thoâng qua caùc chaân k1 ñeán k6 vaø ñaàu ra thöù töï thôøi gian chaân T1 ñeán T3 ñeå taïo ra baøn phím 6x3 theo kieåu ma traän. Taïi t1 saùu phím ñöôïc saép xeáp coù theå tuøy choïn ñeå taïo thaønh 6x3 traïng thaùi tín hieäu lieân tuïc ñöa ra ñöôïc trình baøy ôû hình 3.
Hai haøng phím ôû T2 vaø T3 chæ coù theå söû duïng phím ñôn, hôn nöõa, moãi khi aán vaøo phím moät laàn chæ coù theå phaùt xaï moät nhoùm maïch xung ñieàu khieån. Neáu nhö caùc phím ôû cuøng haøng ñoàng thôøi ñöôïc aán xuoáng thì thöù töï öu tieân cuûa noù laø K1 > K2 > K3> K4 > K4> K5>K6 . Khoâng coù nhieàu phím chöùc naêng treân cuøng moät ñöôøng K, neáu nhö ñoàng thôøi nhaán phím thì thöù töï öu tieân cuûa noù laø T1 >T2>T3.
Leänh phaùt ra cuûa noù do maõ 12 bit taïo thaønh, trong ñoù C1~C3 (code) laø maõ soá ngöôøi duøng, coù theå duøng ñeå xaùc ñònh caùc moâ thöùc khaùc nhau, toå hôïp C1, C2 phoái hôïp vôùi maïch ñieän IC thu SZ9150; toå hôïp C2, C3 phoái hôïp vôùi maïch ñieän IC thu SZ9149. Moãi loaïi toå hôïp coù 3 traïng thaùi ñoù laø 01, 10, 11 maø khoâng duøng traïng thaùi 00.
C1 C2 C3
H S1 S2
D1 D2 D3 D4 D5 D6
Maõ ngöôøi duøng
Maõ lieân tuïc/khoâng lieân tuïc
Maõ phím ñaàu vaøo
Caùc bit maõ C1, C2, C3 ñöôïc thöïc hieän baèng vieäc noái hay khoâng noái caùc chaân T1,T2, T3 vôùi chaân code baèng caùc diode. Neáu noái qua diode thì caùc C töông öùng trôû thaønh [1] vaø ôû [0] khi khoâng ñöôïc noái. H, S1, S2 laø ñaïi dieän cho maõ soá phaùt xaï lieân tuïc hoaëc maõ soá phaùt xaï khoâng lieân tuïc. Noù ñoái öùng vôùi caùc phím T1, T2, T3. D1 ñeán D6 laø maõ soá cuûa soá lieäu phaùt ra. Phím cuûa noù vaø söï ñoái öùng maõ quan heä vôùi nhau nhö baûng sau:
Phím
Soá lieäu
Ñaàu ra
Soá
H
S1
S2
D1
D2
D3
D4
D5
D6
Hình thöùc
1
1
0
0
1
0
0
0
0
0
Lieân tuïc
2
1
0
0
0
1
0
0
0
0
Lieân tuïc
3
1
0
0
0
0
1
0
0
0
Lieân tuïc
4
1
0
0
0
0
0
1
0
0
Lieân tuïc
5
1
0
0
0
0
0
0
1
0
Lieân tuïc
6
1
0
0
0
0
0
0
0
1
Lieân tuïc
7
0
1
0
1
0
0
0
0
0
Khoâng lieân tuïc
8
0
1
0
0
1
0
0
0
0
Khoâng lieân tuïc
9
0
1
0
0
0
1
0
0
0
Khoâng lieân tuïc
10
0
1
0
0
0
0
1
0
0
Khoâng lieân tuïc
11
0
1
0
0
0
0
0
1
0
Khoâng lieân tuïc
12
0
1
0
0
0
0
0
0
1
Khoâng lieân tuïc
13
0
0
1
1
0
0
0
0
0
Khoâng lieân tuïc
14
0
0
1
0
1
0
0
0
0
Khoâng lieân tuïc
15
0
0
1
0
0
1
0
0
0
Khoâng lieân tuïc
16
0
0
1
0
0
0
1
0
0
Khoâng lieân tuïc
17
0
0
1
0
0
0
0
1
0
Khoâng lieân tuïc
18
0
0
1
0
0
0
0
0
1
Khoâng lieân tuïc
Dang xung phaùt xaï ra:
Khi tæ leä chieám troáng cuûa maïch xung döông hình soùng do maïch ñieän SZ9148 phaùt ra laø ¼ ñaïi dieän laø [0] khi tæ leä chieám troáng cuûa maïch xung döông laø 4/3, ñaïi dieän cho [1]}. Baát luaän laø [0] hay [1] khi chuùng ñöôïc phaùt ra maïch xung döông ñöôïc ñieàu cheá treân soùng mang 38kHz, tæ leä chieám troáng cuûa soùng mang laø 1/3, nhö vaäy coù lôïi cho vieäc giaûm coâng suaát tieâu hao.
Ñöôïc minh hoïa bôûi hình 4:
Vieäc phaùt ra cuûa moãi moät chu kyø theo thöù töï noái tieáp C1, C2, C3,H, S1, S2, D1, D2, D3, D4, D5, D6 coù toång chieàu daøi ñöôïc ño 48a, trong ñoù a= ¼ chu kyø moät maõ. Phöông phaùp tính cuûa a laø: a = (1/fosc) 192s. Khi aán phím khoâng lieân tuïc, ñaàu ra maõ chæ phaùt ra 2 chu kyø, khi aán phím lieân tuïc, ñaàu ra maõ seõ phaùt ra lieân tuïc, giöõa 2 nhoùm döøng laïi 280s.
B. MAÏCH LỊCH VẠN NIÊN
I. IC BL9149: ñöôïc cheá taïo baèng coâng ngheä CMOS, chuùng ñi caëp vôùi IC phaùt SZ9148 ñeå taïo thaønh moät boä IC thu-phaùt trong ñieàu khieån xa baèng tia hoàng ngoaïi.
1.Sô ñoà chaân:
2.Chöùc naêng caùc chaân:
IC SZ9149 coù 16 chaân
- Chaân 1: (GND) laø ñaàu aâm cuûa doøng ñieän noái ñaát.
- Chaân 2: (Rxin) laø ñoaïn ñaàu vaøo cuûa tín hieäu thu; tín hieäu sau khi ñöôïc loïc boû soùng mang.
- Chaân 3 ñeán 7 : HP1~HP5 laø ñaàu ra tín hieäu lieân tuïc.
- Chaân 8 ñeán 12: SP1~SP5 laø ñaàu ra tín hieäu khoâng lieân tuïc, tín hieäu tieáp nhaän cuûa ñaàu vaøo töông öùng moät laàn, möùc ñieän cao cuûa ñaàu ra duy trì khoaûng 107ms.
- Chaân 13,14: (code 2, code 1) laø ñaàu so saùnh maõ truyeàn ñaït töông ñoái chính xaùc, maõ ssoá thu ñöôïc vaø maõ soá ñònh tröôùc cuûa maïch ñieän naøy phaûi hoaøn toaøn gioáng nhau môùi coù theå thu ñöôïc.
- Chaân 15: (OSC) laø ñaàu vaøo dao ñoäng. Ñieän trôû gheùp song song ñeán ñaát vaø tuï ñieän cuûa ñaàu naøy gaây ra dao ñoäng.
- Chaân 16: (VDD) laø ñaàu döông cuûa doøng ñieän, thöôøng maéc ñieän aùp khoaûng 4,5V~5,5V. Maïch ñieän beân trong cuûa IC thu do boä phaän dao ñoäng, boä ñeám soá coäng, boä nhôù dòch haøng ñaàu vaøo, boä phaän kieåm tra soá lieäu, boä phaän kieåm tra maõ, maïch ñeám maïch xung ñaàu vaøo, maïch ñieän khoùa coá ñònh, maïch ñieän kieåm tra ñoä sai soùt, boä phaän ñeám ñaàu vaøo… taïo thaønh.
Tham soá cöïc haïn cuûa IC thu:
Tham soá
Kyù hieäu
Giaù trò cöïc haïn
Ñôn vò
Ñieän aùp nguoàn ñieän
VDD
6
V
Ñieän aùp vaøo/ra
VIN/VOUT
VSS –0.3 ~ VDD + 0.3
V
Coâng suaát toån hao
PD
200
mW
Nhieät ñoä laøm vieäc
TOPR
-20 ~ 75
°C
Nhieät ñoä caát giöõ
TSTG
-55 ~ 125
°C
Tham soá
Kyù hieäu
Ñieàu kieän ño thöû
Nhoû nhaát
Ñieån hình
Lôùn nhaát
Ñôn vò
Ñieän aùp nguoàn
VDD
Ta = -20 ~75°C
4.5
-
5.5
V
Doøng ñieän laøm vieäc
IDD
Ñaàu ra khoâng phuï taûi
-
-
1.0
MA
Taàn soá dao ñoäng
FOSC
Ta = -20 ~75°C,VDD4.5~5.5
27
-
57
KHz
Taàn soá söû duïng chuaån
SOSC
-
-
38
-
KHZ
Bieán aùp cuûa taàn soá theo ñieän aùp
DVfosc
VDD4.5~5.5
-5
-
5
%
Bieán aùp cuûa taàn soá theo nhieät ñoä
DTfosc
Ta = -30 ~75°C
-5
-
5
%
Doøng ñieän ñaàu ra
Möùc ñieän cao
IOH
Ño taát caû ñaàu ra,Voh=4v
-
-
-1.0
MA
Doøng ñieän ñaàu ra
Möùc ñieän cao
IOH
Ño taát caû ñaàu ra,Voh=4v
-
-
-1.0
MA
Möùc ñieän thaáp
IOL
Ño taát caû ñaàu ra,Vol=4v
1.0
-
-
MA
Doøng ñieän ñaàu vaøo
Möùc ñieän cao
IIH
Ñaàu Code,VIH=5V
-1.0
-
1.0
mA
Ñieän trôû keùo treân
RUP
Ñaàu code
10
20
40
KW
Ñieän aùp ngöôõng cuûa maïch ñieän ñaàu vaøo
VIN
Ñaàu RXIN
2.0
2.5
3.0
V
Ñoä roäng cuûa daûi
Vhys
RXIN
-
0.8
-
V
3.Nguyeân lyù hoaït ñoäng:
Tín hieäu khi nhaän ñöôïc töø maïch phaùt cuûa IC BL9148 seõ ñöôïc khueách ñaïi ,taùch soùng mang sau ñoù ñöa ñeán ñaàu vaøo maïch ñieän IC.
Trong tín hieäu phaùt ra cuûa IC Bl 9148 laøù moät chuoåi tín hieäu 12 bit, trong ñoù tín hieäu C1, C2 vaø C3 cung caáp maõ soá cho ngöôøi duøng, vì vaäy beân IC Bl9149 phaûi coù maû soá töông uùng, neáu maõ beân thu khoâng töông öùng vôùi beân phaùt thì khoâng theå thu ñöôïc tín hieäu, nhöõng maùy khaùc nhau coù theå coù nhöõng maõ khaùc nhau do ngöôøi duøng quy ñònh.
Baûng phoái hôïp maõ ngöôøi duøng cuûa IC 9148 vaø IC 9149 ñöôïc cho nhö sau:
C1
C2
C3
C2
C3
1
0
0
0
0
1
0
1
0
1
1
1
1
1
1
Trong IC 9148 coù 3 bit maõ ngöôøi duøng duøng ñeå phoái hôïp vôùøi IC 9150 ñeå phoái hôïp vôùi IC 9149 ta söû duïng bit C2 vaø C3.
Beân IC 9149 ñeåà coù ñöôïc maõ ngöôøi duøng laø “1” ta noái chaân ñoù qua tuï vaø tuï noái veà mass ,ñeå coù möùc”0” thì ta noái tröïc tieáp chaân ñoù veà mass.
II. VDK 89S52
Giới thiệu sơ lược :Vi điều khiển 8051 được Intel cho ra đời vào năm 1980 thuộc vi điều khiển đầu tiên của họ MCS-51. Hiện tại rất nhiều nhà sản xuất như Siemens, Advanced Micro Devices, Fusisu và Philips tập trung phát triển các sản phẩm trên cơ sở 8051.
Atmel là hãng đã cho ra đời các chip 89C51, 52, 55 và sau đó cải tiến thêm, hãng cho ra đời 89S51, 52, 89S8252…
Cấu hình 89S52:
+ 8KB bộ nhớ chương trình.
+ Dao động bên ngoài với thạch anh <24MHz. Thông thường, VĐK 89S52 chạy với thạch anh 12MHz.
+ 256 Byte Ram nội.
+ 4 Port xuất nhập.
+ 3 Timer/ Counter 16 bit Timer 0,1,2. Timer 2 có các chức năng Capture/Compare.
+ 8 nguồn ngắt.
+ Nạp chương trình song song hoặc nạp nối tiếp qua đường SPI.
2. Sơ đồ khối
Về cơ bản thì các chip nêu trên giống nhau, chỉ có một số tính năng được cải tiến thêm. Các phiên bản về sau càng có nhiều khối tính năng đặc biệt hơn. Chúng ta xem bảng so sánh một số loại phổ biến như dưới đây.
Hình 2. Bảng so sánh cấu hình một số loại VĐK họ 8051
3. Sơ đồ chân 89S52
Hình 3. Sơ đồ chân 89S52
4. Chức năng các chân 89S52
+ P0,1,2,3 có chức năng cơ bản xuất/nhập.
+ Riêng P0, P2 còn có chức năng kết nối bộ nhớ mở rộng, sẽ được khảo sát trong phần mở rộng bộ nhớ.
+ P1: Chân T2 và T2EX dùng cho timer/ counter 2. Hai chức năng này sẽ khảo sát trong phần Timer. Chân SS\, MOSI, MISO, SCK truyền dữ liệu theo chuẫn SPI đồng thời có chức năng kết nối với mạch nạp chương trình. Tích hợp các chức năng đặc biệt. Xem bảng+ Chân ALE, PSEN, WR\, RD\ dùng để kết nối bộ nhớ mở rộng.
+ Chân EA\ có chức năng chọn bộ nhớ chương trình: EA\=GND: Chọn bộ nhớ ngoại, EA\=VCC chọn bộ nhớ nội.
+ Chân Xtal1 và Xtal2 gắn với thạch anh.
Hình 5. Sơ đồ kết nối cơ bản để VĐK hoạt động
III. REAL TIME DS12C887
Sơ đồ chân
Chức năng các chân
Giao tiếp với VDK là giao tiếp song song
+ AD0-AD7: 8 đường data và 8 đường địa chỉ
Giao tiếp với port 0
+ AS : chốt địa chỉ
. AS=1: 1 Byte từ VĐK gữi qua
Byte địa chỉ
. AS=0: Byte giữ liệu
Giao tiếp với chân ALE của VĐK
+ MOT: dùng để chọn bus intel hay bus motorola
. MOT=0: chọn bus intel
DS: điều khiển đọc dử liệu
Lúc này DS sẽ giao tiếp cới chân RD (P3.7) của VĐK
RW: điều khiển ghi giử liệu , giao tiếp với chân WR của VĐK
.MOT=1: chọn bus motorola
RW: điều khiển đọc/ ghi data
RW=1: đọc
RW=0: ghi
+ DS: cho phép đọc ghi
DS=1: cho phép
DS=0: không cho phép
+ chip select: chon IC
CS=0: IC được chọn (được phép làm việc )
OCS=0: IC không được chọn
+ VCC=5V
+ GND=0V
+ RST: reset tức cực mức 1 khi sử dụng
+ IRQ: yêu cầu ngắt ( tạo ra xung yêu cầu VĐK ngắt ) giao tiếp với chân INTx , làm chức năng báo thức
+ SQW: ngỏ ra sóng vuông có thể lập trình được bằng phần mềm
Sơ đồ khối
IV. LM386
Sơ đồ chân :
Cấu trúc bên trong
Phần IV
THI CÔNG MẠCH
Sô ñoà nguyeân lyù maïch phaùt:
Sô ñoà nguyeân lyù maïch lịch vạn niên:
1.Mạch điều khiển:
2.Mạch xử lý âm thanh và mạch nguồn:
3.Mạch hiển thị:
4.Mạch xử lý tín hiệu hồng ngoại và realtime:
Nguyên lý sử dụng mạch lịch vạn niên:
Mạch đồng hồ vạn niên gồm có 4 nút nhấn để điều khiển , nhấn nút nhấn mode để chọn chế độ chỉnh thời gian của mạch : khi nhấn mút mode lần 1 thì 2 con led 7 đoạn hiển thị giờ sẽ nhấp nhấy lúc đó ta chỉnh tăng giảm giờ của mạch, tương tự nhấn lần thứ 2 thì 2 con led 7 đoạn hiển thị phút sẽ nhấp nháy , cứ thế …nút thứ 2 là nút up : để tăng đơn vị thời gian lên. Nút thứ 3 là nút dwn :để giảm đơn vị thời gian xuống. nút thứ 4 là nút dùng để chỉnh đơn vị thời gian để hẹn giờ ( tương tự như nut mode ) . còn phần remote các nút cúng có chức năng tương tự như các nút trên mạch lịch vạn niên
chương trình:
Giải thuật lịch vạn niên:
code
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; p2 dieu khien 8 led va p3.0, p3.1, p3.2, p3.4, p3.5
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
dwn bit p3.3
up bit p3.1
mode bit p3.0
mode1 bit p3.5
bell bit p3.4
bien_mode equ r3
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 000h
jmp main
org 003h
jmp ngat_n0
main: mov bien_mode,#0
lcall khoitaodallass
lcall delay
mov ie,#81h
setb it0
tu_dau1: setb bell
mov r2,#0
tu_dau: lcall doc_data
lcall hex_bcd
lcall bcd_7doan
lcall hien_thi
jb mode,adj
jb mode1,adj_alr
cjne r2,#0,ngat_bell
sjmp tu_dau
ngat_bell: lcall doc_data
mov a,4fh
add a,#18
cjne a,#60,kt_c23
kt_c23: jc tiep
mov 4fh,10h
jmp tu_dau
tiep: cjne a,10h,tu_dau
mov 4fh,10h
cpl bell
djnz 4eh,tu_dau
mov r0,#0ch
movx a,@r0
jmp tu_dau1
adj_alr: jmp set_alr
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
adj: lcall hien_thi
jb mode,adj
mov 78h,#15
adj1: lcall hien_thi
jb mode,adj
djnz 78h,adj1
inc bien_mode
cjne bien_mode,#08,loop
mov bien_mode,#0
ljmp tu_dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
loop: mov 67h,#10
loop3: mov 66h,#0afh
loop1: lcall doc_data
lcall hex_bcd
lcall bcd_7doan
lcall hien_thi
jb up,tang
jb dwn,giam1
jb mode,adj
djnz 66h,loop1
cjne bien_mode,#1,tatphut
mov 34h,#0ffh
mov 35h,#0ffh
sjmp tat
tatphut: cjne bien_mode,#02,tatgio
mov 32h,#0ffh
mov 33h,#0ffh
sjmp tat
tatgio: cjne bien_mode,#03,tatthu
mov 30h,#0ffh
mov 31h,#0ffh
sjmp tat
tatthu: cjne bien_mode,#04,tatngay
mov 36h,#0ffh
sjmp tat
tatngay: cjne bien_mode,#05,tatthang
mov 37h,#0ffh
mov 38h,#0ffh
sjmp tat
tatthang: cjne bien_mode,#06,tatnam
mov 39h,#0ffh
mov 3ah,#0ffh
sjmp tat
tatnam: mov 3eh,#0ffh
mov 3dh,#0ffh
tat: mov 66h,#0afh
loop2: lcall hien_thi
jb up,tang
jb dwn,giam1
jb mode,adj2
djnz 66h,loop2
djnz 67h,loop3
mov bien_mode,#0
ljmp tu_dau
adj2: ljmp adj
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
giam1: ljmp giam
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tang: mov 78h,#100
tang1: lcall hien_thi
djnz 78h,tang1
cjne bien_mode,#01h,ss1
mov r0,#04h
movx a,@r0
inc a
cjne a,#24,z1
mov a,#0
z1: movx @r0,a
jmp loop
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss1: cjne bien_mode,#02h,ss2
mov r0,#02h
movx a,@r0
inc a
cjne a,#60,z1
mov a,#0
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss2: cjne bien_mode,#03,ss3
mov r0,#0h
movx a,@r0
inc a
cjne a,#060,z1
mov a,#0
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss3: cjne bien_mode,#04,ss4
mov r0,#06h
movx a,@r0
inc a
cjne a,#08,z1
mov a,#01
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss4: cjne bien_mode,#05,ss5
mov r0,#07h
movx a,@r0
inc a
cjne a,#032,z1
mov a,#00
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss5: cjne bien_mode,#06,ss6
mov r0,#08h
movx a,@r0
inc a
cjne a,#013,z1
mov a,#01
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss6: mov r0,#09h
movx a,@r0
inc a
cjne a,#100,z1
mov a,#00
jmp z1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
giam: mov 78h,#100
giam11: lcall hien_thi
djnz 78h,giam11
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cjne bien_mode,#01h,sss1
mov r0,#04
movx a,@r0
dec a
cjne a,#0ffh,zz1
mov a,#23
zz1: movx @r0,a
jmp loop
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss1: cjne bien_mode,#02h,sss2
mov r0,#02h
movx a,@r0
dec a
cjne a,#0ffh,zz1
mov a,#59
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss2: cjne bien_mode,#03h,sss3
mov r0,#0h
movx a,@r0
dec a
cjne a,#0ffh,zz1
mov a,#59
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss3: cjne bien_mode,#04h,sss4
mov r0,#06h
movx a,@r0
dec a
cjne a,#0h,zz1
mov a,#7
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss4: cjne bien_mode,#05h,sss5
mov r0,#07h
movx a,@r0
dec a
cjne a,#0ffh,zz1
mov a,#31
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss5: cjne bien_mode,#06,sss6
mov r0,#08h
movx a,@r0
dec a
cjne a,#01h,zz1
mov a,#12
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss6: mov r0,#09
movx a,@r0
dec a
cjne a,#0ffh,zz1
mov a,#99
jmp zz1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; doan ct cai dat bao thuc
set_alr: lcall hien_thi_alr
jb mode1,set_alr
set_a: inc bien_mode
cjne bien_mode,#4,wait
mov bien_mode,#0
ljmp tu_dau
wait: mov 67h,#10
wait3: mov 66h,#0ffh
lcall doc_data_alr
lcall hex_bcd
lcall bcd_7doan
wait1: lcall hien_thi_alr
jb up,tang_alr
jb dwn,giam_alr
jb mode1,set_alr
djnz 66h,wait1
cjne bien_mode,#1,tatphut_alr
mov 35h,#0ffh
mov 34h,#0ffh
sjmp tat_alr
tatphut_alr: cjne bien_mode,#2,tatgiay_alr
mov 32h,#0ffh
mov 33h,#0ffh
sjmp tat_alr
tatgiay_alr: mov 31h,#0ffh
mov 30h,#0ffh
tat_alr: mov 66h,#0ffh
wait2: lcall hien_thi_alr
jb up,tang_alr
jb dwn,giam_alr
jb mode1,set_alr
djnz 66h,wait2
djnz 67h,wait3
mov bien_mode,#0
ljmp tu_dau
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tang_alr: mov 78h,#200
tang1_alr: lcall hien_thi_alr
djnz 78h,tang1_alr
waitx3: cjne bien_mode,#01h,ss_alr1
mov r0,#05h
movx a,@r0
inc a
cjne a,#24,z_alr1
mov a,#0
z_alr1: movx @r0,a
jmp wait
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ss_alr1: cjne bien_mode,#2,ss_alr2
mov r0,#03h
movx a,@r0
inc a
cjne a,#60,z_alr1
mov a,#0
jmp z_alr1
ss_alr2: mov r0,#01h
movx a,@r0
inc a
cjne a,#60,z_alr1
mov a,#0
jmp z_alr1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
giam_alr: mov 78h,#200
giam_alr11: lcall hien_thi_alr
djnz 78h,giam_alr11
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
waity3: cjne bien_mode,#01h,sss_alr1
mov r0,#5
movx a,@r0
dec a
cjne a,#0ffh,zz_alr1
mov a,#24
zz_alr1: movx @r0,a
jmp wait
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sss_alr1: cjne bien_mode,#2,sss_alr2
mov r0,#03h
movx a,@r0
dec a
cjne a,#0ffh,zz_alr1
mov a,#59
jmp zz_alr1
sss_alr2: mov r0,#01h
movx a,@r0
dec a
cjne a,#0ffh,zz_alr1
mov a,#59
jmp zz_alr1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
khoitaodallass: mov r0,#0bh
mov a,#026h
movx @r0,a ;cho phep chinh cai dat gio
mov r0,#0ah
mov a,#020h
movx @r0,a ;cho phep bo dao dong chay
mov r0,#0ch
movx a,@r0
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
doc_data: mov r0,#0
mov r1,#10h
x1: movx a,@r0
mov @r1,a
inc r0
inc r0
inc r1
cjne r0,#06h,x1
movx a,@r0
mov @r1,a
inc r1
inc r0
x2: movx a,@r0
mov @r1,a
inc r0
inc r1
cjne r0,#0ah,x2
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
doc_data_alr: mov r0,#01h
movx a,@r0
mov 10h,a
mov r
Các file đính kèm theo tài liệu này:
- Thiết kế mạch lịch vạn niên có remote điều khiển từ xa.docx