機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于增強(qiáng)型SPI接口的大容量Flash擴(kuò)展實(shí)現(xiàn)
基于增強(qiáng)型SPI接口的大容量Flash擴(kuò)展實(shí)現(xiàn)
 更新時間:2009-8-27 14:30:39  點(diǎn)擊數(shù):1
【字體: 字體顏色

1引言

    隨著信息時代的到來,各種信息的集成和交互越來越頻繁。運(yùn)動控制系統(tǒng)中需要處理和存儲的信息量也與日俱增,大部分運(yùn)動控制系統(tǒng)的核心器件MCU自身已經(jīng)集成了較大容量的存儲器(與以前MCU相比),但僅僅依靠MCU自身的存儲器一般很難滿足系統(tǒng)對大容量存儲的要求,因此必須找到高效的方法實(shí)現(xiàn)對系統(tǒng)存儲容量的擴(kuò)展。

    SPI是一個高效、數(shù)據(jù)位數(shù)可編程設(shè)置的高速輸入/輸出串行接口,幾乎所有MCU生產(chǎn)廠商都提供對SPI接口的支持,目前高速SPI接口的時鐘頻率已達(dá)到60MHz甚至更高,SPI接口一般只用4根連接線即可完成所有的數(shù)據(jù)通訊和控制操作,因此不占用MCU的數(shù)據(jù)總線和地址總線,極大的節(jié)約了系統(tǒng)的硬件資源,是一種經(jīng)濟(jì)實(shí)用的擴(kuò)展系統(tǒng)存儲容量的方法。

    本文利用32位DSP-TMS320F2812自身的增強(qiáng)型SPI接口,結(jié)合性價比高的串行接口Flash,高效地實(shí)現(xiàn)了對系統(tǒng)存儲容量的擴(kuò)展。

2 系統(tǒng)總體介紹

    Flash擴(kuò)展實(shí)現(xiàn)的硬件系統(tǒng)是具有Ethernet接口的基于DSP和CPLD的運(yùn)動控制板,系統(tǒng)總體結(jié)構(gòu)如圖1所示,核心器件是TI公司推出的32位定點(diǎn)DSP-TMS320F2812和Altera公司推出的MAXII系列CPLD-EPM1270G。主要完成系統(tǒng)輸入信號的檢測、處理,各種控制算法以及和各種接口(Ethernet接口和RS232接口)的通訊,運(yùn)動控制系統(tǒng)的部分控制程序、大量的初始化數(shù)據(jù)和系統(tǒng)的配置信息都存在大容量的串行接口Flash M25P80中,通過DSP增強(qiáng)型SPI接口實(shí)現(xiàn)與核心處理器DSP的高速通信。


3 Flash擴(kuò)展的硬件設(shè)計(jì)

3.1 TMS320F2812的增強(qiáng)型SPI接口特性

(1)可編程的125種不同的波特率。

(2)可編程的1-16位有效數(shù)據(jù)長度。

(3)支持4種時鐘模式,不帶相位延時的下降沿模式、帶相位延遲的下降沿模式、不帶相位延時的上升沿模式和帶相位延時的上升沿模式。

(4)可持續(xù)操作的特性:16級發(fā)送和接收FIFO;可編程的中斷優(yōu)先級和延時發(fā)送控制功能。

    時鐘模式應(yīng)根據(jù)具體應(yīng)用中與MCU接口器件的操作時序決定,選取原則是保證在器件進(jìn)行讀寫操作過程中,所要求的CLK時鐘沿到來時所操作的數(shù)據(jù)必須已經(jīng)在相應(yīng)的引腳上,例如,當(dāng)接口器件(本系統(tǒng)中是Flash)在上升沿接收數(shù)據(jù),在下降沿發(fā)送數(shù)據(jù)時,MCU應(yīng)該選擇不帶相位延時的下降沿方式。

    增強(qiáng)型SPI接口具有16位16級深度的發(fā)送和接收FIFO,這為高速連續(xù)操作提供了可能,在發(fā)送和接收時可以最多進(jìn)行32個字節(jié)的連續(xù)操作,從而極大的提高了通訊效率。

    可編程的中斷優(yōu)先級和可編程的延時發(fā)送控制功能,增加了SPI接口的靈活性,使用戶可以自由配置中斷,并根據(jù)外部器件的特性靈活控制SPI接口的操作時序,既保證了接口操作的高速性也滿足了不同接口器件操作時序的要求。

3.2 串行接口Flash M25P80

    M25P80是意法半導(dǎo)體公司推出的8M大容量串行接口Flash器件,采用2.7V-3.6V單電源供電,兼容標(biāo)準(zhǔn)的SPI接口,器件在上升沿接收數(shù)據(jù),在下降沿發(fā)送數(shù)據(jù),接口時鐘最高為40MHz,支持最大256bytes的快速頁面編程操作、快速的塊擦除(512Kbit)操作和快速的整體擦除(8MHz)操作;具有操作暫停和硬件寫保護(hù)功能。

    SPI擴(kuò)展模塊硬件原理圖如圖2所示。

SPISOMI:SPI從模式輸出/主模式輸入引腳,與Flash的串行數(shù)據(jù)輸出引腳Q相連。

SPISIMO:SPI從模式輸入/主模式輸出引腳,與Flash的串行數(shù)據(jù)輸入D引腳相連。

SPISTE:SPI從模式發(fā)送使能引腳,與Flash的片選引腳S相連。

SPICLK:SPI串行時鐘引腳;與Flash的時鐘輸入引腳C相連。

    RAM_WP信號由DSP的I/O口輸出,控制外部Flash的寫保護(hù)功能,當(dāng)RAM_WP為高電平時,使能Flash的硬件寫保護(hù)功能,F(xiàn)lash內(nèi)部扇區(qū)受保護(hù),不能進(jìn)行寫操作,系統(tǒng)中對Flash的操作不會發(fā)生暫停,因此M25P80的HOLD信號直接接高電平,不進(jìn)行中斷暫停操作。

3.3 M25P80的指令操作

    M25P80支持的操作指令共有12條,所有指令都是8位,操作步驟如下:先選中器件(片選信號拉低),然后輸入8位操作指令字節(jié),緊接著輸入地址字節(jié)(0-3byte,必要時還要加入啞讀字節(jié)),把片選信號拉高(有些指令不要求),M25P80即可以啟動內(nèi)部控制邏輯,自行完成相應(yīng)的操作。以下以最常用的頁面快速編程指令為例進(jìn)行具體說明(其他指令與該指令操作相似,可以相互參考)。

    頁面編程指令時序圖如圖3所示,進(jìn)行頁面編程操作首先應(yīng)將內(nèi)部狀態(tài)寄存器的寫允許位(WREN)置1,然后將片選信號拉低選中器件,輸入PP指令字節(jié)02H,緊接著輸入三個字節(jié)的地址數(shù)據(jù),然后輸入要編程的數(shù)據(jù),所有數(shù)據(jù)都輸入后將片選信號拉高,M25P80隨即啟動內(nèi)部邏輯完成編程操作。

4 SPI模塊軟件編程

4.1 軟件流程說明

    SPI模塊軟件流程圖如圖4所示。

    a、系統(tǒng)初始化:完成SPI接口引腳功能的選擇、DSP外部接口時鐘的定標(biāo)、SPI接口時鐘的使能。具體為:GPIO多路復(fù)用控制寄存器:GPFMUX中將相關(guān)引腳配置為SPI功能引腳,低速設(shè)備時鐘定標(biāo)寄存器LOSPCP中低速設(shè)備時鐘的定標(biāo),外設(shè)時鐘控制寄存器PCLKCR中SPI接口時鐘使能,程序如下:


    b、與SPI相關(guān)的中斷初始化,使能外部中斷向量表(PIEVECT寄存器),復(fù)位外部中斷應(yīng)答寄存器(PIEACK),清除外部中斷標(biāo)志寄存器(PIEIFR),置位PIE中斷使能寄存器(PIEIER),清除全局中斷屏蔽位(STI寄存器的INTM位)。

    c、SPI接口初始化:首先在SPI配置寄存器(SPICCR)中置位SPI軟件復(fù)位位,使SPI進(jìn)入復(fù)位模式,設(shè)置SPI接口的時鐘極性(根據(jù)具體的Flash器件操作特性設(shè)置,在4種時鐘模式中選擇,本系統(tǒng)選擇不帶相位延時的下降沿方式)、選擇有效數(shù)據(jù)位數(shù)、選擇奇偶校驗(yàn)位;在SPI控制寄存器(SPICTL)中:使能接收中斷和發(fā)送中斷、選擇SPI時鐘相位、選擇主或從模式;SPI波特率寄存器(SPIBRR)中設(shè)置SPI接口的通訊波特率。

    d、SPI增強(qiáng)型特性配置:SPIFIFO發(fā)送寄存器(SPIFFTX)中復(fù)位SPI發(fā)送和接收通道、使能增強(qiáng)特性、復(fù)位FIFO指針、清除FIFO中斷標(biāo)志位、使能FIFIO中斷、設(shè)置FIFO中斷優(yōu)先級,SPIFIFO接收寄存器(SPIFFRX),請參考SPIFFTX寄存器配置,兩者基本相同,分別用于發(fā)送控制和接收控制,SPIFIFO控制寄存器(SPIFFCT);根據(jù)具體器件的操作時序要求配置FIFO發(fā)送延時。實(shí)現(xiàn)程序如下:
 
 
 
5 結(jié)束語

    本文所述運(yùn)動控制系統(tǒng)利用系統(tǒng)核心DSP自身的SPI接口,結(jié)合其高速性、可連續(xù)操作性和極大的靈活性,選用性價比高的大容量串行接口Flash,高效地實(shí)現(xiàn)對系統(tǒng)存儲容量的擴(kuò)展,適應(yīng)了目前信息化發(fā)展趨勢,滿足了系統(tǒng)大容量存儲空間的要求。


  • 上一篇: 基于C8051F320 USB接口的數(shù)據(jù)采集存儲電路
  • 下一篇: 基于AVR單片機(jī)多任務(wù)嵌入式Internet系統(tǒng)設(shè)計(jì)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1