新聞中心

        EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > I2C總線應(yīng)用下的EEPROM測(cè)試

        I2C總線應(yīng)用下的EEPROM測(cè)試

        作者: 時(shí)間:2012-04-13 來(lái)源:網(wǎng)絡(luò) 收藏

        1 的工作原理及其特點(diǎn)

        本文引用地址:http://www.104case.com/article/194073.htm

        是一種用于IC器件之間連接的二線制,最早由Philips公司推出。它通過(guò)SDA(串行數(shù)據(jù)線)及SCL(串行時(shí)鐘線)兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識(shí)別每個(gè)器件,不管是單片機(jī)、存儲(chǔ)器、LCD驅(qū)動(dòng)器還是鍵盤接口。串行擴(kuò)展總線有突出的優(yōu)點(diǎn),電路結(jié)構(gòu)簡(jiǎn)單,程序編寫方便,易于實(shí)現(xiàn)用戶系統(tǒng)軟硬件的模塊化、標(biāo)準(zhǔn)化等。

        采用總線標(biāo)準(zhǔn)的單片機(jī)或IC器件,其內(nèi)部不僅有I2C接口電路,而且將內(nèi)部各單元電路按功能劃分為若干相對(duì)獨(dú)立的模塊,通過(guò)軟件尋址實(shí)現(xiàn)片選,減少了器件片選線的連接。I2C總線接口電路結(jié)構(gòu)如圖1所示。

        11.gif

        當(dāng)某個(gè)器件向總線上發(fā)送信息時(shí),它就是發(fā)送器(也叫主器件),而當(dāng)其從總線上接收信息時(shí),又成為接收器(也叫從器件)。主器件用于啟動(dòng)總線上傳送數(shù)據(jù)并產(chǎn)生時(shí)鐘以開(kāi)放傳送的器件,此時(shí)任何被尋址的器件均被認(rèn)為是從器件。I2C總線的控制完全由掛接在總線上的主器件送出的地址和數(shù)據(jù)決定。在總線上,既沒(méi)有中心機(jī),也沒(méi)有優(yōu)先機(jī)。

        在I2C總線上傳送信息時(shí)的時(shí)鐘同步信號(hào)是由掛接在SCL時(shí)鐘線上的所有器件的邏輯“與”完成的。SCL線上由高電平到低電平的跳變將影響到這些器件,一旦某個(gè)器件的時(shí)鐘信號(hào)下跳為低電平,將使SCL線一直保持低電平,使SCL線上的所有器件開(kāi)始低電平期。此時(shí),低電平周期短的器件的時(shí)鐘由低至高的跳變并不能影響SCL線的狀廟,于是這些器件將進(jìn)入高電平等待的狀態(tài)。

        當(dāng)所有器件的時(shí)鐘信號(hào)都上跳為高電平時(shí),低電平期結(jié)束,SCL線被釋放返回高電平,即所有的器件都同時(shí)開(kāi)始它們的高電平期。其后,第一個(gè)結(jié)束高電平期的器件又將SCL線拉成低電平。這樣就在 SCL線上產(chǎn)生一個(gè)同步時(shí)鐘。可見(jiàn),時(shí)鐘低電平時(shí)間由時(shí)鐘低電平期最長(zhǎng)的器件確定,而時(shí)鐘高電平時(shí)間由時(shí)鐘高電平期最短的器件確定。在I2C總線技術(shù)規(guī)范中,開(kāi)始和結(jié)束信號(hào)的定義如圖2所示。當(dāng)時(shí)鐘線SCL為高電平時(shí),數(shù)據(jù)線SDA由高電平跳變?yōu)榈碗娖蕉x為“開(kāi)始”信號(hào);當(dāng)SCL線為低電平時(shí),SDA線發(fā)生低電平到高電平的跳變?yōu)?ldquo;結(jié)束”信號(hào)。

        22.gif

        I2C總線還具有廣播呼叫地址用于尋址總線上所有器件的功能。若一個(gè)器件不需要廣播呼叫尋址中所提供的任何數(shù)據(jù),則可以忽略該地址不作響應(yīng)。

        I2C 總線具有多主控能力,可以對(duì)發(fā)生在SDA線上的總線競(jìng)爭(zhēng)進(jìn)行仲裁,其仲裁原則是這樣的:當(dāng)多個(gè)主器件同時(shí)想占用總線時(shí),如果某個(gè)主器件發(fā)送高電平,而另一個(gè)主器件發(fā)送低電平,則發(fā)送電平與此時(shí)SDA總線電平不符的那個(gè)器件將自動(dòng)關(guān)閉其輸出級(jí)。總線競(jìng)爭(zhēng)的仲裁是在兩個(gè)層次上進(jìn)行的。首先是地址位的比較,如果主器件尋址同一個(gè)從器件,則進(jìn)入數(shù)據(jù)位的比較,從而確保了競(jìng)爭(zhēng)仲裁的可靠性。

        目前世界上采用的I2C總線有兩個(gè)規(guī)范,它們分別是由荷蘭 PHILIPS公司和日本SONY公司提出的。現(xiàn)在廣泛采用的是PHILIPS公司的I2C總線技術(shù)規(guī)范,它已成為被電子行業(yè)認(rèn)可的總線標(biāo)準(zhǔn)。采用I2C 技術(shù)的單片機(jī)以及外圍器件已廣泛應(yīng)用于家用電器、通訊設(shè)備及各類電子產(chǎn)品中,而且應(yīng)用范圍將會(huì)越來(lái)越廣。

        2 IC總線應(yīng)用下的EEPROH的方法

        這里以常見(jiàn)的24LC02容量為2K的芯片為例來(lái)詳細(xì)介紹該總線方式下工作的方法。

        2.1 24LC02芯片特點(diǎn)

        24LC02是臺(tái)灣CERAMATE公司生產(chǎn)的容量為2Kbit的應(yīng)用于I2C總線工作方式的芯片,其芯片管腳定義如圖3。

        33.gif

        圖中,A0、A1、A3為片選端,因?yàn)镮2C總線最多可以掛接16Kbit的EEPROM,也就是說(shuō)可以掛接8個(gè)24LC02芯片,其硬件地址就這三個(gè)片選端決定;WP是寫保護(hù)端,在發(fā)送Word Address之前起作用。

        24LC02在寫入數(shù)據(jù)的時(shí)候有兩種模式:Byte write和Page write,如圖4。

        44.gif

        以TESTER作為Master對(duì)24LC02寫入數(shù)據(jù),然后讀取其數(shù)據(jù)驗(yàn)證與寫入的數(shù)據(jù)是否一致。

        對(duì)于24LC02的命令格式等細(xì)節(jié),這里不再贅述,下面我們來(lái)看看24LC02的BLOCK DIAGRAM圖6。

        由此可知,在Byte write模式下,一次可寫入8bit數(shù)據(jù),而在Page write模式下一次可寫入8bytes的數(shù)據(jù)。

        2.2 24LC02的

        根據(jù)I2C總線工作方式,我們將其測(cè)試圖連接如圖5。

        66.gif

        芯片中的Start/stop Logic單元處理Start/Stop信號(hào),控制芯片是否開(kāi)始工作;S1ave address registercomparator單元譯碼Master發(fā)送的Slave address,完成與片選信號(hào)的比較,并設(shè)定write/read模式;Wordaddress counter單元管理要寫入或讀取的地址,地址由xdec和ydec單元譯碼成行地址和列地址,24LC02的EEPROMArray分為64行×4列字節(jié)單元。

        這里我們對(duì)于一些簡(jiǎn)單的電流測(cè)試不再討論,主要討論功能測(cè)試。

        根據(jù)以上分析,我們提出如下測(cè)試方法:

        對(duì)芯片寫入各種不同的字節(jié)數(shù)據(jù)來(lái)驗(yàn)證讀取到的數(shù)據(jù)是否和寫入的一致:

        (1)每個(gè)字節(jié)寫入隨機(jī)碼數(shù)據(jù),這里隨機(jī)碼我們選擇00~FF,共256 bytes,讀取看與寫入的是否一致

        如果該項(xiàng)測(cè)試通過(guò),說(shuō)明芯片基本上工作正常,但不能保證EEPROMArray(2Kbit)所有bit位都能正常寫入數(shù)據(jù)。

        這里每個(gè)字節(jié)寫入00-FF保證了寫入每個(gè)word address的數(shù)據(jù)都不一樣,其目的是驗(yàn)證Word address counter、xdec、ydec等單元是否能正常工作。


        上一頁(yè) 1 2 下一頁(yè)

        關(guān)鍵詞: EEPROM I2C 總線 測(cè)試

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 平昌县| 湖北省| 西藏| 靖安县| 安国市| 亚东县| 南皮县| 永康市| 姚安县| 二连浩特市| 遂平县| 太康县| 仪陇县| 宜宾市| 岑巩县| 南京市| 乌兰察布市| 呼和浩特市| 九台市| 凉山| 安多县| 禹城市| 盖州市| 湟中县| 绥阳县| 南平市| 大同县| 湄潭县| 侯马市| 谢通门县| 南汇区| 那坡县| 彰化县| 洞头县| 云安县| 永寿县| 阿瓦提县| 富裕县| 宿松县| 天等县| 丹巴县|