国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

鐵電存儲器FM24C16原理及其在多MCU系統中應用

發布時間:2010-7-1 14:21    發布者:vinda
關鍵詞: FM24C16 , MCU , 鐵電存儲器
1、鐵電存儲器技術原理、特性及應用
美國Ramtron公司鐵電存儲器(FRAM)的核心技術是鐵電晶體材料。這一特殊材料使鐵電存儲器同時擁有隨機存取記憶體(RAM)和非易失性存儲器的特性。鐵電晶體的工作原理是:當在鐵電晶體材料上加入電場,晶體中的中心原子會沿著電場方向運動,達到穩定狀態。晶體中的每個自由浮動的中心原子只有2個穩定狀態,一個記為邏輯中的0,另一個記為1。中心原子能在常溫、沒有電場的情況下,停留在此狀態達100年以上。鐵電存儲器不需要定時刷新,能在斷電情況下保存數據。由于整個物理過程中沒有任何原子碰撞,鐵電存儲器有高速讀寫、超低功耗和無限次寫入等特性。 鐵電存儲器和E2PROM比較起來,主要有以下優點:

(1)FRAM可以以總線速度寫入數據,而且在寫入后不需要任何延時等待,而E2PROM在寫入后一般要5~10ms的等待數據寫入時間;
(2)FRAM有近乎無限次寫入壽命。一般E2PROM的壽命在十萬到一百萬次寫人時,而新一代的鐵電存儲器已經達到一億個億次的寫入壽命。
(3) E2PROM的慢速和大電流寫入使其需要高出FRAM 2 500倍的能量去寫入每個字節。

由于FRAM有以上優點,其特別適合于那些對數據采集、寫入時間要求很高的場合,而不會出現數據丟失,其可靠的存儲能力也讓我們可以放心的把一些重要資料存儲于其中,其近乎無限次寫入的使用壽命,使得他很適合擔當重要系統里的暫存記憶體,用來在于系統之間傳輸各種數據,供各個子系統頻繁讀寫。從FRAM問世以來,憑借其各種優點,已經被廣泛應用于儀器儀表、航空航天、工業控制系統、網絡設備、自動取款機等。

在設計的碳控儀系統中,由于對控制碳勢適時性的要求較高,而且系統由2個子系統構成,每個子系統都要頻繁讀寫存儲器,所以我們把原來的X25045換成FM24C16以滿足要求。

2 FM24C16引腳說明及工作過程

FM24C16-P(8腳雙列直插)外形圖及引腳定義如圖1及表1所示。


FM24C16是串行非易失存儲器,存儲容量為2 048×8b,共分8頁,每頁256B;工作電壓為+5V;接口方式為工業標準的2線接口:SDA和SCL;功能操作和串行E~PROM相似,有讀和寫兩種操作狀態,讀、寫時序和I2C總線類似。

FM24C16的寫操作可以分為2種:字節寫和頁面寫。字節寫就是每次寫入單個字節,頁面寫可以一次寫入整頁(256B)的數據。而且,由于沒有寫延時,數據寫入速度很快(一般為μs級),特別是在頁面寫的時候,不需要數據緩沖,可以一次寫入256B的數據,真正實現頁面寫,這是其他E2PROM做不到的,比如AT24C16,在頁面寫的時候,每次最多能寫入16B數據。

FM24C16的寫操作時序中可分為起始位(START)、數據位、從應答位、停止位(STOP),其中,從應答位(因為FM24C16為從器件,MCU為主器件,所以稱為從應答)是FM24C16在每接收一個字節數據后發出的應答信號,是檢驗數據寫入是否成功的惟一標志。寫入過程為:MCU通過SDA,SCI。發出起始位,然后從SDA輸出從器件固定地址位:1010,再輸出3b頁選擇位(選擇寫入數據到FM24C16的哪一頁),再輸出寫控制位0(讀為1,寫為0),然后接收來自FM24C16的從應答位,如果沒有收到從應答,則退出操作。在接收到從應答后,MCU從SDA串行輸出8位FM24C16字節地址以確定寫入數據的字節單元,并在收到從應答后發送1b數據寫入到FM24C16,然后等待從應答信號確認數據寫入成功。如果是字節寫,則由MCU發出停止位,結束寫操作。如只是頁面寫,MCU輸出第2個字節數據,FM24C16判斷出MCU要繼續寫入數據后,自動使其內部的地址指針加1,并把數據寫入到加1后的字節單元,然后給出從應答,MCU就繼續寫入數據到FM24C16。頁面寫操作時,當地址指針到7FH(頁尾地址)單元的時候,在下一個寫入周期時自動翻轉到00H,寫入的數據覆蓋掉00H單元原來的數據。

具體寫操作時序圖和后面的讀操作時序圖比較繁瑣,在這里不給出,如果需要,可以登錄到Ramtron公司網站;http://WWW.Ramtron.com查閱技術資料,或者登錄到其在大陸的代理商網站:http://WWW.ramtron.com.cn/china/product/data.asp去查

閱技術資料,也可以仿I2C總線時序圖。

FM24C16讀操作比寫操作較為復雜,相應也可以分為2種:字節讀和頁面讀,相應于字節寫和頁面寫,兩種讀的功能也是單字節和整頁的區別。讀操作的另一種分法可分為:立即讀和任意讀(包括連續讀),其區別在于立即讀是在寫人數據后馬上讀數,而任意讀和連續讀則是隨時讀,所以,在他們操作時,必須先執行偽寫,然后再讀數。所謂偽寫,是指執行寫操作到寫入數據之前,其目的是確定要讀出的字節單元地址。下面對任意讀的操作過程給予說明:執行寫操作到寫人數據前,也就是在收到輸入字節單元地址后的從應答后,MCU再發送起始位,然后發送從器件固定地址(1010)、3b頁選擇位和讀控制位1,在收到從應答后,MCU從FM24C16里面讀出1 B的數據。如果只讀1 B的數據,則MCU發送一個無需應答信號,然后發送停止位結束讀操作。如果是頁面讀,MCU就發一個主應答信號,繼續讀下一個字節數據,直到讀出最后一個字節數據后,MCU發出無需應答信號和停止位結束讀操作。

在對FM24C16進行讀、寫操作的過程中,應該注意以下2個問題:

(1)時序問題,這主要是指SDA,SCL的高低電子的時序。如果在讀、寫過程中時序不對或者不穩定,都會引起讀、寫失敗,所以為了保證穩定,可以在程序中適當加入NOP語句延時,但不要過多,以免影響讀、寫速度。
(2)SDA數據只能在SCL為低期間變化,在SCL為高期間,SDA數據要保持不變否則會被錯誤地認為是控制位而不是數據位,導致讀、寫失敗。

3、應用接口及程序

FM24C16與單片機接口電路非常簡單,下面以碳控儀系統中的應用為例給予說明,并給出部分子程序。應用接口圖如圖2所示,系統中采用2片AT89C55單片機,用其P2.0和P2.1口與SDA,SCL相連接,在SDA和SCL引腳接1.8kΩ的上拉電阻到+5V,工作電源也為+5V,WP引腳接電源地以保證可以任意寫入數據。2片AT89C55用P1.0,P1.1作為通訊口,來確定誰操作FM24C16:片1操作前,檢測P1.0口,如果為高,則置低P1.1口,向片2發出占用FM24C16信號,然后再檢測P1.0口,還為高,則進入操作,若為低,則退出操作并把P1.1口置高;如果P1.0口為低,則說明片2占用FM24C16,片1就放棄操作,等待下次查詢和操作。片2的操作相對應于片1。這樣,FM24C16不僅作為了公共數據區,而且也成為了2片MCU的一個模擬的通訊口,而且理論上來說,1片FM24C16上可以掛很多MCU,而可以省去不必要的MCU間的通訊。這就需要FM24C16承受快速、頻繁讀寫,這是其他E2PROM望塵莫及的。


下面給出FM24C16的頁面寫和任意字節讀匯編子程序。程序經過應用驗證,效果良好(為保證穩定性,可以在相應地方加入空語句以延時)。

頁面寫子程序:

PAGE-WR: ACALL START_BIT
MOV A,#10100000B
MOV R7,#4
ACALL SHFTO
;SHFTO為送位子程序,以上3行送
1010到FM24C16
MOV A,#20H
MOV R7,#3
ACALL SHFTO
;以上3行確定寫FM24C16的00l頁
MOV A,#00H
MOV R7,#1
ACALL SHFTO ;以上3行送寫控制位0
ACALL SlAVE_ACK
;SLAVE-ACK為從應答子程序,在此檢測
從應答位
MOV A,#00H
MOV R7,#8
ACALL SHFTO
;以上3行確定寫入數據首地址為00H
ACALLSLAVE-ACK ;檢測從應答位
MOV R0,#00H ;R0中為被寫人數據
所在單元首地址
MOV R4,#7FH ;R4中為寫入字節數
(現為256B)
NEXT-DATA:MOV A,@R0 ;調入第1個寫入數據
INC R0 ;R0指向第2個數據所在單元地址
MOV R7,#8
ACALL SHFTO;寫入數據
ACALL SLAVE-ACK ;檢測從應答位
DJNZ R4,NEXT-DATA
;循環寫入下一個字節數據
ACALL STOP-BIT
;STOP-BIT為停止位,結束寫操作(此處沒有寫延時等待)
RET ;返回,程序結束

讀任意地址子程序:
SELECT-RD:ACALL START-BIT
ACALL START-BIT
MOV A,#10100000B
MOV R7,#4
ACALL SHFTO
MOV A,#20H
MOV R7,#3
ACALL SHFTO
MOV A,#0FOH
MOV R7,#1
ACALL SHFTO
ACALL SlAVE-ACK
MOV R5,#00H
MOV R7,#8
ACALL SHFTO
ACALL SlAVE-ACK
;以上為偽寫,確定讀FM24C16的001
00H單元數據
ACALL START-BIT
MOV A,#10100000B
MOV R7,#4
ACALL SHFTO
MOV A,#20H
MOV R7,#3
ACALL SHFTO
MOV A,#0FOH
MOV R7,#1
ACALL SHFTO ;上面3行送讀控制位1
ACALL SlAVE-ACK
MOV R5,#00H ;清R5,以存儲讀出數據
MOV R7,#8 ;R7作讀出位記數器
CLOCK8: SETB SCL
MOV C,SDA
CLR SCL
MOV A,R5
RLC A
MOV R5,A
;以上6行讀出FM24C16送來的1位
DJNZ R7,CLOCK8 ;循環讀出1B數據
ACALL NO_ACK
;NO_ACK為無需應答位子程序
ACLL STOP_BIT ;停止
RET ;程序結束
本文地址:http://m.qingdxww.cn/thread-14264-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久久99 | 中文字幕第12页 | 亚洲欧美成aⅴ人在线观看 亚洲欧美不卡 | 久久66热re国产毛片基地 | 国产在线91精品入口 | 岛国片在线免费观看 | 精品卡1卡2卡三卡免费网站 | 天天摸天天操天天干 | 欧美精品成人一区二区视频一 | 成人免费一级毛片在线播放视频 | h视频在线观看视频观看 | 综合天堂 | 中文字幕日韩一区二区三区不卡 | 国产成人精品免费视频 | 日韩a无吗一区二区三区 | 四虎成人免费观看在线网址 | 国产精品久久福利网站 | 花季传媒2.0.3 | 免费欧美黄色片 | 久久精品男人影院 | 国产日韩欧美swag在线观看 | 成人午夜免费观看 | 日韩经典在线观看 | 成人黄色免费 | 亚洲精品资源在线 | 亚洲最大成人在线 | 性生活网站| 欧美黑人成人www在线观看 | 久久久精 | 久久精品国产福利国产秒 | 男女污视频在线观看 | 美国免费视频 | www.色网站| 香蕉网站视频高清在线观看 | 国产成人一区二区精品非洲 | 女跳蛋插水裙车嗯啊哈哈 | 国产在线a免费观看 | 国产成人亚洲合集青青草原精品 | 99re2| 天堂中文在线最新版 | 黑人巨大精品欧美一区二区区 |