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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于X24C45芯片的非易失性數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

          基于X24C45芯片的非易失性數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

          作者: 時(shí)間:2009-10-29 來源:網(wǎng)絡(luò) 收藏

          基于X24C45芯片的非易失性數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

            為了少占用CPU的I/O端口,的DI腳和DO腳通常連接到CPU的同一個(gè)I/O口(如圖1所示)。READ指令將RAM中AAAA地址的數(shù)據(jù)讀出,該指令的最低位為無關(guān)位,這樣正好允許在READ指令的第八個(gè)時(shí)鐘周期內(nèi)將I/O口由輸出轉(zhuǎn)換為輸入。RAM的讀操作時(shí)序如圖3所示。

            WRITE指令將數(shù)據(jù)寫入RAM的AAAA地址中,其時(shí)序如圖4所示。需要說明的是,RAM中的每個(gè)地址存儲(chǔ)16bit數(shù)據(jù)。

            3 應(yīng)用時(shí)需注意的問題

            實(shí)際應(yīng)用時(shí)與CPU的連接如圖1所示。前面已經(jīng)提到為節(jié)省CPU的I/O端口,可以將DI腳和DO腳連接到CPU的同一個(gè)I/O口(PA4)。

            在此要特別強(qiáng)調(diào)的是,電容C和二極管D本來是沒有加上去的,X24C45手冊(cè)中也沒有這樣說明。但在實(shí)際應(yīng)用中筆者發(fā)現(xiàn),在沒有加上電容C和二極管D的情況下,X24C45會(huì)出現(xiàn)掉電時(shí)備份數(shù)據(jù)出錯(cuò)的現(xiàn)象。究其原因,是因?yàn)樵赬24C45中將當(dāng)前數(shù)據(jù)由RAM存儲(chǔ)到EEPROM時(shí)需要一定的時(shí)間(該時(shí)間典型數(shù)值為2ms,最長可達(dá)5ms),而且啟動(dòng)自動(dòng)存儲(chǔ)的閾值電壓在4.0V~4.3V之間,數(shù)據(jù)由RAM存儲(chǔ)到EEPROM所需要的最低電源電壓為3.5V,掉電后電源電壓由閥值電壓電路和負(fù)載的不同而不同。顯然,掉電后電源電壓由閥值電壓下降到3.5V所需的時(shí)間如果少于數(shù)據(jù)由RAM存儲(chǔ)到EEPROM所需的時(shí)間,就會(huì)出現(xiàn)一部分?jǐn)?shù)據(jù)因不能被及時(shí)備份而丟失的問題,而這種問題的出現(xiàn)如果不采取相應(yīng)的措施是可能被避免的。圖1中的電容C和二極管D可以保證掉電后X24C45電源端的電壓由閥值電壓下降到3.5V所需時(shí)間足夠長,從而杜絕掉電時(shí)備份數(shù)據(jù)出錯(cuò)的情況。

            4 X24C45相關(guān)操作的軟件實(shí)現(xiàn)

          基于X24C45芯片的非易失性數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

            X24C45與MC68HC05C4單片機(jī)的硬件連接如圖1所示。下面給出與其對(duì)應(yīng)的有關(guān)X24C45的前次數(shù)據(jù)恢復(fù)到RAM和自動(dòng)存儲(chǔ)功能能使設(shè)置等操作的軟件編程。

          SAMP:LDA #$1C $1C=00011100
          STA $04 設(shè)置PA2、PA3、PA4為輸出
          LDA #$00
          STA $00 初始化PA2、PA3、PA4為0
          LDA #$85 $85=10000101為RCL指令
          STA $81 將RCL指令送至待發(fā)送地址
          JSR CEHI 調(diào)用置CE為高子程序
          JSR OUTB 調(diào)用輸出8bit子程序
          JSR CELO 調(diào)用置CE為低子程序
          LDA #$82 $82=10000010為ENAS指令
          STA $81 將ENAS指令送至待發(fā)送地址
          JSR CEHI 調(diào)用置CE為高子程序
          JSR OUTB 調(diào)用輸出8bit子程序
          JSR CELO 調(diào)用置CE為低子程序
          ……
          CEHI:BSET 2,$00 置CE(PA2)為高
          RTS
          OUTB:LDA #$08 準(zhǔn)備移出8個(gè)bit
          STA $84 將8送至計(jì)數(shù)器
          LOOP:ROL $81 待發(fā)送內(nèi)容循環(huán)左移
          BCC IS0 C=0轉(zhuǎn)移至IS0
          BSET 4,$00 送1至DI/O(PA4)
          BRA IS1 跳轉(zhuǎn)至IS1
          IS0:BCLR 4,$00 送0至DI/O(PA4)
          IS1:JSR CLOCK 調(diào)用時(shí)鐘信號(hào)子程序
          DEC $84 計(jì)數(shù)器減1
          BNE LOOP 計(jì)數(shù)器內(nèi)容≠0跳轉(zhuǎn)
          RTS 計(jì)數(shù)器內(nèi)容=0結(jié)束
          CELO:BCLR 4,$00 將DI/O(PA4)拉低
          BCLR 2,$00 置CE(PA2)為低
          RTS
          CLOCK:BSET 3,$00 置SK(PA3)為高
          BCLR 3,$00 置SK(PA3)為低
          RTS

          基于X24C45芯片的非易失性數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

            限于篇幅,CPU對(duì)X24C45其它操作的軟件編程不再贅述。按照上述硬件、軟件的設(shè)計(jì)思想,已將X24C45成功地應(yīng)用在電話計(jì)費(fèi)器的設(shè)計(jì)中。


          上一頁 1 2 下一頁

          評(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); })();