產(chǎn)品中心 應(yīng)用方案 技術(shù)文摘質(zhì)量保證產(chǎn)品選型 下載中心業(yè)內(nèi)動(dòng)態(tài) 選型幫助 品牌介紹 產(chǎn)品一覽 聯(lián)系我們
- 一線(xiàn)式EE-PROM DS2430A在傳感器系統(tǒng)中的應(yīng)用
- 來(lái)源:電子發(fā)燒友 發(fā)表于 2010/10/26
DS2430A是256位一線(xiàn)式EE-PROM,具有3引腳TO-92小體積封裝形式或6引腳TSOC表面貼封裝形式,能安裝到印制電路板上或進(jìn)行引線(xiàn),其典型應(yīng)用包括儲(chǔ)存校準(zhǔn)系數(shù)、板卡識(shí)別以及產(chǎn)品升級(jí)的狀態(tài)信息等,很適合應(yīng)用到即插即用傳感器系統(tǒng)的識(shí)別模塊中。它除了具有一般1-Wire器件的特性外,還有一些特殊的結(jié)構(gòu)和要求。
1 DS2430A的內(nèi)部基本結(jié)構(gòu)
DS2430A內(nèi)部結(jié)構(gòu)如圖1所示。DS2430A有2個(gè)主要的數(shù)據(jù)部件:光刻ROM和存儲(chǔ)器。其存儲(chǔ)器由3個(gè)獨(dú)立部分組成,分別為256位數(shù)據(jù)存儲(chǔ)器EEPROM、64位應(yīng)用寄存器和8位狀態(tài)寄存器。每個(gè)數(shù)據(jù)存儲(chǔ)器和應(yīng)用寄存器都有其對(duì)應(yīng)的暫存單元,稱(chēng)為暫存器,當(dāng)向該器件寫(xiě)入數(shù)據(jù)時(shí),暫存器可作為緩沖器使用。數(shù)據(jù)存儲(chǔ)器可在需要時(shí)反復(fù)讀寫(xiě),而應(yīng)用寄存器只能編程一次。一旦對(duì)應(yīng)用寄存器進(jìn)行編程,它將自動(dòng)進(jìn)入寫(xiě)保護(hù)狀態(tài)。狀態(tài)寄存器用于指示應(yīng)用寄存器是否已被鎖定或是否可用于存儲(chǔ)數(shù)據(jù)。在應(yīng)用寄存器被編程之前,讀出的狀態(tài)寄存器值是FFH。當(dāng)把暫存器的數(shù)據(jù)寫(xiě)入到應(yīng)用寄存器時(shí),狀態(tài)寄存器的兩個(gè)最低有效位將被清零,此后讀出的狀態(tài)寄存器結(jié)果是FCH!
2 DS2430A的存儲(chǔ)器功能命令及使用方法
(1)Write Scratchpad[0Fh]寫(xiě)暫存器
發(fā)出Write Scratchpad命令后,緊接著單片機(jī)必須發(fā)出1字節(jié)的地址,隨后將需要送入數(shù)據(jù)存儲(chǔ)器的數(shù)據(jù)寫(xiě)入暫存器。DS2430A每收到1字節(jié)后地址會(huì)自動(dòng)加1。當(dāng)?shù)刂窞?Fh的暫存器也收到了數(shù)據(jù)字節(jié)以后,地址計(jì)數(shù)器將返回到OOh,可繼續(xù)寫(xiě)入下一個(gè)字節(jié),直到單片機(jī)發(fā)出復(fù)位脈沖。
(2)Read Scratchpad[AAh]讀暫存器
該命令用于在將暫存器數(shù)據(jù)復(fù)制到EEPROM存儲(chǔ)器之前對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證。單片機(jī)發(fā)出Read Scratchpad命令后,要緊接著發(fā)出1字節(jié)的地址,表明讀取數(shù)據(jù)的起始地址。主機(jī)每讀取一個(gè)字節(jié),DS2430A地址將自動(dòng)加1。讀取地址為1Fh的數(shù)據(jù)后,地址計(jì)數(shù)器將返回到OOh,可繼續(xù)讀取下一個(gè)字節(jié),直到單片機(jī)發(fā)出復(fù)位脈沖。
(3)Copy Scratchpad[55h]復(fù)制暫存器
存入暫存器的數(shù)據(jù)經(jīng)過(guò)確認(rèn)后,單片機(jī)便可發(fā)出Copy Scratchpad命令和確認(rèn)字節(jié)A5h,把數(shù)據(jù)從暫存器寫(xiě)入EEPROM存儲(chǔ)器。該命令總是把暫存器的全部數(shù)據(jù)復(fù)制到EEPROM。如果只想改變EEPROM中幾個(gè)字節(jié)的數(shù)據(jù),在發(fā)出Write Scratchpad和Copy Scrlatchpad命令之前,暫存器中應(yīng)該包含了最新的EE-PROM數(shù)據(jù)。發(fā)出該命令后,數(shù)據(jù)線(xiàn)要保持邏輯高電平狀態(tài)至少10 ms。
(4)Read Memory[F0h]讀存儲(chǔ)器
Read Memory命令用于讀取EEPROM數(shù)據(jù)存儲(chǔ)器中的部分或全部數(shù)據(jù),或把數(shù)據(jù)存儲(chǔ)器中的全部?jī)?nèi)容復(fù)制到暫存器,為僅改變EEPROM部分字節(jié)做準(zhǔn)備。當(dāng)把數(shù)據(jù)從數(shù)據(jù)存儲(chǔ)器復(fù)制到暫存器并進(jìn)行讀取時(shí),單片機(jī)必須發(fā)出Read Memory命令和1字節(jié)的數(shù)據(jù)讀取起始地址。單片機(jī)每讀取1字節(jié)的數(shù)據(jù),DS2430A的地址自動(dòng)加1。讀取地址1Fh的數(shù)據(jù)后,地址計(jì)數(shù)器將返回到00h,以便繼續(xù)讀取下一個(gè)字節(jié),直到主機(jī)發(fā)出復(fù)位脈沖。如果只希望將數(shù)據(jù)存儲(chǔ)器中的全部數(shù)據(jù)復(fù)制到暫存器中,而不必讀取數(shù)據(jù),單片機(jī)可以在發(fā)出命令字節(jié)后,立即發(fā)送復(fù)位脈沖。
(5)Write ApplicaTIon Register[99h]寫(xiě)應(yīng)用寄存器
該命令與Write Scratchpad命令基本相同,只是它是向64位應(yīng)用寄存器的暫存器寫(xiě)入數(shù)據(jù)。在發(fā)出命令代碼后,主機(jī)必須提供1字節(jié)的地址,隨后發(fā)送要寫(xiě)入的數(shù)據(jù)。DS2430每收到1字節(jié)后地址會(huì)自動(dòng)加1。當(dāng)?shù)刂窞?7h的暫存器收到數(shù)據(jù)后,地址計(jì)數(shù)器將返回到00h,可繼續(xù)寫(xiě)入下一個(gè)字節(jié),直到主機(jī)發(fā)出復(fù)位脈沖。只要應(yīng)用寄存器未被鎖定,就可以使用Write Application Register命令。如果向已經(jīng)鎖定的應(yīng)用寄存器發(fā)出該命令,寫(xiě)入寄存器暫存器的數(shù)據(jù)將會(huì)丟失。
轉(zhuǎn)載請(qǐng)注明來(lái)源:賽斯維傳感器網(wǎng)(tcmtest.cn)