從編程角度介紹SPI串行外設(shè)接口
發(fā)布時(shí)間:2017-04-28 責(zé)任編輯:susan
【導(dǎo)讀】SPI總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。正是由于有了通信方式,我們才能夠通過(guò)芯片控制各種各樣的外圍器件,實(shí)現(xiàn)很多“不可思議”的現(xiàn)代科技。這里將以SPI為題,從編程角度來(lái)介紹SPI總線。
1、SPI協(xié)議簡(jiǎn)介
圖1.SPI接口
SPI 是英語(yǔ) Serial Peripheral interface 的縮寫(xiě),顧名思義就是串行外圍設(shè)備接口。是 Motorola首先在其 MC68HCXX 系列處理器上定義的。SPI是一種高速的,全雙工,同步的通信總線,由于其簡(jiǎn)單易用的特性,現(xiàn)在很多的nor flash和nandflash芯片集成了這種通信協(xié)議,也就是我們說(shuō)的SPI flash。
2、應(yīng)用及現(xiàn)狀
圖2.SPI應(yīng)用
SPI flash 芯片應(yīng)用十分廣泛,在很多電子產(chǎn)品上面或多或少都有它的蹤影,如手機(jī)、數(shù)碼、液晶顯示器、機(jī)頂盒、電腦主板等。最近,有消息透露,蘋(píng)果新手機(jī)iPhone 8將導(dǎo)入采用編碼型快閃存儲(chǔ)(NOR Flash),讓已經(jīng)處于缺貨狀態(tài)的NOR芯片更為惱火,另外據(jù)存儲(chǔ)業(yè)者透露,今年NOR芯片供給缺口將可能擴(kuò)大至20%。
3、解剖SPI總線
SPI 接口一般使用 4 條線通信,MISO 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出。MOSI 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入。SCLK 時(shí)鐘信號(hào),由主設(shè)備產(chǎn)生。CS 從設(shè)備片選信號(hào),由主設(shè)備控制。
圖3.SPI總線
SPI接口在Master控制下產(chǎn)生的從器件使能信號(hào)和時(shí)鐘信號(hào),兩個(gè)雙向移位寄存器按位傳輸進(jìn)行數(shù)據(jù)交換,傳輸數(shù)據(jù)高位在前,低位在后(MSB)。在SCK的下降沿上數(shù)據(jù)改變,上升沿一位數(shù)據(jù)被存入移位寄存器。
圖4.使能信號(hào)和時(shí)鐘信號(hào)
4、解剖SPI flash
搞懂了SPI協(xié)議之后,下面就讓小編來(lái)帶你輕松操作SPI flash芯片。對(duì)flash芯片的操作,一般包括對(duì)flash芯片的擦除,編程和讀取,各大廠商的SPI flash芯片都大同小異,操作命令基本是沒(méi)什么變化的,當(dāng)我們拿到一款芯片,要特別注意芯片的容量,操作分區(qū),下面以旺宏的芯片為例為大家講解。
其實(shí),無(wú)論是對(duì)芯片的擦除,編程還是讀取操作,我們大致可以按照以下的套路來(lái):寫(xiě)命令---寫(xiě)地址---寫(xiě)(讀)數(shù)據(jù)。正如以下的時(shí)序圖一樣清晰明了,我們先把片選信號(hào)拉低,再發(fā)個(gè)0x02頁(yè)編程命令,再發(fā)個(gè)地址,就可以輕松寫(xiě)數(shù)據(jù)了。
依樣畫(huà)葫蘆,擦除操作也是一樣,甚至更簡(jiǎn)單,但是我們要注意循環(huán)判斷狀態(tài)寄存器的WIP位直至為0為擦除完成,具體循環(huán)時(shí)間視芯片而定。
另外,我們要特別注意SPI flash的 OTP區(qū),即(ONE TIME PROGRAMMABLE),也就是說(shuō)這個(gè)區(qū)域只能編程一次,編程之后不能再修改及擦除,因此我們操作的時(shí)候要特別注意。對(duì)OTP區(qū)域的讀寫(xiě)之前,我們首先要發(fā)送進(jìn)入OTP區(qū)域的命令,其他的操作和以上普通flash區(qū)域的操作是一樣的。
掌握以上方法,我們就可以輕松操作SPI flash芯片了,當(dāng)然,對(duì)時(shí)序這種底層的操作,還需要不斷學(xué)習(xí)和積累。
特別推薦
- 音頻放大器的 LLC 設(shè)計(jì)注意事項(xiàng)
- 服務(wù)器電源設(shè)計(jì)中的五大趨勢(shì)
- 電子技術(shù)如何助力高鐵節(jié)能?
- 利用創(chuàng)新FPGA技術(shù):實(shí)現(xiàn)USB解決方案的低功耗、模塊化與小尺寸
- 加速度傳感器不好選型?看這6個(gè)重要參數(shù)!
- 功率器件熱設(shè)計(jì)基礎(chǔ)(十三)——使用熱系數(shù)Ψth(j-top)獲取結(jié)溫信息
- IGBT并聯(lián)設(shè)計(jì)指南,拿下!
技術(shù)文章更多>>
- MD&M West展會(huì):Micro Crystal攜創(chuàng)新定時(shí)元件,共繪醫(yī)療科技新藍(lán)圖
- PLC 交流模塊的 TRIAC 輸出故障排除
- 解鎖AI設(shè)計(jì)潛能,ASO.ai如何革新模擬IC設(shè)計(jì)
- 汽車拋負(fù)載Load Dump
- 50%的年長(zhǎng)者可能會(huì)聽(tīng)障?!救贖的辦法在這里
技術(shù)白皮書(shū)下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門(mén)搜索
功率電阻
功率放大器
功率管
功率繼電器
功率器件
共模電感
固態(tài)盤(pán)
固體繼電器
光傳感器
光電池
光電傳感器
光電二極管
光電開(kāi)關(guān)
光電模塊
光電耦合器
光電器件
光電顯示
光繼電器
光控可控硅
光敏電阻
光敏器件
光敏三極管
光收發(fā)器
光通訊器件
光纖連接器
軌道交通
國(guó)防航空
過(guò)流保護(hù)器
過(guò)熱保護(hù)
過(guò)壓保護(hù)