<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 串行E2PROMAT 24C512在單片機(jī)中應(yīng)用

          串行E2PROMAT 24C512在單片機(jī)中應(yīng)用

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

          (4)寫(xiě)操作

          寫(xiě)操作可分為字節(jié)寫(xiě)和頁(yè)寫(xiě)兩種寫(xiě)入方式。通常E2PROM的寫(xiě)入占用一定的寫(xiě)入時(shí)間,但AT內(nèi)部設(shè)有128字節(jié)的頁(yè)寫(xiě)緩存,使得操作該器件如同操作SRAM一樣方便,頁(yè)面緩存使得兩種寫(xiě)入方式的操作過(guò)程相同,區(qū)別僅在于寫(xiě)入數(shù)據(jù)字節(jié)的多少。下面以字節(jié)寫(xiě)入為例介紹寫(xiě)操作過(guò)程。

          在字節(jié)寫(xiě)操作模式下,主器件首先給從器件發(fā)送起始信號(hào)和從器件地址信息,在從器件送回應(yīng)答信號(hào)后,主器件在發(fā)送兩字節(jié)的16位地址信息寫(xiě)入到 AT地址指針,主器件在收到從器件的應(yīng)答信號(hào)后,再發(fā)送1個(gè)字節(jié)的數(shù)據(jù)到被尋址的存儲(chǔ)單元,從器件在此應(yīng)答,并在主器件產(chǎn)生停止信號(hào)后開(kāi)始內(nèi)部數(shù)據(jù)擦寫(xiě),在內(nèi)部擦寫(xiě)過(guò)程中,從器件不再應(yīng)答主器件的任何請(qǐng)求,字節(jié)寫(xiě)入操作時(shí)序如圖2所示。

          34.gif
          圖2 字節(jié)寫(xiě)操作時(shí)序

          (5)讀操作

          讀操作分為立即讀、隨機(jī)讀和連續(xù)讀。立即讀是在最后操作字節(jié)的地址上加1進(jìn)行讀取,而連續(xù)讀則是在立即讀和隨機(jī)讀起動(dòng)后主器件通過(guò)應(yīng)答信號(hào)響應(yīng)完成多個(gè)數(shù)據(jù)的讀取,在主器件發(fā)出停止信號(hào)后結(jié)束讀取過(guò)程。下面以隨機(jī)讀為例介紹讀操作過(guò)程。

          隨機(jī)讀操作允許主器件對(duì)存儲(chǔ)器的任意字節(jié)進(jìn)行讀操作。操作過(guò)程為主器件首先發(fā)送起始信號(hào),從器件地址和欲讀取字節(jié)的地址執(zhí)行1個(gè)偽寫(xiě)操作,此時(shí)R/W位應(yīng)置0,在AT應(yīng)答后,主器件重新發(fā)送起始信號(hào)和從器件地址,此時(shí)R/W位應(yīng)置1,AT24C512響應(yīng)并發(fā)送應(yīng)答信號(hào),然后輸出所要求的1個(gè) 8位字節(jié)數(shù)據(jù)。主器件不發(fā)送應(yīng)答信號(hào),但產(chǎn)生1個(gè)停止信號(hào)。字節(jié)讀操作時(shí)序如圖3所示。

          4

          AT24C512與AT89C2051的硬件連接電路如圖4所示。這里使用了2個(gè)AT24C512組成尋址空間為128K字節(jié)的E2PROM存儲(chǔ)器電路。其中U2的器件地址為A0H,存儲(chǔ)地址空間為0000-0FFFFH;U3的器件地址為A2H,存儲(chǔ)地址空間為0000-0FFFFH。

          35.gif
          圖3 字節(jié)讀操作時(shí)序

          由于AT89C2051不具有I2C總線,因此采用P1.0和P1.1口線來(lái)模擬I2C總線,AT24C512的SDA和SCL為開(kāi)漏輸出,故接入10kΩ的上拉電阻器。下面是與上述電路配套的E2PROM讀寫(xiě)程序:
          ;內(nèi)存數(shù)據(jù)定義
          BitCnt DATA 30H;讀/寫(xiě)數(shù)據(jù)位數(shù)計(jì)數(shù)器
          ByteCnt DATA 31H;讀/寫(xiě)數(shù)據(jù)字節(jié)數(shù)計(jì)數(shù)器
          SlvAddr DATA 32H;E2PROM器件地址
          SubAdrl DATA 33H;存儲(chǔ)單元地址高8位
          SubAdr2 DATA 34H;存儲(chǔ)單元地址低8位
          ReadDat DATA 50H;讀操作數(shù)據(jù)緩沖區(qū)
          WriteDat DATA 40H;寫(xiě)操作數(shù)據(jù)緩沖區(qū)
          ;端口位定義
          SDA BIT P1.0;模擬I2C數(shù)據(jù)傳送位
          SCL BIT P1.1;模擬I2C時(shí)鐘控制位
          ACK BIT 20H;讀非應(yīng)答標(biāo)志
          ;主程序



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();