




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、SPI 模塊(WOZON)2012/10/24編改學(xué)生在此文稿基礎(chǔ)性重新整理,注入自己的思維,并且在編改此文稿變成自己的東西。上簽上自己名字,方能將目錄學(xué)習(xí)目的2參考文獻(xiàn)212參考文獻(xiàn)22S5PC100 的 SPI 模塊32.134SPI 知識3在 S5PC100 中 SPI 模塊34.14.2程序例程45M25PC10A 資源5程序參考例程65.15.2編寫日期作者內(nèi)容概要2012-10-24WOZON創(chuàng)建1 學(xué)習(xí)目的學(xué)習(xí) SPI 工作原理,理解 S5PC100 對 SPI 提供的資源,學(xué)習(xí) M25P10A SPI 編程。知識,學(xué)習(xí)2 參考文獻(xiàn)2.1參考文獻(xiàn)參考文獻(xiàn)指的是遠(yuǎn)見的文件。無。外部
2、參考文獻(xiàn)指的是相對于上述參考文獻(xiàn)以外的文件。S5PC100_UM_REV104(SAMSUNG).pdf三星公司關(guān)于 SPI 知識.docx來自M25P10A.pdf博文。3SPI:是 Serial Peripheralerface 的縮寫,字面意思為串行接口,是一種間的一種通訊機(jī)制。MOSI: (Master Out Salver In)數(shù)據(jù)收發(fā)線,對主來說是數(shù)據(jù)輸入。MISO: (Master In Saver Out)數(shù)據(jù)收發(fā)線,對主來說是數(shù)據(jù)輸出。來說是數(shù)據(jù)輸出,對與從來說是數(shù)據(jù)輸入,對于從SCK:(Serial clock)時鐘信號線。CC(CS):(chip select)片選信號
3、CPOL: (clock polar)時鐘極性,功能是時鐘信號極性設(shè)定位。CPHA: (clock phase)時鐘相位,功能是收發(fā)順序設(shè)定位。4 S5PC100 的 SPI 模塊4.1 SPI 知識SPI 是一種設(shè)備()之間通訊技術(shù),是摩托羅拉公司率先發(fā)起,與 I2C 一樣被許多廠商廣泛采用,參見關(guān)于 SPI 知識.docx。4.2 在 S5PC100 中 SPI 模塊特點:1、每個 SPI 包含兩個位移寄存器一個為接收數(shù)據(jù),另一個為發(fā)送數(shù)據(jù),它們都可支持 8、16 和 32bit 數(shù)據(jù)寬度,所以 SPI 為全雙工串行通訊。每個 SPI 有 3 種時鐘源可以選擇。每個 SPI 都可支持兩個獨
4、立的 FIFO 用于收發(fā)數(shù)據(jù),每個 FIFO 為 16 個 32bit 數(shù)據(jù)組成。支持主工作模式和從工作模式兩種。支持接收無發(fā)送操作,即可以主動給出時鐘信號。收發(fā)工作頻率高達(dá) 50MHz。2、3、4、5、6、有 3 個 SPI 模塊,下圖為 SPI 的時鐘源(PCLK、SCLK_SPIO_48 和 SCLK_SPIn)關(guān)系圖:S5PC100 的 4 中通訊時序模式:5 程序例程目的操作M25PC10A,該是一種閃存。5.1 M25PC10A 資源特性:1、1Mbit Flash 內(nèi)存。2、每頁編程在 1.4mS 完成。3、每扇區(qū)擦寫 0.65S。4、整塊擦寫 1.7S。5、使用 2.3 到 3
5、.6V 供電,深度休眠 1uA。6、支持 SPI 總線,速度高達(dá) 50MHz。7、電子:JEDC(0 x2011)。8、數(shù)據(jù)保存 20 年。內(nèi)存組織:1、131,072 字節(jié)(1Mbits);2、4 個扇區(qū)(32768 字節(jié)/扇區(qū));3、512 頁(256 字節(jié)/頁);第 1 引腳為片選信號(In),第 2 引腳數(shù)據(jù)輸出(Out),第 3 引腳寫保護(hù)(In),第 4 引腳電源接地,第 5 引腳數(shù)據(jù)輸入(In),第 6 引腳時鐘輸入(In),第 7 引腳掛起信號(In),第 8引腳接電源。SPI 采用CPOL=0,CPHA=0 和CPOL=1.CPHA=1 兩種工作時序模式。M24P10A的操作
6、命令:5.2 程序參考例程#include s5pc100.h#include uart.h#define SPI0_CLK_GATE_ON(16)#define MAX50/* Flash #define #define #define #define*/ #define #define*/opcodes. */ OPCODE_WREN OPCODE_WRDA OPCODE_RDSROPCODE_WRSR0 x060 x040 x050 x01/*/*/*/*Write enable */Write disable */Read sWrite sus register */us regist
7、er 1 byteOPCODE_NORM_READOPCODE_FAST_READ0 x030 x0b/* Read data bytes (low frequency) */* Read data bytes (high frequency)#define #define #define #define #define#defineOPCODE_PPOPCODE_BE_4K OPCODE_BE_32K0 x02/*Page Program (up to 256 bytes) */0 x200 x52/*/*/*/*Erase EraseErase4KiB block */ 32KiB blo
8、ck */whole flash chip */OPCODE_CHIP_ERASE 0 xc7OPCODE_SEOPCODE_RDID0 xd8Sector erase (usually/* Read JEDEC ID */64KiB)*/0 x9f/* SusRegister SR_WIPSR_WELbits.*/ 12#define#define/* Write/* Writein progress */enablelatch*/延時,用于操作同步void _delay(volatiletimes)i,j;for (j = 0; j times;j+)for (i = 0; i 1000;
9、 i+);/復(fù)位。void _soft_reset(void)SPI0.CH_CFG |= 0 x1 5;_delay(1);SPI0.CH_CFG &= (0 x1 5);void init_SPI0()/* set GPB03 to support spi0*/ GPB.GPBCON = (GPB.GPBCON & 0 xf0000)| 0 x2222;/* enable clk_gate, spi_clksel = PCLK; spi_scaler CLK_GATE_D1.CLK_GATE_D1_4 |= SPI0_CLK_GATE_ON; SPI0.CLK_CFG &= 0 x0;_s
10、oft_reset();reset= 0*/softSPI0.CH_CFG &= (0 x1 4) | (0 x1 3) | (0 x1 2) | 0 x3);/master mode, active high and Format ASPI0.MODE_CFG = SPI0.MODE_CFG & (0 x3 17) | (0 x3 29);/BUS_WIDTH=8bit,CH_WIDTH=8bitSPI0.CS_REG &= (0 x1 1);/ SPI0.SLAVESEL |= (0 x1 1);SPI0.CLK_CFG |= 1 8;/Clockenablespiclock=pclk/2
11、/從設(shè)備,CS片選信號為1void _disable_salve(void)SPI0.CS_REG |= 0 x1; /disable salve_delay(1);/從設(shè)備使能,CS片選信號為0void _eable_salve(void)SPI0.CS_REG &= 0 x1; /enable salve_delay(1);/向中寫入數(shù)據(jù)void _transfer(unsigned char *data,i;len)SPI0.CH_CFG |= 0 x1; / enable Tx Channel_delay(1);for (i = 0; i len; i+) SPI0.SPI_TX_DA
12、TA = datai;while( !(SPI0.SPI_SUS & (0 x1 21)_delay(1);SPI0.CH_CFG &= 0 x1; / disable Tx Channel);/從中數(shù)據(jù)void _receive(unsigned char *buf,i;len)SPI0.CH_CFG |= 0 x1 1; / enable Rx Channel_delay(1);for (i = 0; i len; i+)bufi = SPI0.SPI_RX_DATA;_delay(1);SPI0.CH_CFG &= (0 x1 4)+0 x30);(buf0&0 xf)+0 x30);(
13、 );(M);(T);(=);(0);(x);(buf14)+0 x30);(buf1&0 xf)+0 x30);( );(M);(C);(=);(0);(x);(buf24)+0 x30);(buf2&0 xf)+0 x30);p(n);/按扇區(qū)擦除void erase_sector(addr)unsignedchar buf4; OPCODE_SE;addr 16;addr 8; addr;buf0buf1buf2buf3=_eable_salve();_transfer(buf, 4);_disable_salve();/整個擦除void erase_chip()unsigned cha
14、r buf4; buf0 = OPCODE_CHIP_ERASE;_eable_salve();_transfer(buf, 1);_disable_salve();/OPCODE_CHIP_ERASE=0 xc7/等待寫完成void _wait_till_write_finished()unsigned char buf1;_eable_salve();buf0 = OPCODE_RDSR; /OPCODE_RDSRInstruction_transfer(buf, 1);= 0 x05 ReadSus Registerwhile(1)_receive(buf, 1);if(buf0 & S
15、R_WIP);elseputs( Write is finished.n );break;_disable_salve();/寫使能void _enable_write()unsigned char buf1;buf0 = OPCODE_WREN;_eable_salve();_transfer(buf, 1);_disable_salve();/OPCODE_WREN = 0 x06void WriteDatapagenumber)oSPI0ByPage(unsigned char *data,len,unsigned char buf4;/cfg_spi0();_soft_reset();
16、_enable_write();/* 榪欓噷浣跨敤鐨勬槸鐗囨摝闄紝鍙erase_chip();_wait_till_write_finished();牴鎹 渶姹傛敼涓簊ector_erase */buf0buf1buf2buf3=OPCODE_PP; /OPCODE_PP = 0 x02 Page Program Instruction 0;pagenumber-1 ;/pagenumber 12560;_soft_reset();_enable_write();_eable_salve();_transfer(buf, 4);_transfer(data, len);_disable_salve();_wait_till_write_finished();void ReadDataFromSPI0ByPage(unsigned char *data,unsigned char buf4;/cfg_spi0();_soft_reset();len,pagenumber)buf0buf1buf2buf3=OPCODE_NORM_READ;0;pagenumber -0;1;_eable_salve();_transfer(buf, 4);_rece
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司倉庫升級方案(3篇)
- 商鋪踏步改造方案(3篇)
- 工程項目資金管理制度
- 列車物資配送管理制度
- 裝卸服務(wù)投標(biāo)方案(3篇)
- 宣威學(xué)校安全管理制度
- 小區(qū)保安工位管理制度
- 國企財務(wù)職工管理制度
- 啟動電源檢修方案(3篇)
- 完善政府績效管理制度
- 我們的節(jié)日-端午
- 工貿(mào)培訓(xùn)課件
- 四川省2024年中考物理試題13套附解析答案
- 第1單元班級衛(wèi)生大掃除(教案)-三年級上冊勞動魯科版
- 鋁合金造型施工方案
- 肱骨外上髁炎的健康宣教
- 交警執(zhí)勤執(zhí)法安全課件
- 高二日語滿分試卷及答案
- 內(nèi)墻涂料施工方案
- 委托取水許可驗收合同(2篇)
- 機(jī)用虎鉗畢業(yè)設(shè)計論文
評論
0/150
提交評論