• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于SPI總線接口的FRAM設(shè)計(jì)

      2013-07-16 07:23房健
      關(guān)鍵詞:單片機(jī)

      房健

      摘要:文章的研究?jī)?nèi)容是對(duì)數(shù)據(jù)讀取和存儲(chǔ)基于SPI總線接口的FRAM設(shè)計(jì)。文章采用了C8051F系列單片機(jī)作為微處理器,存儲(chǔ)芯片采用的是FM25V10芯片,并且都具有SPI總線接口,經(jīng)過(guò)多次實(shí)驗(yàn)得出的結(jié)果是以SPI為總線接口的FRAM設(shè)計(jì)能夠滿足其要求,并且傳輸速度快。

      關(guān)鍵詞:SPI總線;單片機(jī);總線接口;FRAM設(shè)計(jì)

      中圖分類號(hào):TP333 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-2374(2013)14-0011-03

      隨著科技的進(jìn)步,電子技術(shù)的發(fā)展,在電子、工程控制、通信等行業(yè)內(nèi),單片機(jī)的應(yīng)用范圍也越來(lái)越廣,而它的外圍芯片接口應(yīng)用也變得越來(lái)越重要。針對(duì)于一些記錄測(cè)控的數(shù)據(jù),記錄通信的數(shù)據(jù),都需要不掉電存儲(chǔ)方式,所以不掉電存儲(chǔ)也成為了控制系統(tǒng)中不可或缺的一個(gè)部分。在存儲(chǔ)芯片的發(fā)展過(guò)程中,有很多產(chǎn)品誕生,如E2PROM或閃速存儲(chǔ)作為存儲(chǔ)介質(zhì),則速度較慢;在實(shí)時(shí)性要求較高的場(chǎng)合常采用電池支持的SRAM,它既有RAM的讀寫(xiě)速度,又有ROM掉電數(shù)據(jù)不丟失的特性,但是電池支持的SRAM在實(shí)際使用過(guò)程中數(shù)據(jù)不可靠,容易丟失,且電池容易受到環(huán)境因數(shù)的影響;而RAMTRON公司研制的鐵電存儲(chǔ)成功解決了電池的問(wèn)題,由于具有幾乎無(wú)限次數(shù)擦寫(xiě)、高速讀寫(xiě)、低功耗、數(shù)據(jù)能掉電保持等特點(diǎn)而廣泛地應(yīng)用在各種控制系統(tǒng)中。本文采用C8051F單片機(jī)對(duì)FRAM芯片的讀寫(xiě)操作,從而完成了對(duì)于系統(tǒng)的參數(shù)及數(shù)據(jù)保存功能。

      1 C8051F單片機(jī)的SPI總線接口

      C8051F單片機(jī)微處理器具有SPI接口,所以可以和FM25V10直接通過(guò)SPI總線進(jìn)行連接,并且SPI總線的速度完全可以達(dá)到要求。SPI總線只需四條線就可以完成MCU與各種外圍器件的通訊,分別為:串行時(shí)鐘線(CSK)、主機(jī)輸入/從機(jī)輸出數(shù)據(jù)線(MISO)、主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線(MOSI)、低電平有效從機(jī)選擇線(CS)。當(dāng)SPI工作時(shí),在移位寄存器中的數(shù)據(jù)逐位從輸出引腳(MOSI)輸出(高位在前),同時(shí)從輸入引腳(MISO)接收的數(shù)據(jù)逐位移到移位寄存器(高位在前)。傳輸完一個(gè)字節(jié)之后,該字節(jié)便會(huì)進(jìn)入到接收器件的移位寄存器中,這樣就可以完成了兩個(gè)器件之間的數(shù)據(jù)交換,SPI總線的主機(jī)的時(shí)鐘信號(hào)來(lái)確保本次傳輸?shù)耐剑?dāng)SPI被配置為主器件時(shí),最大數(shù)據(jù)傳輸率(位/秒)是系統(tǒng)時(shí)鐘頻率的二分之一。當(dāng)SPI被配置為從器件時(shí),如果主器件與系統(tǒng)時(shí)鐘同步發(fā)出SCK、NSS和串行輸入數(shù)據(jù),則全雙工操作時(shí)的最大數(shù)據(jù)傳輸率(位/秒)是系統(tǒng)時(shí)鐘頻率的十分之一。

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

      FRAM是靠材料特性來(lái)保存數(shù)據(jù),這種材料并非磁性材料,所以從原理上講,磁場(chǎng)對(duì)數(shù)據(jù)是沒(méi)有影響的,在實(shí)際中,電場(chǎng)對(duì)數(shù)據(jù)也沒(méi)有影響,所以其抗干擾能力強(qiáng)。在復(fù)雜環(huán)境中可以記錄一些重要的數(shù)據(jù),由于它的擦寫(xiě)次數(shù)多,所以可以記錄每一個(gè)數(shù)據(jù)脈沖。

      鐵電存儲(chǔ)器FRAM的特點(diǎn):(1)具有非易失性,掉電后數(shù)據(jù)可以保存45年左右;(2)擦寫(xiě)次數(shù)很多,5V供電的FRAM的擦寫(xiě)次數(shù)多達(dá)10000億次;(3)速度快,串口總線的FRAM的CLK的頻率最高可達(dá)20M,沒(méi)有等待寫(xiě)周期,并口的訪問(wèn)速度70ns;(4)功耗較低,靜態(tài)電流小于10uA,讀寫(xiě)電流小于150uA。

      電路的工作環(huán)境會(huì)涉及到強(qiáng)電和弱點(diǎn)之間的轉(zhuǎn)換和一定的電磁干擾,設(shè)計(jì)選用Ramtron公司的FM系列鐵電存儲(chǔ)器。

      FM25V10為2M位的非易失性鐵電隨機(jī)存儲(chǔ)器,結(jié)構(gòu)容量為256K×8位,無(wú)限次的讀寫(xiě)次數(shù),掉電數(shù)據(jù)保持10年,寫(xiě)數(shù)據(jù)無(wú)延時(shí),采用快速SPI串行協(xié)議,最高速度可以達(dá)到40M的總線速度。硬件上有完善的寫(xiě)保護(hù),同時(shí)軟件也可以進(jìn)行寫(xiě)保護(hù)。工作電壓:2.7~3.6V,靜態(tài)工作電流:5uA。

      3 FRAM與C8051F單片機(jī)的SPI硬件設(shè)計(jì)

      由于FM25V10與其他的SPI設(shè)備一樣,可以直接掛在SPI總線接口上,本文采用的是SPI的四線接口,因此需要額外的片選信號(hào)NSS,/HOLD和/WP直接連接到高電平上,所以不進(jìn)行硬件保護(hù)操作和暫停操作,硬件連接如圖1、單片機(jī)相應(yīng)的端口分配如表1所示。

      4 軟件流程及其程序的編寫(xiě)

      數(shù)據(jù)存儲(chǔ)及讀取模塊軟件的程序設(shè)計(jì)主要對(duì)象是鐵電存儲(chǔ)器FM25V10,通過(guò)對(duì)單片機(jī)內(nèi)部集成的A/D采集模塊進(jìn)行數(shù)據(jù)的采集,并將數(shù)據(jù)進(jìn)行實(shí)時(shí)的存儲(chǔ)在鐵電存儲(chǔ)器FM25V10中,并且在存儲(chǔ)結(jié)束后將數(shù)據(jù)讀取出來(lái),通過(guò)通信模塊將數(shù)據(jù)傳輸給上位機(jī)。

      數(shù)據(jù)的存儲(chǔ)及讀取過(guò)程中是通過(guò)SPI總線方式進(jìn)行傳輸?shù)?,該方式可以有效地?duì)數(shù)據(jù)進(jìn)行快速、準(zhǔn)確的存儲(chǔ)及讀取。C8051F單片機(jī)中的SPI提供了一個(gè)靈活的四線全雙工串行總線,SPI所使用的4個(gè)信號(hào)分別是:MOSI、MISO、SCK、NSS。

      該程序的編寫(xiě)主要分為兩部分:一部分是對(duì)FM25V10的數(shù)據(jù)存儲(chǔ)程序的編寫(xiě);另一部分是對(duì)FM25V10的數(shù)據(jù)讀取程序的編寫(xiě)。在對(duì)FM25V10的操作過(guò)程中,我們要根據(jù)FM25V10手冊(cè)中所提供的操作碼來(lái)操作,而且還要根據(jù)手冊(cè)中提供的程序時(shí)序圖來(lái)編寫(xiě)程序。表2是FM25V10手冊(cè)所提供的操作碼。

      對(duì)于軟件的編程之前,首先要把要編寫(xiě)程序的基本流程畫(huà)出來(lái),可以更清晰地了解程序的主要內(nèi)容及其工作流程,圖2就是本文中的讀寫(xiě)數(shù)據(jù)軟件流程。

      下邊是用到的最基本的程序塊,包含了三個(gè)方面:數(shù)據(jù)的寫(xiě)入、數(shù)據(jù)的讀取、地址的自動(dòng)加一。

      (1)將R0數(shù)據(jù)寫(xiě)入到SPI端口寄存器:

      SPI_write:

      CLR SPIF

      MOV SPI0DAT,R0

      JNB SPIF,$

      CLR SPIF

      RET

      (2)讀取SPI端口寄存器中的數(shù)據(jù)到R0:

      SPI_read:

      CLR SPIF

      MOV SPI0DAT,#00H

      JNB SPIF,$

      CLR SPIF

      MOV R0,SPI0DAT

      RET

      (3)地址自動(dòng)加1:

      DPTR_INC:

      INC DPTR_LL

      MOV A,#00H

      CJNE A,DPTR_LL,DPTR_RET

      INC DPTR_HL

      MOV A,#00H

      CJNE A,DPTR_HL,DPTR_RET

      INC DPTR_HH

      DPTR_RET:

      RET

      5 結(jié)語(yǔ)

      通過(guò)對(duì)硬件電路進(jìn)行設(shè)計(jì)及相對(duì)應(yīng)的軟件編程實(shí)現(xiàn)了數(shù)據(jù)的存儲(chǔ)和讀取功能,完成了基于SPI串口總線的單片機(jī)對(duì)FRAM存儲(chǔ)芯片的讀寫(xiě)操作,完成了實(shí)時(shí)參數(shù)及其數(shù)據(jù)保存功能,通過(guò)實(shí)驗(yàn)可以說(shuō)明數(shù)據(jù)通信穩(wěn)定可靠。由于FM25V10存儲(chǔ)芯片具有重復(fù)擦寫(xiě)、非易失性等特點(diǎn),所以目前采用SPI總線接口的芯片越來(lái)越多,在儀器儀表、工業(yè)控制、數(shù)字家電等方面普遍得到應(yīng)用。本文采用的C5051F單片機(jī)SPI接口,該方法也可以適用于其他帶SPI接口電路的微處理器。

      參考文獻(xiàn)

      [1] 洪亮,鄢萍,易潤(rùn)忠.基于SPI和單片機(jī)的嵌入式系統(tǒng)擴(kuò)展方法[J].微型電腦應(yīng)用,2008,24(9).

      [2] 汪永琳,丁一.一種3線制半雙工SPI接口設(shè)計(jì)[J].集成電路設(shè)計(jì)與開(kāi)發(fā),2010,35(5).

      [3] 宋曄,蔡慧,趙榮祥.采用SPI接口實(shí)現(xiàn)TMS3230F240DSP之間的通信[J].機(jī)電工程,2005,22(5).

      [4] 楊瑞帆,郭曉鵬,崔順.基于C8051F330D單片機(jī)的多路數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2010,(4).

      [5] 馮金霞,張輪,熊天圣.基于SPI接口的異步串口擴(kuò)展技術(shù)研究[J].微型電腦應(yīng)用,2009,25(12).

      [6] 賈偉,邵左文,張玉猛.基于SPI總線的高速串行數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].國(guó)外電子測(cè)量技術(shù),2007,26(4).

      (責(zé)任編輯:周加轉(zhuǎn))

      猜你喜歡
      單片機(jī)
      基于單片機(jī)MCU的IPMI健康管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      淺析51單片機(jī)的特點(diǎn)與應(yīng)用
      單片機(jī)在智能控制中的應(yīng)用
      C8051F020與80C51單片機(jī)的異同點(diǎn)
      MCS—51單片機(jī)多串口通訊技術(shù)應(yīng)用分析
      一種單片機(jī)虛擬實(shí)驗(yàn)室的建立方法
      點(diǎn)陣式液晶顯示器lMl2864與51單片機(jī)的接口設(shè)計(jì)
      單片機(jī)I/O口模擬串行通訊的C51實(shí)現(xiàn)方法
      單片機(jī)調(diào)試方法的探討
      用PIC單片機(jī)制作的時(shí)間繼電器
      康马县| 孟村| 合肥市| 新乐市| SHOW| 泗洪县| 理塘县| 科尔| 普安县| 武义县| 洪湖市| 曲麻莱县| 柏乡县| 金昌市| 托克托县| 长丰县| 滦平县| 黑龙江省| 德化县| 陆川县| 毕节市| 康马县| 平原县| 安福县| 临沭县| 马边| 子洲县| 鲁甸县| 孙吴县| 浙江省| 九龙坡区| 松滋市| 留坝县| 崇左市| 偃师市| 西丰县| 台南县| 易门县| 阜南县| 达孜县| 万安县|