沈樵综合在线,一区二区三区乱码,免费资源一区二区三区,91超碰碰,av极品一线天,日韩免费高清一区二区,国产蜜尤福利在线,嗯啊91在线观看,精品一区二三

產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱


儀表網(wǎng)>技術(shù)中心>使用指南>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

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

   2012年04月24日 16:45  
  1、I2C總線的工作原理及其特點(diǎn)
  
  I2C總線是一種用于IC器件之間連接的二線制總線,zui早由Philips公司推出。它通過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)化等。
  
  采用I2C總線標(biāo)準(zhǔn)的單片機(jī)或IC器件,其內(nèi)部不僅有I2C接口電路,而且將內(nèi)部各單元電路按功能劃分為若干相對(duì)獨(dú)立的模塊,通過軟件尋址實(shí)現(xiàn)片選,減少了器件片選線的連接。I2C總線接口電路結(jié)構(gòu)如圖1所示。
  
  當(dāng)某個(gè)器件向總線上發(fā)送信息時(shí),它就是發(fā)送器(也叫主器件),而當(dāng)其從總線上接收信息時(shí),又成為接收器(也叫從器件)。主器件用于啟動(dòng)總線上傳送數(shù)據(jù)并產(chǎn)生時(shí)鐘以開放傳送的器件,此時(shí)任何被尋址的器件均被認(rèn)為是從器件。I2C總線的控制*由掛接在總線上的主器件送出的地址和數(shù)據(jù)決定。在總線上,既沒有中心機(jī),也沒有優(yōu)先機(jī)。
  
  在I2C總線上傳送信息時(shí)的時(shí)鐘同步信號(hào)是由掛接在SCL時(shí)鐘線上的所有器件的邏輯“與”完成的。SCL線上由高電平到低電平的跳變將影響到這些器件,一旦某個(gè)器件的時(shí)鐘信號(hào)下跳為低電平,將使SCL線一直保持低電平,使SCL線上的所有器件開始低電平期。此時(shí),低電平周期短的器件的時(shí)鐘由低至高的跳變并不能影響SCL線的狀廟,于是這些器件將進(jìn)入高電平等待的狀態(tài)。
  
  當(dāng)所有器件的時(shí)鐘信號(hào)都上跳為高電平時(shí),低電平期結(jié)束,SCL線被釋放返回高電平,即所有的器件都同時(shí)開始它們的高電平期。其后,*個(gè)結(jié)束高電平期的器件又將SCL線拉成低電平。這樣就在SCL線上產(chǎn)生一個(gè)同步時(shí)鐘??梢姡瑫r(shí)鐘低電平時(shí)間由時(shí)鐘低電平期zui長(zhǎng)的器件確定,而時(shí)鐘高電平時(shí)間由時(shí)鐘高電平期zui短的器件確定。在I2C總線技術(shù)規(guī)范中,開始和結(jié)束信號(hào)的定義如圖2所示。當(dāng)時(shí)鐘線SCL為高電平時(shí),數(shù)據(jù)線SDA由高電平跳變?yōu)榈碗娖蕉x為“開始”信號(hào);當(dāng)SCL線為低電平時(shí),SDA線發(fā)生低電平到高電平的跳變?yōu)?ldquo;結(jié)束”信號(hào)。
  
  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公司提出的?,F(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的測(cè)試方法
  
  這里以常見的24LC02容量為2K的EEPROM芯片為例來(lái)詳細(xì)介紹該總線方式下工作的EEPROM測(cè)試方法。
  
  2.1 24LC02芯片特點(diǎn)
  
  24LC02是中國(guó)臺(tái)灣CERAMATE公司生產(chǎn)的容量為2Kbit的應(yīng)用于I2C總線工作方式的EEPROM芯片,其芯片管腳定義如圖3。
  
  圖中,A0、A1、A3為片選端,因?yàn)镮2C總線zui多可以掛接16Kbit的EEPROM,也就是說(shuō)可以掛接8個(gè)24LC02芯片,其硬件地址就這三個(gè)片選端決定;WP是寫保護(hù)端,在發(fā)送WordAddress之前起作用。
  
  24LC02在寫入數(shù)據(jù)的時(shí)候有兩種模式:Bytewrite和Pagewrite,如圖4。
  
  以TESTER作為Master對(duì)24LC02寫入數(shù)據(jù),然后讀取其數(shù)據(jù)驗(yàn)證與寫入的數(shù)據(jù)是否一致。
  
  對(duì)于24LC02的命令格式等細(xì)節(jié),這里不再贅述,下面我們來(lái)看看24LC02的BLOCKDIAGRAM圖6。
  
  由此可知,在Bytewrite模式下,一次可寫入8bit數(shù)據(jù),而在Pagewrite模式下一次可寫入8bytes的數(shù)據(jù)。
  
  2.2 24LC02的測(cè)試
  
  根據(jù)I2C總線工作方式,我們將其測(cè)試圖連接如圖5。
  
  芯片中的Start/stopLogic單元處理Start/Stop信號(hào),控制芯片是否開始工作;S1aveaddressregister&comparator單元譯碼Master發(fā)送的Slaveaddress,完成與片選信號(hào)的比較,并設(shè)定write/read模式;Wordaddresscounter單元管理要寫入或讀取的地址,地址由xdec和ydec單元譯碼成行地址和列地址,24LC02的EEPROMArray分為64行×4列字節(jié)單元。
  
  這里我們對(duì)于一些簡(jiǎn)單的電流測(cè)試不再討論,主要討論功能測(cè)試。
  
  根據(jù)以上分析,我們提出如下測(cè)試方法:
  
  對(duì)芯片寫入各種不同的字節(jié)數(shù)據(jù)來(lái)驗(yàn)證讀取到的數(shù)據(jù)是否和寫入的一致:
  
 ?。?)每個(gè)字節(jié)寫入隨機(jī)碼數(shù)據(jù),這里隨機(jī)碼我們選擇00~FF,共256bytes,讀取看與寫入的是否一致
  
  如果該項(xiàng)測(cè)試通過,說(shuō)明芯片基本上工作正常,但不能保證EEPROMArray(2Kbit)所有bit位都能正常寫入數(shù)據(jù)。
  
  這里每個(gè)字節(jié)寫入00-FF保證了寫入每個(gè)wordaddress的數(shù)據(jù)都不一樣,其目的是驗(yàn)證Wordaddresscounter、xdec、ydec等單元是否能正常工作。
  
  假設(shè)我們這里每個(gè)字節(jié)寫入相同的數(shù)據(jù)(如00或FF等),那么在這種情況下,要是Wordaddresscounter無(wú)法正常工作,那么我們寫入或讀取的可能是部分地址所指向的EEpromArray中的bit位,而且無(wú)法保證xdec和ydec能正常****行地址和列地址,譬如說(shuō)我們對(duì)“10101010”wordaddress所指向的字節(jié)寫入00,如果讀取“101010”這個(gè)地址數(shù)據(jù)時(shí),Wordaddresscounter、xdec、ydec任意單元發(fā)生了錯(cuò)誤,那么zui終我們讀取到的數(shù)據(jù)就不是“10101010”這個(gè)地址所指向的字節(jié)數(shù)據(jù),也就是說(shuō)因?yàn)槊總€(gè)字節(jié)數(shù)據(jù)是一樣的,所以即使寫入和讀取的地址發(fā)生了錯(cuò)位,我們也會(huì)認(rèn)為測(cè)試是通過的。
  
  由此可見,要保證Wordaddresscounter、xdec、ydec等單元正常工作,我們寫入的數(shù)據(jù)必須滿足下列三個(gè)條件:
  
  ①寫入EEPROMArray的每一行數(shù)據(jù)不一樣(驗(yàn)證xdec單元);
  
 ?、趯懭隕EPROMArray的每一列數(shù)據(jù)不一樣(驗(yàn)證ydec單元);
  
  ③寫入EEPROMArray的每一個(gè)字節(jié)數(shù)據(jù)不一樣(驗(yàn)證Wordaddresscounter單元);
  
  這就是我們選擇寫入00~FF的理由(當(dāng)然也可以選擇寫入其他數(shù)據(jù),只要符合上述zui后一個(gè)條件即可)。
  
 ?。?)每個(gè)字節(jié)寫入數(shù)據(jù)00,讀取看是否與寫入的一致
  
  通過上述*項(xiàng)測(cè)試,其實(shí)已經(jīng)可以基本保證芯片各單元能正常工作,接下來(lái)只需測(cè)試驗(yàn)證EEPROMArray(2Kbit)中的每個(gè)bit位是否良好,這里寫入數(shù)據(jù)00,可排除EEPROMArray(2Kbit)中恒為“1”的bit位。
  
 ?。?)每個(gè)字節(jié)寫入數(shù)據(jù)FF,讀取看是否與寫入的一致
  
  可排除EEPROMArray(2Kbit)中恒為“0”的b“位。
  
 ?。?)從00H地址開始寫入4個(gè)字節(jié)55,接著寫入4個(gè)字節(jié)AA,如此重復(fù),直至寫滿256個(gè)字節(jié),讀取看是否與寫入的一致。
  
  EEPROMArray中相鄰bit位(包括行相鄰、列相鄰、對(duì)角線相鄰)會(huì)互相影響。
  
  而24LC02的EEPROMArray分為4列×64行×8bit,所以我們寫入上述的數(shù)據(jù)使得每個(gè)相鄰bit位的數(shù)據(jù)都不一樣,經(jīng)過該項(xiàng)測(cè)試可排除相鄰bit位的數(shù)據(jù)竄擾。是再測(cè)試一下寫入4個(gè)字節(jié)AA,寫入4個(gè)字節(jié)55……,看讀取與寫入的是否一致。
  
  到此我們完成了全部的功能測(cè)試。24LC02讀寫時(shí)有pagewrite、bytewrite、randomread、Sequentialread等各種工作模式以及writeprotect功能,這些測(cè)試都比較簡(jiǎn)單,這里就不再一一贅述了。
  
  由此,我們概括出EEPROM的一般測(cè)試方法:
  
 ?。?)每個(gè)字節(jié)寫入randomcode,讀取驗(yàn)證是否與寫入時(shí)一致,從而測(cè)試Wordaddresscounter、xdec、ydec等單元是否能正常工作;Randomcode需要滿足下面這個(gè)條件:寫入EEPROMArray的每一個(gè)字節(jié)數(shù)據(jù)不一樣。
  
 ?。?)每個(gè)字節(jié)寫入數(shù)據(jù)00或FF,讀取驗(yàn)證是否與寫入時(shí)一致,排除EEPROMArray中恒“0”或恒“1”的bit位。
  
 ?。?)對(duì)EEPROMArray寫入相鄰bit位(包括行相鄰、列相鄰、對(duì)角線相鄰)都不一樣的數(shù)據(jù),讀取驗(yàn)證是否與寫入時(shí)一致,排除相鄰bit位的數(shù)據(jù)竄擾。

免責(zé)聲明

  • 凡本網(wǎng)注明“來(lái)源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來(lái)源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來(lái)源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或和對(duì)其真實(shí)性負(fù)責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品第一來(lái)源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
聯(lián)系我們

客服熱線: 13199863987(同微信)

加盟熱線: 13199863987(同微信)

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關(guān)注我們
  • 下載儀表站APP

  • Ybzhan手機(jī)版

  • Ybzhan公眾號(hào)

  • Ybzhan小程序

溫馨提示

該企業(yè)已關(guān)閉在線交流功能

鄂温| 洛南县| 同心县| 宁安市| 吉安县| 嘉兴市| 七台河市| 万载县| 五大连池市| 济阳县| 湖南省| 泰宁县| 滦平县| 合作市| 德江县| 内丘县| 德庆县| 闸北区| 莫力| 偃师市| 建瓯市| 当雄县| 罗山县| 台中县| 龙陵县| 桓台县| 德钦县| 乳山市| 曲水县| 和平区| 沂南县| 九寨沟县| 利川市| 皮山县| 凌海市| 苍山县| 沙坪坝区| 新疆| 南安市| 梁山县| 台前县|