一線式時鐘芯片DS2417的原理與應(yīng)用
由主機控制DS2417以完成時間初始值的寫入或時間值的讀出必須經(jīng)過三個步驟,分別是:初始化使DS2417準備好、發(fā)ROM功能命令和相應(yīng)的64位光刻ROM數(shù)據(jù)、發(fā)時鐘功能命令讀寫控制字節(jié)和四個字節(jié)的時間值。假設(shè)一線僅掛接一個芯片,則對于ROM功能命令只需發(fā)跳過ROM[CCH]即可:而對于時鐘功能命令,不論是讀還是寫,第一個字節(jié)均為控制字,隨后的四個字節(jié)為時間數(shù)據(jù)。如將讀出的控制字放入30H,時間計數(shù)值從低位到高位依次放入31H~34H,那么,其子程序GETSJ如下:
GETSJ:LCALL INIT
MOV A,#0CCH
LCALL WRITE ;發(fā)跳過ROM命令
LCALL INIT
MOV A,#66H ;發(fā)讀時鐘命令
LCALL WRITE
MOV R0,#30H
MOV R7,#5
RDNEXT:LCALL READ
MOV @R0,A
INC R0
DJNZ R7,RDNEXT
RET
.......
如果子程序GETSJ讀取的時間值放于34H~31H中,根據(jù)選擇的時間基準,經(jīng)過編程變換即可得到日歷時間信息。如果一線上掛接多個DS2417或其它一線式接口芯片,則子程序GETSJ的編寫將會復(fù)雜一些,限于篇幅,本文不再,讀者可參閱相關(guān)文獻。
評論