新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于SM320F2812 SPI總線的擴(kuò)展EEPROM設(shè)計

基于SM320F2812 SPI總線的擴(kuò)展EEPROM設(shè)計

作者: 時間:2013-07-03 來源:網(wǎng)絡(luò) 收藏

  0 引言

  (Electrically Erasable ProgrammableRead-Only Memory電可擦可編程只讀存儲器),是一種掉電后數(shù)據(jù)不丟失的存儲芯片.在實際應(yīng)用中,為了保持程序能夠統(tǒng)一,又必須在程序中使用不同的參數(shù),可以使用進(jìn)行擴(kuò)展存儲,將需要使用的數(shù)據(jù)存儲在中.當(dāng)系統(tǒng)上電開始工作時,首先從EEPROM中讀取參數(shù),然后執(zhí)行應(yīng)用.本文采用了ATMEL公司的EEPROM存儲器AT25010及TI公司推出的2000系列DSP TMS320F2812,很好地實現(xiàn)了數(shù)據(jù)的擦寫和存儲.AT25010采用了標(biāo)準(zhǔn)的接口,所以與DSP經(jīng)過簡潔的設(shè)計連接后即可實現(xiàn)硬件連接.

  1.AT25010介紹

  AT25010是ATMEL公司推出的串行外設(shè)接口可擦寫存儲器,具有1KB(128*8)字節(jié)容量和掉電后數(shù)據(jù)保持功能,主要用于低電壓和低功耗應(yīng)用中.

  2.TMS320F2812的SPI接口介紹

  TMS320F2812是TI公司推出的32位的定點DSP,主要應(yīng)用于控制領(lǐng)域.DSP主頻可以通過軟件進(jìn)行設(shè)置,最高可以達(dá)到150MHz,內(nèi)部集成了豐富的資源,可以大大簡化外圍電路的設(shè)計.

  TMS320F2812的串行外設(shè)接口(SPI)是一個高速同步的串行輸入/輸出口,通信速率和通信數(shù)據(jù)長度都是可編程的,通常用于DSP處理器和外部外設(shè)以及其他處理器之間進(jìn)行通信.

  SPI接口有一個16級的接收和傳輸FIFO,可以減少工作時CPU的開銷.

  3.硬件設(shè)計

  為了使D S P能夠從E E P R O M中正確寫入和讀出數(shù)據(jù), 需要對硬件進(jìn)行正確的設(shè)置.

  TMS320F2812處理器SPI模塊有4個外部引腳,分別是SPI從輸出/主輸入引腳SPISOMI.SPI從輸入/主輸出引腳SPISIMO.SPI從發(fā)送使能引腳SPISTE.SPI串行時鐘引腳SPICLK.AT25010與TMS320F2812的硬件接口電路如圖1示所.圖1中將DSP的SPISTE引腳與AT25010的片選信號引腳CS相連,使DSP能控制是否選通芯片;DSP的SPISOMI引腳與A T 2 5 0 1 0的數(shù)據(jù)輸出引腳S O相連,接收AT25010發(fā)送的數(shù)據(jù);DSP的SPISIMO引腳與AT25010的數(shù)據(jù)輸出引腳SI相連,向AT25010發(fā)送數(shù)據(jù);DSP的SPICLK引腳與AT25010的串行時鐘引腳SCK相連,向AT25010提供時鐘信號,使其能夠與DSP保持同步.AT25010芯片寫保護(hù)引腳WP(Write Protect)控制是否能夠?qū)ζ鋵懭霐?shù)據(jù).當(dāng)將此引腳置高電平時,DSP可以對AT25010芯片寫入或者讀取數(shù)據(jù);當(dāng)將此引腳置低電平時,DSP只能對AT25010芯片進(jìn)行讀取數(shù)據(jù)的操作,而不能對其寫入數(shù)據(jù).電路設(shè)計時將AT25010的WP引腳通過電阻拉高.

  4.軟件設(shè)計

  在D S P開始對A T 2 5 0 1 0進(jìn)行數(shù)據(jù)寫入和讀取之前, 按照設(shè)計要求進(jìn)行初始化.對TMS320F2812的設(shè)置:首先關(guān)閉可屏蔽中斷,設(shè)置中斷屏蔽寄存器,開啟系統(tǒng)SPI時鐘使能,允許SPI串行外設(shè)接口正常工作.其次,DSP采用發(fā)送數(shù)據(jù)的方式對AT25010進(jìn)行初始化,當(dāng)DSP需要對AT25010寫入數(shù)據(jù)時,向AT25010發(fā)送寫入控制指令,并控制時鐘同步信號和片選使能信號,向指定的地址寫入數(shù)據(jù);當(dāng)DSP需要對AT25010讀取數(shù)據(jù)時,向AT25010發(fā)送讀取數(shù)據(jù)的控制指令,從指定地址中讀取數(shù)據(jù).

  4.1 SPI初始化

  初始化SPI模塊,需要打開系統(tǒng)的SPI使能寄存器,設(shè)置SPI的波特率,配置SPI數(shù)據(jù)發(fā)送模塊寄存器.數(shù)據(jù)接收模塊寄存器.狀態(tài)控制寄存器和FIFO寄存器,滿足正常系統(tǒng)工作要求.

4.2 AT25010設(shè)置

  當(dāng)DSP需要讀取AT25010指定地址的數(shù)據(jù)時,必須按照以下順序.在片選引腳CS拉低選中AT25010芯片后,“讀指令”必須首先發(fā)送至AT25010,然后發(fā)送地址數(shù)據(jù).如果DSP讀取數(shù)據(jù)完畢,片選引腳CS拉高為高電平.


上一頁 1 2 下一頁

關(guān)鍵詞: SM320F2812 SPI總線 EEPROM

評論


相關(guān)推薦

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

關(guān)閉