引言
隨著測控系統(tǒng)的自動化程度、復雜性、精度和可靠性要求的不斷提高,人們對傳感器性能的要求也越來越高。目前IEEE 1451.4為傳感器提供了新的標準。該標準建立了一個使傳感器具有即插即用功能的通用方法——為模擬接口傳感器附加自我描述的功能,以減少傳感器配置所用的時間,以及在此過程中面臨的風險。識別模塊作為即捅即用傳感器的重要組成部分,為傳感器提供自我描述信息。DS2430A是Maxim公司推出的256位一線式EE-PROM,具有3引腳TO-92小體積封裝形式或6引腳TSOC表面貼封裝形式,能安裝到印制電路板上或進行引線,其典型應用包括儲存校準系數(shù)、板卡識別以及產(chǎn)品升級的狀態(tài)信息等,很適合應用到即插即用傳感器系統(tǒng)的識別模塊中。它除了具有一般1-Wire器件的特性外,還有一些特殊的結構和要求。
1 DS2430A的內(nèi)部基本結構
DS2430A內(nèi)部結構如圖1所示。DS2430A有2個主要的數(shù)據(jù)部件:光刻ROM和存儲器。其存儲器由3個獨立部分組成,分別為256位數(shù)據(jù)存儲器EEPROM、64位應用寄存器和8位狀態(tài)寄存器。每個數(shù)據(jù)存儲器和應用寄存器都有其對應的暫存單元,稱為暫存器,當向該器件寫入數(shù)據(jù)時,暫存器可作為緩沖器使用。數(shù)據(jù)存儲器可在需要時反復讀寫,而應用寄存器只能編程一次。一旦對應用寄存器進行編程,它將自動進入寫保護狀態(tài)。狀態(tài)寄存器用于指示應用寄存器是否已被鎖定或是否可用于存儲數(shù)據(jù)。在應用寄存器被編程之前,讀出的狀態(tài)寄存器值是FFH。當把暫存器的數(shù)據(jù)寫入到應用寄存器時,狀態(tài)寄存器的兩個最低有效位將被清零,此后讀出的狀態(tài)寄存器結果是FCH。
2 DS2430A的存儲器功能命令及使用方法
(1)Write Scratchpad[0Fh]寫暫存器
發(fā)出Write Scratchpad命令后,緊接著單片機必須發(fā)出1字節(jié)的地址,隨后將需要送入數(shù)據(jù)存儲器的數(shù)據(jù)寫入暫存器。DS2430A每收到1字節(jié)后地址會自動加1。當?shù)刂窞?Fh的暫存器也收到了數(shù)據(jù)字節(jié)以后,地址計數(shù)器將返回到OOh,可繼續(xù)寫入下一個字節(jié),直到單片機發(fā)出復位脈沖。
(2)Read Scratchpad[AAh]讀暫存器
該命令用于在將暫存器數(shù)據(jù)復制到EEPROM存儲器之前對數(shù)據(jù)進行驗證。單片機發(fā)出Read Scratchpad命令后,要緊接著發(fā)出1字節(jié)的地址,表明讀取數(shù)據(jù)的起始地址。主機每讀取一個字節(jié),DS2430A地址將自動加1。讀取地址為1Fh的數(shù)據(jù)后,地址計數(shù)器將返回到OOh,可繼續(xù)讀取下一個字節(jié),直到單片機發(fā)出復位脈沖。
(3)Copy Scratchpad[55h]復制暫存器
存入暫存器的數(shù)據(jù)經(jīng)過確認后,單片機便可發(fā)出Copy Scratchpad命令和確認字節(jié)A5h,把數(shù)據(jù)從暫存器寫入EEPROM存儲器。該命令總是把暫存器的全部數(shù)據(jù)復制到EEPROM。如果只想改變EEPROM中幾個字節(jié)的數(shù)據(jù),在發(fā)出Write Scratchpad和Copy Scrlatchpad命令之前,暫存器中應該包含了最新的EE-PROM數(shù)據(jù)。發(fā)出該命令后,數(shù)據(jù)線要保持邏輯高電平狀態(tài)至少10 ms。
(4)Read Memory[F0h]讀存儲器
Read Memory命令用于讀取EEPROM數(shù)據(jù)存儲器中的部分或全部數(shù)據(jù),或把數(shù)據(jù)存儲器中的全部內(nèi)容復制到暫存器,為僅改變EEPROM部分字節(jié)做準備。當把數(shù)據(jù)從數(shù)據(jù)存儲器復制到暫存器并進行讀取時,單片機必須發(fā)出Read Memory命令和1字節(jié)的數(shù)據(jù)讀取起始地址。單片機每讀取1字節(jié)的數(shù)據(jù),DS2430A的地址自動加1。讀取地址1Fh的數(shù)據(jù)后,地址計數(shù)器將返回到00h,以便繼續(xù)讀取下一個字節(jié),直到主機發(fā)出復位脈沖。如果只希望將數(shù)據(jù)存儲器中的全部數(shù)據(jù)復制到暫存器中,而不必讀取數(shù)據(jù),單片機可以在發(fā)出命令字節(jié)后,立即發(fā)送復位脈沖。
(5)Write ApplicaTIon Register[99h]寫應用寄存器
該命令與Write Scratchpad命令基本相同,只是它是向64位應用寄存器的暫存器寫入數(shù)據(jù)。在發(fā)出命令代碼后,主機必須提供1字節(jié)的地址,隨后發(fā)送要寫入的數(shù)據(jù)。DS2430每收到1字節(jié)后地址會自動加1。當?shù)刂窞?7h的暫存器收到數(shù)據(jù)后,地址計數(shù)器將返回到00h,可繼續(xù)寫入下一個字節(jié),直到主機發(fā)出復位脈沖。只要應用寄存器未被鎖定,就可以使用Write