Dong Ho Thoi Gian Thuc DS1307

Embed Size (px)

Citation preview

  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    1/18

    ng h thi gian thc DS1307 +89S52 !

    Mch ng h hin th gi pht giy ,c kh nng lu gi khi mt in .Thch hp cho nhng ai mun t tay lm chring mnh ,hoc tng bn b.

    Mch s dng chip thi gian thc DS 1307 hot ng tn s 32768kHZ c nui bng ngun d phng 3V c

    hot ng trong thi gian 5 nm khi k c ngun in

    I, Ni qua v chun giao tip I2cGiao thc u tin truyn thng ni tip c pht trin bi Philips Semiconductor v c gi l bus I2C. V ngunn c thit k l iu khin lin thng IC (Inter-Intergrated Circuit) nn n c t tn l I2C. Tt c cc chitch hp v tng thch vi I2C u c thm mt giao din tch hp trn Chip truyn thng trc tip vi cc thitng thch I2C khc. Vic truyn d liu ni tip theo hai hng 8 bit c thc thi theo 3 ch sau: Chun(Standard)100 Kbits/sec Nhanh (Fast)400 Kbits/sec Tc cao (High speed)3.4 Mbits/sec ng bus thc truyn thng ni tip I2C gm hai ng l ng truyn d liu ni tip SDA v ng truyn nhp xung ng htip SCL. V c ch hot ng l ng b nn n cn c mt nhp xung tn hiu ng b. Cc thit b h tr I2C

    mt a ch nh ngha trc, trong mt s bit a ch l thp c th cu hnh. n v hoc thit b khi to qu trtruyn thng l n v Ch v cng l n v to xung nhp ng b, iu khin cho php kt thc qu trnh truyn.n v Ch mun truyn thng vi n v khc n s gi km thng tin a ch ca n v m n mun truyn trongliu truyn. n v T u c gn v nh a ch thng qua n v Ch c th thit lp truyn thng v trao d liu. Bus d liu c thit k cho php thc hin nhiu n v Ch v T trn cng Bus. Qu trnh truynthng I2C c bt u bng tn hiu start to ra bi n v Ch. Sau n v Ch s truyn i d liu 7 bit chach ca n v T m n mun truyn thng, theo th t l cc bit c trng s ln nht MSB s c truyn trc.th tm tip theo s cha thng tin xc nh n v T s thc hin vai tr nhn (0) hay gi (1) d liu. Tip thel mt bit ACK xc nhn bi n v nhn nhn c 1 byte trc hay khng. n v truyn (gi) s truyn byte d liu bt u bi MSB. Ti im cui ca byte truyn, n v nhn s to ra mt bit xc nhn ACK mi. Khumu 9 bit ny (gm 8 bit d liu v 1 bit xc nhn) s c lp li nu cn truyn tip byte na. Khi n v Ch

    i xong d liu cn n s quan st bit xc nhn ACK cui cng ri sau s to ra mt tn hiu dng STOP k

    http://i424.photobucket.com/albums/pp324/leduche/Hnhnh0069.jpg
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    2/18

    thc qu trnh truyn thng. I2C l mt giao din truyn thng c bit thch hp cho cc ng dng truyn thng gicc n v trn cng mt bo mch vi khong cch ngn v tc thp. V d nh truyn thng gia CPU vi ccchc nng trn cng mt bo mch nh EEPROM, cm bin, ng h to thi gian thc... Hu ht cc thit b h trhot ng tc 400Kbps, mt s cho php hot ng tc cao vi Mbps. I2C kh n gin thc thi kt nnhiu n v v n h tr c ch xc nh a ch.

    II, S lc v chip thi gian thc Ds1307

    DS1307 l chip ng h thi gian thc (RTC : Real-time clock), khi nim thi gian thc y c dng vi ngthi gian tuyt i m con ngi ang s dng, tnh bng giy, pht, gi DS1307 l mt sn phm ca Dallas

    Semiconductor (mt cng ty thuc Maxim Integrated Products). Chip ny c 7 thanh ghi 8-bit cha thi gian l: gipht, gi, th (trong tun), ngy, thng, nm. Ngoi ra DS1307 cn c 1 thanh ghi iu khin ng ra ph v 56 thaghi trng c th dng nh RAM. DS1307 xut hin 2 gi SOIC v DIP c 8 chn

    Cc chn ca DS1307 c m t nh sau: X1 v X2: l 2 ng kt ni vi 1 thch anh 32.768KHz lm ngun tong cho chip. VBAT: cc dng ca mt ngun pin 3V nui chip. GND: chn mass chung cho c pin 3V v VcVcc: ngun cho giao din I2C, thng l 5V v dng chung vi vi iu khin. Ch l nu Vcc khng c cp ngnhng VBAT c cp th DS1307 vn ang hot ng (nhng khng ghi v c c). SQW/OUT: mt ng phxung vung (Square Wave / Output Driver), tn s ca xung c to c th c lp trnh. Nh vy chn ny hukhng lin quan n chc nng ca DS1307 l ng h thi gian thc, chng ta s b trng chn ny khi ni mchSCL v SDA l 2 ng giao xung nhp v d liu ca giao din I2C. C th kt ni DS1307 bng mt mch ingin nh sau:

    Cu to bn trong DS1307 bao gm mt s thnh phn nh mch ngun, mch dao ng, mch iu khin logic, giao din I2C, con tr a ch v cc thanh ghi (hay RAM). S dng DS1307 ch yu l ghi v c cc thanh ghi cchip ny. V th c 2 vn c bn l cu trc cc thanh ghi v cch truy xut cc thanh ghi ny thng qua giaoI2C. Nh trnh by, b nh DS1307 c tt c 64 thanh ghi 8-bit c nh a ch t 0 n 63 (t 00H n 3FHh HexaDecimal). Tuy nhin, thc cht ch c 8 thanh ghi u l dng cho chc nng ng h (RTC) cn li 56 thghi b trng c th c dng cha bin tm nh RAM nu mun. By thanh ghi u tin cha thng tin v thi gca ng h bao gm: giy (SECONDS), pht (MINUETS), gi (HOURS), th (DAY), ngy (DATE), thng (MONTHnm (YEAR). Vic ghi gi tr vo 7 thanh ghi ny tng ng vi vic ci t thi gian khi ng cho RTC. Vicgi tr t 7 thanh ghi l c thi gian thc m chip to ra. V d, lc khi ng chng trnh, chng ta ghi vo thanhgiy gi tr 42, sau 12s chng ta c thanh ghi ny, chng ta thu c gi tr 54. Thanh ghi th 8 (CONTROL) thanh ghi iu khin xung ng ra SQW/OUT (chn 6). Tuy nhin, do chng ta khng dng chn SQW/OUT nn c

    b qua thanh ghi th 8. T chc b nh ca DS1307 c trnh by trong hnh 3. V 7 thanh ghi u tin l quan t

    http://files.myopera.com/PeterLeDucAn/blog/mach_dong_ho_rtd_hinh%202.jpghttp://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%201b.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    3/18

    nht trong hot ng ca DS1307, chng ta s kho st cc thanh ghi ny mt cch chi tit. Trc ht hy quan schc theo tng bit ca cc thanh ghi ny nh trong hnh

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%203.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    4/18

    T chc cc thanh ghi thi gian Thanh ghi giy (SECONDS): thanh ghi ny l thanh ghi u tin trong b nh caDS1307, a ch ca n l 0x00. Bn bit thp ca thanh ghi ny cha m BCD 4-bit ca ch s hng n v ca gigiy. Do gi tr cao nht ca ch s hng chc l 5 (khng c giy 60) nn ch cn 3 bit (cc bit SECONDS 6:4) l th m ha c (s 5 =101, 3 bit). Bit cao nht, bit 7, trong thanh ghi ny l 1 iu khin c tn CH (Clock halt tng h), nu bit ny c set bng 1 b dao ng trong chip b v hiu ha, ng h khng hot ng. V vy, nhthit phi reset bit ny xung 0 ngay t u. Thanh ghi pht (MINUTES): c a ch 01H, cha gi tr pht ca ng

    Tng t thanh ghi SECONDS, ch c 7 bit ca thanh ghi ny c dng lu m BCD ca pht, bit 7 lun lun bThanh ghi gi (HOURS): c th ni y l thanh ghi phc tp nht trong DS1307. Thanh ghi ny c a ch 02H. Trht 4-bits thp ca thanh ghi ny c dng cho ch s hng n v ca gi. Do DS1307 h tr 2 loi h thng higi (gi l mode) l 12h (1h n 12h) v 24h (1h n 24h) gi, bit6 (hnh 4) xc lp h thng gi. Nu bit6=0 th hthng 24h c chn, khi 2 bit cao 5 v 4 dng m ha ch s hng chc ca gi tr gi. Do gi tr ln nht cas hng chc trong trng hp ny l 2 (=10, nh phn) nn 2 bit 5 v 4 l m ha. Nu bit6=1 th h thng 1c chn, vi trng hp ny ch c bit 4 dng m ha ch s hng chc ca gi, bit 5 (mu orange trong hnh 4bui trong ngy, AM hoc PM. Bit5 =0 l AM v bit5=1 l PM. Bit 7 lun bng 0. Thanh ghi th (DAY ngy trong tnm a ch 03H. Thanh ghi DAY ch mang gi tr t 1 n 7 tng ng t Ch nht n th 7 trong 1 tun. V thc 3 bit thp trong thanh ghi ny c ngha. Cc thanh ghi cn li c cu trc tng t, DATE cha ngy trong thnn 31), MONTH cha thng (1 n 12) vYEAR cha nm (00 n 99). Ch , DS1307 ch dng cho 100 nm, n

    tr nm ch c 2 ch s, phn u ca nm do ngi dng t thm vo (v d 20xx). Ngoi cc thanh ghi trong b nDS1307 cn c mt thanh ghi khc nm ring gi l con tr a ch hay thanh ghi a ch (Address Register). Gi trthanh ghi ny l a ch ca thanh ghi trong b nh m ngi dng mun truy cp.

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%204.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    5/18

    III,AT89S52: S KHI V S CHN

    Vi iu khin 8051 c Intel cho ra i vo nm 1980 thuc vi iu khin u tin ca h MCS-51. Hin ti rt nhnh sn xut nh Siemens, Advanced Micro Devices, Fusisu v Philips tp trung pht trin cc sn phm trn c s8051.Atmel l hng cho ra i cc chip 89C51, 52, 55 v sau ci tin thm, hng cho ra i 89S51, 89S52,89S8252 Cu hnh 89S52: + 8KB b nh chng trnh. + Dao ng bn ngoi vi thch anh

  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    6/18

    V c bn th cc chip nu trn ging nhau, ch c mt s tnh nng c ci tin thm. Cc phin bn v sau cnnhiu khi tnh nng c bit hn. Chng ta xem bng so snh mt s loi ph bin nh di y.

    Chc nng cc chn 89S52 P0,1,2,3 c chc nng c bn xut/nhp. Ring P0, P2 cn c chc nng kt ni bnh m rng, s c kho st trong phn m rng b nh. P1: Chn T2 v T2EX dng cho timer/ counter 2. Hachc nng ny s kho st trong phn Timer. Chn SS\, MOSI, MISO, SCK truyn d liu theo chun SPI ng th

    chc nng kt ni vi mch np chng trnh. Xem hnh

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%208.JPGhttp://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%207.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    7/18

    Mch np :

    Chn ALE, PSEN, WR\, RD\ dng kt ni b nh m rng. Chn EA\ c chc nng chn b nh chng trnhEA\=GND: Chn b nh ngoi, EA\=VCC chn b nh ni. Chn Xtal1 v Xtal2 gn vi thch anh

    IV, THUT TON GIAO TIP I2C VI VI IU KHIN 89S52

    iu kin START and STOP START v STOP l nhng iu kin bt buc phi c khi mt thit b ch mun thit lgiao tip vi mt thit b no trong mng I2C. START l iu kin khi u, bo hiu bt u ca giao tip, cnSTOP bo hiu kt thc mt giao tip. Hnh 11 m t iu kin START v iu kin STOP khi giao tip I2C giaDS1307 vi Vi iu Khin.

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2010.JPGhttp://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%209.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    8/18

    Ban u khi cha thc hin qu trnh giao tip, c hai ng SDA v SCL u mc cao (SDA = SCL = HIGH). Lny bus I2C c coi l ri (bus free), sn sng cho mt giao tip. Hai iu kin START v STOP l khng th

    trong vic giao tip gia cc thit b I2C, tt nhin l trong giao tip ny cng khng ngoi l. iu kin START: mchuyn i trng thi t cao xung thp trn ng SDA trong khi ng SCL ang mc cao (cao = 1; thp = 0hiu mt iu kin START iu kin STOP: Mt s chuyn i trng thi t mc thp ln cao trn ng SDA trkhi ng SCL ang mc cao. C hai iu kin START v STOPu c to ra bi thit b ch. Sau tn hiuSTART, bus I2C coi nh ang trong trng thi lm vic (busy). Bus I2C s ri, sn sng cho mt giao tip mi sauhiu STOP t pha thit b ch. Sau khi c mt iu kin START, trong qua trnh giao tip, khi c mt tn hiu STAc lp li thay v mt tn hiu STOP th bus I2C vn tip tc trong trng thi bn. Tn hiu START v lp li STAu c chc nng ging nhau l khi to mt giao tip.

    Ch hot ng

    Ch hot ng ca I2C DS1307 c th hot ng 2 ch sau: ch slave nhn (ch DS1307 ghi ):d liu v chui xung clock s c nhn thng qua SDA v SCL. Sau mi byte c nhn th 1 bit ACKnowledgec truyn. Cc iu kin START v STOP s c nhn dng khi bt u v kt thc 1 truyn 1 chui, nhn da ch c thc hin bi phn cng sau khi chp nhn a ch ca slave v bit mt chiu. Ch slave pht ( cDS1307 c ): byte u tin slave nhn c tng t nh ch slave ghi. Tuy nhin trong ch ny th bit chch chiu chuyn ngc li. Chui d liu c phat i trn SDA bi DS1307 trong khi chui xung clock vo chn

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2013.JPGhttp://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2012.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    9/18

    lm vic vi DS1307, ta thc hin cc bc nh sau: START I2C Ghi: 0DxH (y l a ch ca DS1307 dosn xut quy nh trong giao tip I2C) vi: x=0: Ghi d liu vo DS1307 x=1: c d liu vo DS1307 Ghi tham sny vo, c ngha l vic tip theo l chng tag hi hay c d liu t con DS1307 ty vo gi tr x=0 (ghi d liu) hax=1 (c d liu). Ghi vo a ch thanh ghi cn ghi hoc cn c (bng thanh ghi ca DS1307 ny c gthiu hnh 3 & hnh 4). Ghi hoc c d liu. STOP I2C

    Mt v d minh ha cho vic c ghi Thanh ghi c a ch 01H cha Data v pht, mun set pht vo DS1307 chta lm theo quy trnh: STARTGhi: 0D0HGhi tip: 01HGhi tip: Ghi tip hoc STOP nu ch mun ci t thgian cho pht.

    Nu mun Ghi vo a ch 01H ri k tip Ghi vo a ch 04H chng hn th chng ta phi START li t uGhi 0D0H ( xc nh s Ghi vo DS1307 _ hng giao tip l Ghi vo) Ghi tip 04HGhi d liu ca thanh ghi ctSTOP I2C. Tng t, nu chng ta mun c th trc ht chng ta phi ghi vo a ch cn c: tc l vntc tin hnh 3 th tc STARTGhi 0D0HGhi vo a ch (a ch ca thanh ghi m ta mun c d liu). Sau START li ri ghi li 0D1H (lc ny mi thng bo l ta s c t DS1307), tip theo c c bnh thng (thanh ghc s l thanh ghi c a ch ta mi va ghi vo), tip tc c th a ch cn c s t ng tng ln cho n khSTOP I2C.

    V, S KHI TNG QUT CA MCH NG H

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2014.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    10/18

    Da vo s khi ca giao tip trn, iu c bn l chng ta phi vit mt phn mm khi to DS1307, thc ra lchng trnh giao tip I2C, c gi tr trong Ram ca con DS1307 lu tm thi vo trong Ram ca 89S52. Sau ,thm mt phn mm c ni dung trong Ram ny a ra hin th bng phng php qut. n gin, vic

    liu t DS1307 lu vo trong Ram ca 89S52 v hin th gi_pht_giy, c chia ra lm 2 chng trnh con nhc phm nhn th s nhy n chng trnh con x l phm nhn ring.

    S nguyn l:

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2016.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    11/18

    S mch in:

    http://i424.photobucket.com/albums/pp324/leduche/anhchup.jpghttp://i424.photobucket.com/albums/pp324/leduche/dongho.jpg
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    12/18

    VI,THIT K PHN MM

    Nh trnh by trong phn thut ton gaio tip v s khi tng qut, th chng trnh MAIN ca chng ta s gmc chnh c m t c th trong lu ca chng trnh MAIN hnh

    http://i424.photobucket.com/albums/pp324/leduche/14-10-10_2029.jpg
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    13/18

    Gii thch lu chnh ny: Bt u, chng trnh s gi chng trnh con c d liu t con DS1307 vi chun g

    tip I2C bng phng php c trnh by c th mc 4 (thut ton giao tip), sau , s gi chng trnh coqut Led 7 on hin th 6 s: 2 s hin th gi tr ca Gi, 2 s hin th gi tr ca Pht, 2 s hin th gi tr ca GiyNu phm MODE (chn ch ci t) khng c nhn th vng lp ca chng trnh ny s chy v tn. Nu pMODE c nhn, n s nhy ti chng trnh con ci t gi hay pht cn ty thuc vo s ln nhn phm MODSau y ta i vo chi tit ca tng khi nh:

    C D LIU T DS1307 LU VO TRONG RAM CA 89S52 Xem lu chng trnh nh hnh di. y,chng trnh con nh hn, chng hn nh: CTC SEND_START, SEND_STOP, SEND_BYTE, v.v. c cptrong mc 4 (thut ton giao tip c cp trn).

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2018.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    14/18

    VII, HIN TH BNG PHNG PHP QUT LED 7 ON

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2019.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    15/18

    VIII, CI T THI GIANTrong lu gii thut trn hnh trn

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2020.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    16/18

    , cho chngthy, vng lp ca chng trnh s chy v tn cho n khi c phm MODE c n xung. Khi , n nhy n C

    gii quyt vic ci t thi gian. Lu gii thut ca CTC x l ci t phm c th hin hnh

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2021.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    17/18

    Lu CTC ci t gi CTC ci t pht cng c nguyn tc tng t nh ci t gi nn khng c ni ra Nhn vo lu chng ta thy, ThanhGhi=02H, l a ch ca thanh ghi Gi trong con DS1307, nh vy, mc ch vic nh ngha nh ThanhGhi l xc nh a ch thay i gi tr trong nh RAM ca con DS1307. CTC ci gi s lp v tn v CTC hin thi gi s ch cho hin th 2 Led 7 on, ch hin th gi trong khi ci t, tt c cc Led cn li u tt ht. Trong khi CTC ci t ang chy v tn, nu c phm INC hoc DEC c nhn th n s nn CTC tng hoc gim ty vo phm c nhn. CTC tng gi c ch ra hinh 22 bn di y, nguyn tc CTC gim gi cng nh vy.

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2021.JPG
  • 7/27/2019 Dong Ho Thoi Gian Thuc DS1307

    18/18

    Lu CTC tng gi Nu nhn phm tng qu 23, th chng trnh s t thi gian li gi tr l 00h.

    the and!

    http://machdientu.tk/index.php?go=category_11

    http://files.myopera.com/PeterLeDucAn/blog/mach-dong-ho-dung-hinh%2022.JPG