【關鍵詞】串行EEPROM,智能計長儀,I2C總線
【論文摘要】本文介紹了串行EEPROM的特點及24C08在智能計長儀中的應用,給出了24C08與80C31單片機的連接與讀寫操作實例。
1 引 言
電可擦除可編程EEPROM在應用系統(tǒng)中既可由軟件對其內容進行隨機讀寫,又可在芯片斷電的情況下長期保存片內信息,因此兼?zhèn)淞薘AM和ROM的基本特點。EEPROM有串行和并行兩大類。并行EEPROM存儲容量較大,讀寫方法簡單,但價格較高,適用于信息量較多的場合。串行EEPROM結構簡單緊湊,價格低廉,但其讀寫方法復雜,存儲單元較小,一般用于掉電情況下需要保存或一些數(shù)據(jù)需要在線修改的場合,這類數(shù)據(jù)不多卻很重要,若使用常規(guī)的RAM芯片,就必須附帶一套性能可靠的掉電保護系統(tǒng),這不僅增加了線路設計的復雜性,同時也給設備的運行和維護帶來了諸多不便。使用串行EEPROM來存儲這類數(shù)據(jù)是最合適不過的。尤其隨著當今智能化儀表趨于小型化,再加上真正需要保存的以及預設的數(shù)據(jù)位、控制位、保密位并不占據(jù)太多的存儲空間,串行EEPROM的體積小,功耗低,硬件接口非常簡單,因而越來越受到人們的重視,在智能化儀器儀表、控制裝置等領域得到廣泛的應用。
24C系列串行EEPROM是目前串行EEPROM中用量畬蟮囊煥唷?4C系列串行EEPROM除具有一般串行EEPROM的體積小、功耗低、工作電壓允許范圍寬等特點外,還具有型號多、容量大、二總線協(xié)議、占用I/O口線少、容量擴展配置極其靈活方便、讀寫操作相對簡單等特點。正被廣泛用在多種數(shù)據(jù)卡、電鑰匙、智能電話、智能電表等多種智能儀器儀表當中。
2 24C系列串行EEPROM簡介
2.1 24C系列常用型號及引腳說明
目前在我國應用開發(fā)中,所用的24C系列串行EEPROM主要由ATMEL、MICROCHIP、XICOR、NA-TIONAL等幾家公司提供。目前市場上容量最小的為24C01(1kb),最大的是24C64(64kb),生產工藝都是CMOS工藝,工作電壓在1.8~5.5V之間,24系列有兩種封裝形式:8腳封裝和14腳封裝。我國目前開發(fā)用量最多的封裝形式是8腳PDIP封裝。8腳PDIP封裝的引腳定義如圖2—1所示。其中A0、A1、A2為器件地址選擇位,這3個引腳配置成不同的編碼值,在同一串行總線上最多可擴展8片同一容量或不同容量的24C系列串行EEPROM芯片。WP(TEST)為硬件寫保護控制端(測試端),這個引腳,脈沖的上升沿將數(shù)據(jù)寫入EEPROM,下降沿將數(shù)據(jù)從EEPROM中讀出。SDA為串行數(shù)據(jù)輸入輸出端,漏極開路驅動,容量擴展時,可以將多片24系列SDA引腳直接相連,實際使用時要加一個上拉電阻 。VCC和GND分別是電源和地。
2.2 器件地址
由于24C系列串行EEPROM是串行接口器件,則其地址、數(shù)據(jù)信息都在同一條線路上傳送,當串行總線上掛有多個芯片時,每個芯片必須具有唯一的器件地址。24C系列芯片的器件地址由7位數(shù)據(jù)位和一位讀寫位組成,即1010A2A1A0R/W,其中,高4位的1010為24系列的協(xié)議格式,是I2C總線分配給串行EEPROM的器件地址;之后的3位A2、A1、A0為可編程地址位,且256字節(jié)為一頁,由器件廠商定義,供在總線上聯(lián)接多片同一型號器件時分配器件地址用;最后一位是讀寫控制位R/W,當該位為高電平“1”時,表示當前的操作是讀操作,該位為低電平“0”時,表示當前的操作是寫操作。24C04以后的串行EEPROM芯片所需尋址位超出了8位,這樣,超出位采用了占用引腳地址(A2、A1、A0)的方式實現(xiàn)。參見表2—1。廠家規(guī)定,凡被尋址位占用的引腳在線路上只能作懸空處理,不能另行使用。即芯片容量大于256字節(jié)時,內部單元尋址采取了分頁處理的方法,每頁256字節(jié),而且頁尋址位包含在器件尋址字節(jié)內。
2.3 I2C總線(Inter Intergrade Circuit Bus)的時序和數(shù)據(jù)格式
24C系列串行EEPROM嚴格遵守I2C總線的時序和數(shù)據(jù)格式。起始位、停止位由SCL高電平期間SDA的跳變決定:下跳變時啟動I2C總線,上跳變時停止總線,見圖2—2所示。約定微處理器(如80C31)為主器件,EEPROM為從器件,其讀寫約定步驟為:主器件發(fā)送起始信號(S),占據(jù)串行總線,隨后發(fā)送7位從器件地址和一位讀寫方向位。從器件接收到主器件發(fā)送的器件尋址信號后,將在SDA總線上返回主器件一個確認信號A(低電平有效),表示作好讀寫準備。主器件在收到從器件的確認信號后,向從器件發(fā)送要訪問的數(shù)據(jù)地址(即片內地址),從器件收到后又向主器件返回一個確認信號A,至此EEPROM的讀寫準備工作完成。若為寫EEP-ROM,則主器件向從器件發(fā)送所寫數(shù)據(jù);若是讀EEPROM ,則由主器件接收從器件發(fā)送的指定單元的8位數(shù)據(jù)。數(shù)據(jù)讀寫操作結束,主器件將發(fā)送停止信號(P)。
3 24C08在智能計長儀中的應用
3.1 智能計長儀原理簡介
本文介紹的智能計長儀是紡織系統(tǒng)用來給織物計長的裝置,采用了MCS—51系列單片機80C31作為微處理器。前向通道電路采用了霍爾傳感器來采集信號,它是由磁鋼、開關集成型霍爾元件VGN3020和電平轉換電路組成的。磁鋼粘接于轉動部件的邊緣,霍爾元件固定于距離磁鋼1~3mm處,如圖3—1所示,當轉動部件轉動時,霍爾元件輸出脈沖信號 ,即磁鋼在轉動部件的同一圓周以等轉角分布的前提下,有L=πnD/Z成立,這里L為所計長度值,n為輸出脈沖數(shù)目,D為計長軸的直徑,Z為磁鋼的個數(shù),即轉動輪轉過一周,霍爾元件輸出的脈沖數(shù)。磁鋼的數(shù)目愈多,計長軸的直徑愈小,計長儀的分辨率愈高。單片機系統(tǒng)接收到脈沖信號后,開始計數(shù),計數(shù)單元對脈沖數(shù)進行累加并隨時進行長度換算,數(shù)值轉換成BCD碼后送LED顯示系統(tǒng)顯示,并完成其他的多種功能,象預置每捆長度值、計滿預置值停車、按班分別計長、顯示各班產量和三班的總產量等。
在該智能計長儀裝置中,系統(tǒng)掉電和停機的情況下需要保存一些重要的數(shù)據(jù),例如各個班次的產量值、預置每捆的長度值、以及累計的總產量值等數(shù)據(jù),這些數(shù)據(jù)是在任何情況下不能丟失的。因此采用了電可擦除的串行EEPROM24C08保存掉電或停機時的重要數(shù)據(jù);并且當再次開機時,讀出由24C08保存的數(shù)據(jù),從斷點繼續(xù)計長。24C08是典型的EEPROM、I2C接口器件,它的容量為1024×8Bit,需要10個尋址位,在讀/寫數(shù)據(jù)前由主器件寫入,內部存儲空間共分4頁,每頁256字節(jié)。24C08典型的頁寫入速度為2ms,電源電壓允許范圍為2.5V~5.5V,可以保證其掉電時寫入數(shù)據(jù)的可靠性。80C31的INT1作為系統(tǒng)掉電時電平比較測試端,控制向24C08寫入需保護數(shù)據(jù)。該智能計長儀的硬件電路除了一片80C31作為微處理器,還有一片鎖存器74HC3 73,一片程序存儲器27C64,采用了串行口擴展的靜態(tài)顯示器接口(設置串行口工作在移位寄存器,方式0狀態(tài)下),共使用6片串行輸入,并行輸出的移位寄存器74LS164。采用了P1口的P1.1~P1.5查詢方式獨立式按鍵電路。其原理圖如圖3—2所示。
3.2 單片機80C31與24C08的連接
上述設計的智能計長儀采用了MCS—51系列的80C31作為CPU,但80C31芯片沒有I2C總線接口,對I2C總線時序分析知道,可以利用80C31的兩根I/O線實現(xiàn)I2C總線的功能。由于單片機主控器系統(tǒng)中,時鐘線僅由主控器驅動,因此可以用80C31的一根I/O線作為SCL信號線,將其設置為輸出方式,由軟件控制產生串行時鐘信號;使用另一根I/O線作為I2C總線的數(shù)據(jù)線,由軟件控制在時鐘的低脈沖期間讀取和輸出數(shù)據(jù)。圖3—3是串行EEP-ROM和80C31的接口電路。圖中,P1.0作為串行時鐘控制線SCL,RD(P3.7)作為串行數(shù)據(jù)傳輸線。
3.3 24C08的讀寫操作
24C08有讀、寫兩類操作,寫操作分為單字節(jié)寫入模式和頁寫入模式兩種,單字節(jié)寫入一次寫入一個字節(jié)的數(shù)據(jù),頁寫入允許CPU在無需考慮周期時間的情況下快速、連續(xù)地向EEP-ROM寫入多個(對于24C08≤16個)字節(jié)(一頁);讀操作有當前地址讀取模式、隨機地址讀取模式和序列地址讀取模式3種方式,當前地址讀取靠內部數(shù)據(jù)指針獲得訪問地址,隨機地址讀取依靠主器件向EEPROM寫入地址進行訪問,序列讀取方式從某一地址開始順序讀取EEPROM內的一系列單元數(shù)據(jù),每讀取一個字節(jié)地址指針自動加1。在智能計長儀系列中,讀寫操作分別選取了頁寫入模式和當前地址讀取模式來在掉電時保護數(shù)據(jù)和在開機時讀取EEPROM中保護的數(shù)據(jù),多字節(jié)寫入的典型時間是2ms,其頁寫入和當前地址讀取數(shù)據(jù)的程序框圖如圖3—4所示。
圖3-4 智能計長儀讀寫邏輯框圖
4 結束語
串行EEPROM24C08應用到智能計長儀系統(tǒng)中,實現(xiàn)了掉電保護數(shù)據(jù),開機讀取數(shù)據(jù)的功能,具有較好的工程實用價值。實踐證明,串行EEPROM應用到MCS—51單片機系列中,可大大提高單片機系統(tǒng)的工作可靠性和穩(wěn)定性,且具有體積小、成本較低、功能強等特點。24系列EEPROM是目前市場上較流行的串行EEPROM,可廣泛用于MCS—51系列單片機組成的系統(tǒng)之中。同時隨著微電子技術和大規(guī)模集成電路的飛速發(fā)展,加之元器件的集成密度和結構工藝的進一步改善,使原來只能使用并行接口器件的場合,逐步被串行接口器件所取代,使其在串行接口器件儀器儀表、工業(yè)控制等領域也取得了前所未有的發(fā)展 。
?。蹍⒖嘉墨I]