Báo cáo đồ án vi mạch số

Chia sẻ: Tien Van Van | Ngày: | Loại File: PDF | Số trang:15

0
176
lượt xem
75
download

Báo cáo đồ án vi mạch số

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong cuộc sống hằng ngày , thời gian luôn trôi qua rất nhanh .Nhu cầu biết giờ là một nhu cầu cần thiết với mọi người .Đống hồ báo chuông tiết học là một ứng dụng không thể thiếu ở các trường học

Chủ đề:
Lưu

Nội dung Text: Báo cáo đồ án vi mạch số

  1. ÑAÏI HOÏC SÖ PHAÏM KÓ THUAÄT TP HOÀ CHÍ MINH KHOA CÔ KHÍ CHEÁ TAÏO MAÙY BOÄ MOÂN CÔ ÑIEÄN TÖÛ Ñoà AÙn Vi Maïch Soá : 12 - 2006
  2. Phaàn 1: Giôùi thieäu o Lôøi giôùi thieäu o Linh kieän Phaàn 2: Maïch ñoàng hoà baùo chuoâng tieát hoïc o Sô ñoà nguyeân lyù o Sô ñoà maïch in o Löu ñoà giaûi thuaät
  3. Phaàn I: Giôùi Thieäu I/ Lôøi môû ñaàu Trong cuoäc soáng haèng ngaøy, thôøi gian luoân troâi qua thaät nhanh. Nhu caàu bieát giôø laø moät nhu caàu caàn thieát vôùi moïi ngöôøi. Ñoàng hoà baùo chuoâng tieát hoïc laø moät öùng duïng khoâng theå thieáu ôû caùc tröôøng hoïc. Sau ñaây em xin giôùi thieäu veà vi maïch ñoâng hoà baùo giôø tieát hoïc. II/Giôùi thieäu linh kieän 1/ AT89S52: -AT 89S52 laø chip thoâng duïng trong vieäc laäp trình -Chip 89S52 se giuùp ñieàu khieån ds12887 xöû lyù baùo giôø nhö mong muoán -Hinh daùng 2/ Ds 12887: -Ds 12887 laø 1 vi maïch phoå bieán trong vieäc söû duïng laøm ñoàng hoà thôøi gian thöïc -Hình aûnh vaø caáu truùc beân trong: AD0-AD7 – Bus ña hôïp ñòa chæ/ döõ lieäu NC – Boû troáng MOT - Löïa choïn loaïi bus CS – Ngoõ vaøo löïa choïn RT C AS – Choát ñòa chæ R/W – Ngoõ vaøo ñoïc/ghi DS – Choát döõ lieäu RESET\ - Ngoõ vaøoReset IRQ\ - Ngoõ ra yeâu caàu ngaét SQW – Ngoõ ra soùng vuoâng VCC – Nguoàn cung caáp +5 Volt GND – Mass Caâáu truùc beân trong Real Time Clock DS12C887 Sô ñoà ñòa chæ cuûa DS12C887 ñöôïc trình baøy ôû hình 1. Sô ñoà ñòa chæ bao goàm 113 bytes RAM thoâng duïng, 11 bytes RAM maø thaønh phaàn bao goàm ñoàng hoà thôøi
  4. gian thöïc, lòch, döõ lieäu baùo giôø vaø 4 bytes ñöôïc söû duïng cho vieäc ñieàu khieån vaø thoâng baùo tình traïng. Taát caû 128 bytes coù theå ñöôïc ghi hoaëc ñoïc töïc tieáp tröø nhöõng tröôøng hôïp sau : * Thanh ghi C and D laø hai thanh ghi chæ ñoïc. * Bit thöù 7 cuûa thanh ghi A laø bit chæ ñoïc. * Bit cao cuûa byte thöù 2 laø bit chæ ñoïc. Hình 1: Sô ñoà ñòa chæ cuûa DS12C887 Thôøi gian vaø lòch ñaõ coù baèng caùch ñoïc caùc bytes boä nhôù hieän coù. Thôøi gian, lòch vaø baùo giôø ñöôïc ñaët hoaëc gaùn giaù trò baèng caùch ghi giaù trò bytes RAM thích hôïp. Noäi dung cuûa 10 bytes chöùa thôøi gian, lòch vaø baùo giôø ñeàu coù theå hieån thò ôû caû 2 daïng nhò phaân (Binary) hoaëc BCD (Binary-Coded Decimal). Tröôùc khi ghi leân caùc thanh ghi thôøi gian, lòch, vaø caùc thanh ghi baùo giôø beân trong, bit SET ôû thanh ghi B phaûi ñöôïc ñaët ôû möùc logic 1 ñeå ngaên ngöøa söï caäp nhaät coù theå xaûy ra trong quaù trình ghi ñeø. Theâm vaøo nöõa ñeå ghi leân 10 thanh ghi chæ thôøi gian, lòch, vaø thanh ghi baùo giôø ôû moät ñònh daïng ñaõ löïa choïn (BCD hay nhò phaân), bit choïn kieåu döõ lieäu (Data mode (DM)) cuûa thanh ghi B phaûi ñöôïc ñaët ôû möùc logic thích hôïp. Taát caû 10 bytes thôøi gian, lòch vaø baùo giôø phaûi söû duïng cuøng kieåu döõ lieäu. Bit ñöôïc ñaët ôû thanh ghi B neân ñöôïc xoaù sau khi bit kieåu döõ lieäu ñaõ ñöôïc ghi ñeå cho pheùp ñoàng hoà thôøi gian thöïc caäp nhaät bytes thôøi gian vaø lòch. Vaøo luùc ñaàu, ñoàng hoà thôøi gian thöïc caäp nhaät ôû moät kieåu ñaõ ñöôïc löïa choïn. Kieåu döõ lieäu khoâng theå thay ñoåi maø khoâng khôûi ñoäng laïi 10 bytes döõ lieäu. Baûng 2 trình baøy ñònh daïng nhò phaân vaø BCD cuûa caû thôøi gian , lòch, vaø baùo giôø. Bit löïa choïn kieåu hieån thò 24–12 khoâng thieå thay ñoåi maø khoâng khôûi ñoäng laïi thanh ghi giôø. Khi ñònh daïng 12 giôø ñöôïc löïa choïn, bit cao cuûa bytes giôø töông öùng vôùi PM khi noù ñöôïc ñaët ôû möùc logic 1. Bytes thôøi gian, lòch, vaø bytes baùo giôø luoân ñöôïc truy caäp bôûi vì chuùng ñöôïc ñeäm gaáp ñoâi. Moãi giaây moät laàn, 11 bytes ñöôïc naâng caáp vaø ñöôïc kieåm tra tình traïng baùo giôø. Neáu leänh ñoïc döõ lieäu thôøi gian vaø lòch ñieãn ra trong quaù trình caäp nhaät, moät vaán ñeà phaùt sinh laø giôø, phuùt, giaây, … coù theå khoâng chính xaùc. Xaùc xuaát ñoïc khoâng chính xaùc döõ lieäu
  5. thôøi gian vaø lòch laø raát thaáp. Coù vaøi phöông phaùp traùnh moät soá sai soá coù theå xaûy ra khi ñoïc thôøi gian vaø lòch ñöôïc ñeà caäp sau trong baøi vieát. 3 bytes baùo giôø coù theå söû duïng baèng 2 caùch. Caùch thöù nhaát, khi thôøi gian baùo giôø thöôïc ghi vaøo vò trí cuûa caùc thanh ghi giôø, phuùt, giaây, taùc ñoäng baùo giôø ñöôïc baét ñaàu taïi thôøi gian chính xaùc trong ngaøy khi bit cho pheùp baùo chuoâng ñöôïc ñaët ôû möùc cao. Caùch thöù hai söû duïng ñeå ñaët traïng thaùi baát chaáp vaøo moät hoaëc nhieàu bytes baùo chuoâng. Maõ baát chaáp laø baát kyø maõ soá hex naøo naèm trong giaù trò töø C0 ñeán FF. Hai bit coù troïng soá lôùn nhaát cuûa nhöõng byte treân ñaët vaøo traïng thaùi baát chaáp khi ôû möùc logic 1. Baùo giôø seõ ñöôïc sinh ra moãi giôø khi bit baát chaáp ñöôïc ñaët vaøo bytes giôø. Töông töï, baùo giôø seõ sinh ra moãi phuùt neáu maõ baát chaáp coù ôû bytes giôø vaø bytes phuùt. Neáu maõ baát chaáp coù ôû trong caû 3 bytes baùo giôø thì noù seõ taïo ra tín hieäu ngaét moãi giaây. Baûng 1 : Kieåu döõ lieäu thôøi gian, lòch vaø baùo giôø
  6. Hình 2: Giao tieáp bus vôùi IC Intel
  7. Phaàn 2:Ñoàng Hoà Baùo Giôø I/Sô ñoà nguyeân lyù +5V +5V +5V +5V +5V +5V +5V +5V 1 1 1 1 1 1 1 1 3 Q1 3 Q2 3 Q3 3 Q4 3 Q5 3 Q6 3 Q7 3 Q8 2N1132A 2N1132A 2N1132A 2N1132A 2N1132A 2N1132A 2N1132A 2N1132A 2 2 2 2 2 2 2 2 R1 R2 R3 R4 R5 R6 R7 R8 R R R R R R R R P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 3 8 3 8 3 8 3 8 3 8 3 8 3 8 3 8 U1 U2 U3 U4 U5 U6 U7 U8 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 ANODE1 ANODE 2 F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED F 7SEGMENT LED G G G G G G G G D C H D C H D C H D C H D C H D C H D C H D C H E B A E B A E B A E B A E B A E B A E B A E B A 10 10 10 10 10 10 10 10 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 1 2 4 5 6 7 9 D C H D C H D C H D C H D C H D C H D C H D C H E B A G E B A G E B A G E B A G E B A G E B A G E B A G E B A G F F F F F F F F J1 +5V 1 2 J2 3 P2.0R9 R E 4 P2.1R10 R D 5 P2.2R11 R C 1 P1.0 6 P2.3R12 R H 2 P1.1 7 P2.4R13 R B 3 P1.2 8 P2.5R14 R A 4 P1.3 9 P2.6R15 R F 5 P1.4 10 P2.7R16 R G 6 P1.5 7 P1.6 8 P1.7 HEADER 10 HEADER 8 Title Size Document Number Rev A Date: Thursday , December 07, 2006 Sheet 1 of 1 o +5V +5V +5V U1 24 DALLAS 1887 VCC 1 4 2 18 40 SW1 U2 2 RESET 3 22 1 2 P2.7 28 39 4 3 22 21 VCC 3 P2.6 27 P2.7/A15 P0.0/AD0 38 5 AD0 21 20 SW MODE R2 R +5V R1 4 P2.5 26 P2.6/A14 P0.1/AD1 37 6 AD1 20 16 2 3 5 P2.4 25 P2.5/A13 P0.2/AD2 36 7 AD2 16 19 INT0 1 SW2 4 4K7 6 P2.3 24 P2.4/A12 P0.3/AD3 35 8 AD3 IRQ 23 4 3 7 P2.2 23 P2.3/A11 P0.4/AD4 34 9 AD4 SQW 17 RD 8 P2.1 22 P2.2/A10 P0.5/AD5 33 10 AD5 DS 15 WR SW UP R3 R C1 9 P2.0 21 P2.1/A9 P0.6/AD6 32 11 AD6 R/W 14 ALE SW3 MOT GND 2 3 P2.0/A8 P0.7/AD7 AD7 AS SW 31 CS 1 4 SW4 1 2 P1.0 1 EA/VPP 10 10uF 1 2 3 P1.1 2 P1.0 P3.0/RXD 11 BUZZE P1.1 P3.1/TXD 12 13 RESET R4 4 P1.2 3 12 INT0 1 SW DOWN R5 R 5 P1.3 4 P1.2 P3.2/INT0 13 MODE 2 3 4K7 6 P1.4 5 P1.3 P3.3/INT1 14 UP 7 P1.5 6 P1.4 P3.4/T0 15 DOWN R6 8 P1.6 7 P1.5/MOSI P3.5/T1 16 WR 10K 9 P1.7 8 P1.6/MISO P3.6/WR 17 RD P1.7/SCK P3.7/RD C2 19 30 ALE XTAL1 ALE/PROG 29 33pF PSEN Y1 GND J1 C3 18 9 RESET +5V XTAL2 RST 12MHz +5V 33pF AT89S52 20 R7 Q1 1 BUZZE 2 P1.5 A1015 3 P1.6 J2 4 P1.7 J3 10k 5 RESET 6 1 P2.0 BUZZE1 1 P1.0 2 P2.1 2 P1.1 3 P2.2 3 P1.2 4 P2.3 SPEAKER HEADER 6 4 P1.3 5 P2.4 5 P1.4 6 P2.5 6 P1.5 7 P2.6 +5V 7 P1.6 8 P2.7 8 P1.7 9 10 HEADER 8 HEADER 10 2 J4 D1 +5V U3 7805 - + 1 3 1 1 3 GND 2 BRIDGE VIN VOUT R8 HEADER 2 R 2 C5 + C4 + C6 C7 C8 4 104 D2 470uF 220uF 104 104 LED Title DIGITAL CLOCK --- Designed by HOANG DANG KHOA Size Document Number Rev A4 Date: Thursday , December 07, 2006 Sheet 1 of 1
  8. II/Sô ñoà maïch in
  9. III. Sô ñoà khoái : Khoái Giao Khoái Xöû Lyù Tieáp Phím Baám Khoái Nguoàn Khoái Hieån Thò Khoái RTC
  10. IV/ Chöông trình 1/Löu ñoà thuaät toaùn Baét Ñaàu Laáy data töø RTC Hieån thò leân maøn hình ñuùng Doø phím Mode = 1? Set giôø ñuùng Doø phím Mode = 2? Set phút ñuùng Doø phím Mode = 3? Set giây sai Up=1? Tăng giá trị ô nhớ Keát Thuùc thích hợp lên 1 Đặt giá trị cho RTC sai Down = 1? Đặt giá trị cho RTC Giảm giá trị ô nhớ thích hợp đi 1
  11. 2/Chöông trình : bmode equ r2 mode bit p3.5 up bit p3.4 dwn bit p3.3 ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx org 0h td: lcall //khoitao lcall //doc_gpg lcall //hex_bcd lcall //bcd_7doan lcall //hienthi lcall //delay jb mode,adj sjmp td ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx khoitao: mov r0,#0ah mov a,#20h movx @r0,a mov r0,#0bh mov a,#06h ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx adj: lcall hienthi; chong nhay man hinh jb mode,adj inc bmode cjne bmode,#04h,b11 mov bmode,#0h ljmp td b11: mov 61h,#10h b13: mov 60h,#0ffh lcall doc_gpg lcall hex_bcd lcall bcd_7doan b12: lcall hienthi jb mode,adj jb up,tang jb dwn,giama djnz 60h,b12 cjne bmode,#01,ss11 mov 36h,#0ffh; tat don vi gio mov 37h,#0ffh; tat hang chuc gio sjmp tat ss11: cjne bmode,#2,ss12 mov 34h,#0ffh; tat don vi phut mov 33h,#0ffh; tat hang chuc phut sjmp tat
  12. ss12: mov 30h,#0ffh; tat don vi giay mov 31h,#0ffh; tat hang chuc giay tat: mov 60h,#0ffh tat1: lcall hienthi jb mode,adj jb up,tang jb dwn,giam djnz 60h,tat1 djnz 61h,b13 mov bmode,#0 ljmp td giama: sjmp giam ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx tang: mov 62h,#200; chong doi tang1: lcall hienthi djnz 62h,tang1 b26: cjne bmode,#1,ss21 mov r0,#04h movx a,@r0 inc a cjne a,#24,b21 mov a,#0h b21: movx @r0,a sjmp b22 ss21: cjne bmode,#2,ss22 mov r0,#02h movx a,@r0 inc a cjne a,#60,b23 mov a,#0h b23: movx @r0,a sjmp b22 ss22: mov r0,#00h movx a,@r0 inc a cjne a,#60,b24 mov a,#0h b24: movx @r0,a b22: mov 62h,#50 lcall doc_gpg lcall hex_bcd lcall bcd_7doan b25: lcall hienthi djnz 62h,b25
  13. jb up,b26 ljmp b11 ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx giam: mov 62h,#200; chong doi giam1: lcall hienthi djnz 62h,giam1 b36: cjne bmode,#1,ss31 mov r0,#04h movx a,@r0 dec a cjne a,#0ffh,b31 mov a,#23h b31: movx @r0,a sjmp b32 ss31: cjne bmode,#2,ss32 mov r0,#02h movx a,@r0 dec a cjne a,#0ffh,b33 mov a,#59 b33: movx @r0,a sjmp b32 ss32: mov r0,#00h movx a,@r0 dec a cjne a,#0ffh,b34 mov a,#59 b34: movx @r0,a b32: mov 62h,#200 lcall doc_gpg lcall hex_bcd lcall bcd_7doan b35: lcall hienthi djnz 62h,b35 jb dwn,b36 ljmp b11 ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx doc_gpg:
  14. mov r0,#00h movx a,@r0 mov 10h,a mov r0,#02h movx a,@r0 mov 11h,a mov r0,#04h movx a,@r0 mov 12h,a ret hex_bcd: mov r0,#10h mov r1,#20h hb: mov a,@r0 mov b,#10 div ab mov @r1,b inc r1 mov @r1,a inc r0 inc r1 cjne r0,#13h,hb ret bcd_7doan: mov dptr,#500h mov r0,#20h mov r1,#30h bc1: mov r7,#02h bc: mov a,@r0 movc a,@a+dptr mov @r1,a inc r0 inc r1 djnz r7,bc mov @r1,#0bfh inc r1 cjne r0,#26h,bc1 ret hienthi: mov r0,#30h mov a,#0feh ht: mov p2,@r0 mov p1,a lcall delay
  15. mov p1,#0ffh inc r0 rl a cjne a,#0feh,ht ret delay: mov 7fh,#50 djnz 7fh,$ ret org 500h db 00010001b,11010111b,00110010b,10010010b,11010100b,10 011000b,00011000b,11010011b,00010000b,10010000b end
Đồng bộ tài khoản