91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA入門(mén)系列15--SPI總線介紹

e9Zb_gh_8734352 ? 來(lái)源:FPGA技術(shù)聯(lián)盟 ? 作者:FPGA技術(shù)聯(lián)盟 ? 2021-03-04 16:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本系列文章主要針對(duì)FPGA初學(xué)者編寫(xiě),包括FPGA的模塊書(shū)寫(xiě)、基礎(chǔ)語(yǔ)法、狀態(tài)機(jī)、RAM、UART、SPI、VGA、以及功能驗(yàn)證等。將每一個(gè)知識(shí)點(diǎn)作為一個(gè)章節(jié)進(jìn)行講解,旨在更快速的提升初學(xué)者在FPGA開(kāi)發(fā)方面的能力,每一個(gè)章節(jié)中都有針對(duì)性的代碼書(shū)寫(xiě)以及代碼的講解,可作為讀者參考。

16

第十六章:SPI

SPI簡(jiǎn)介

電子系統(tǒng)設(shè)計(jì)中,往往被IIC/SPI/UART等總線搞的暈頭轉(zhuǎn)向,本文詳細(xì)介紹SPI總線的接口協(xié)議和應(yīng)用。

SPI總線是一種同步串行外設(shè)接口,它可以使MCU/FPGA/DSP控制器與各種外圍設(shè)備以串行方式進(jìn)行通信。其具有通信速度快,同步設(shè)計(jì)以及控制協(xié)議簡(jiǎn)單等特點(diǎn),是電子系統(tǒng)設(shè)計(jì)的常用選擇之一。很多芯片的控制都提供SPI接口。

SPI 是英語(yǔ) Serial Peripheral Interface 的縮寫(xiě),顧名思義就是串行外圍設(shè)備接口。是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,最早由Motorola提出的。由于其簡(jiǎn)單易用的特性,現(xiàn)在很多的芯片都集成了SPI通信協(xié)議。

SPI傳輸串行數(shù)據(jù)時(shí)首先傳輸最高位。波特率可以高達(dá)5Mbps,具體速度大小取決于SPI硬件。例如,Xicor公司的SPI串行器件傳輸速度能達(dá)到5MHz。

SPI flash 芯片應(yīng)用十分廣泛,在很多電子產(chǎn)品上面或多或少都有它的蹤影,如手機(jī)、數(shù)碼、液晶顯示器、機(jī)頂盒、電腦主板等。主要應(yīng)用在EEPROM,F(xiàn)LASH,實(shí)時(shí)時(shí)鐘,AD轉(zhuǎn)換器,還有數(shù)字信號(hào)處理器和數(shù)字信號(hào)解碼器等,也是很多復(fù)雜芯片參數(shù)配置的常用接口。

SPI總線介紹

SPI 接口一般使用 4 條線通信,包括片選線(cs_n)、時(shí)鐘線(sclk/sck)、輸入數(shù)據(jù)線(sdi/miso) 和輸出數(shù)據(jù)線(sdo/mosi):

SCLK:串行時(shí)鐘線,由主設(shè)備產(chǎn)生;

MISO:主設(shè)備數(shù)據(jù)輸入,從設(shè)備輸出;

MOSI:主設(shè)備數(shù)據(jù)輸出,從設(shè)備輸入;

CS:從設(shè)備片選信號(hào),由主設(shè)備控制。

0e61a438-7b3c-11eb-8b86-12bb97331649.png

其中CS是片選信號(hào),可以預(yù)先規(guī)定其為高使能或者低使能有效時(shí),對(duì)此芯片的操作才有效。這就允許在同一總線上連接多個(gè)SPI設(shè)備。

SPI接口在Master控制下產(chǎn)生的從器件使能信號(hào)和時(shí)鐘信號(hào),兩個(gè)雙向移位寄存器按位傳輸進(jìn)行數(shù)據(jù)交換,傳輸數(shù)據(jù)高位在前,低位在后(MSB)。在SCK的下降沿?cái)?shù)據(jù)改變,上升沿一位數(shù)據(jù)被存入移位寄存器,如圖所示:

0efbd364-7b3c-11eb-8b86-12bb97331649.png

SPI總線通信特點(diǎn)

1.采用主-從模式(Master-Slave) 的控制方式

SPI 規(guī)定了兩個(gè) SPI 設(shè)備之間通信必須由主設(shè)備 (Master) 來(lái)控制從設(shè)備 (Slave). 一個(gè) Master 設(shè)備可以通過(guò)提供 Clock 以及對(duì) Slave 設(shè)備進(jìn)行片選來(lái)控制多個(gè) Slave 設(shè)備。

2.采用同步方式(Synchronous)傳輸數(shù)據(jù)

Master 設(shè)備會(huì)根據(jù)將要交換的數(shù)據(jù)來(lái)產(chǎn)生相應(yīng)的時(shí)鐘脈沖(Clock Pulse), 時(shí)鐘脈沖組成了時(shí)鐘信號(hào)(Clock Signal) , 時(shí)鐘信號(hào)通過(guò)時(shí)鐘極性 (CPOL) 和 時(shí)鐘相位 (CPHA) 控制著兩個(gè) SPI 設(shè)備間何時(shí)數(shù)據(jù)交換以及何時(shí)對(duì)接收到的數(shù)據(jù)進(jìn)行采樣, 來(lái)保證數(shù)據(jù)在兩個(gè)設(shè)備之間是同步傳輸?shù)摹?/p>

3.數(shù)據(jù)交換(Data Exchanges)

SPI設(shè)備間的數(shù)據(jù)傳輸之所以又被稱(chēng)為數(shù)據(jù)交換, 是因?yàn)?SPI 協(xié)議規(guī)定一個(gè) SPI 設(shè)備不能在數(shù)據(jù)通信過(guò)程中僅僅只充當(dāng)一個(gè)"發(fā)送(Transmitter)" 或者 "接收者(Receiver)". 在每個(gè) Clock 周期內(nèi), SPI 設(shè)備都會(huì)發(fā)送并接收一個(gè) bit 大小的數(shù)據(jù), 相當(dāng)于該設(shè)備有一個(gè) bit 大小的數(shù)據(jù)被交換了。

0f3b1e0c-7b3c-11eb-8b86-12bb97331649.png

SPI FLASH讀寫(xiě)介紹

對(duì)flash芯片的操作,一般包括對(duì)flash芯片的擦除,編程和讀取,各大廠商的SPI flash芯片都大同小異,操作命令基本是沒(méi)什么變化的,當(dāng)我們拿到一款芯片,要特別注意芯片的容量,操作分區(qū)等。

其實(shí),無(wú)論是對(duì)芯片的擦除,編程還是讀取操作,我們大致可以按照以下的套路來(lái):寫(xiě)命令---寫(xiě)地址---寫(xiě)(讀)數(shù)據(jù)。正如以下的時(shí)序圖一樣清晰明了,我們先把片選信號(hào)拉低,再依次寫(xiě)指令,地址和數(shù)據(jù),就可以對(duì)FLASH芯片進(jìn)行操作。

0f75a6bc-7b3c-11eb-8b86-12bb97331649.png

在第十七章中將通過(guò)SPI總線控制Flash為例講解擦除的實(shí)現(xiàn)。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1660

    文章

    22434

    瀏覽量

    637140
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6404

    瀏覽量

    140098
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1886

    瀏覽量

    101420

原文標(biāo)題:FPGA入門(mén)系列15--SPI

文章出處:【微信號(hào):gh_873435264fd4,微信公眾號(hào):FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用PicoScope示波器解碼SPI總線信號(hào)

    串行外設(shè)接口(SPI, Serial Peripheral Interface)總線最早由 Motorola 開(kāi)發(fā),用于其微控制器產(chǎn)品。由于其結(jié)構(gòu)簡(jiǎn)單、實(shí)現(xiàn)直接,隨后被其它廠商廣泛采用,目前已在嵌入式系統(tǒng)領(lǐng)域的各類(lèi)器件中得到普及。
    的頭像 發(fā)表于 02-04 09:49 ?7297次閱讀
    使用PicoScope示波器解碼<b class='flag-5'>SPI</b><b class='flag-5'>總線</b>信號(hào)

    瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南之SPI通訊協(xié)議的物理層和協(xié)議層簡(jiǎn)介

    RA芯片的SPI分為簡(jiǎn)單SPI和普通SPI,簡(jiǎn)單SPI就是SCI模塊(Serial Communications Interface)中的SPI
    的頭像 發(fā)表于 02-04 08:23 ?1.1w次閱讀
    瑞薩RA<b class='flag-5'>系列</b>FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南之<b class='flag-5'>SPI</b>通訊協(xié)議的物理層和協(xié)議層簡(jiǎn)介

    Altera FPGA的Avalon MM總線接口規(guī)范介紹

    Avalon總線是一種協(xié)議較為簡(jiǎn)單的片內(nèi)總線,主要用于連接片內(nèi)處理器與外設(shè),以構(gòu)成片上可編程系統(tǒng)(SOPC)。使用Avalon接口能夠輕松連接Intel FPGA中的各個(gè)組件,從而簡(jiǎn)化了系統(tǒng)
    的頭像 發(fā)表于 01-29 16:43 ?7022次閱讀
    Altera <b class='flag-5'>FPGA</b>的Avalon MM<b class='flag-5'>總線</b>接口規(guī)范<b class='flag-5'>介紹</b>

    FPGA 入門(mén)必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    很多開(kāi)發(fā)者第一次接觸FPGA,都會(huì)有同樣的疑問(wèn):FPGA是硬件,不是軟件,怎么寫(xiě)程序?答案就是用硬件描述語(yǔ)言(HDL),最常用的就是Verilog和VHDL。今天,我們就帶你入門(mén),搞清楚FPG
    的頭像 發(fā)表于 01-19 09:05 ?518次閱讀
    <b class='flag-5'>FPGA</b> <b class='flag-5'>入門(mén)</b>必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    汽車(chē)級(jí)SPI總線I/O擴(kuò)展器TXE81XX-Q1:特性、應(yīng)用與設(shè)計(jì)要點(diǎn)

    系列汽車(chē)級(jí)16位和24位SPI總線I/O擴(kuò)展器,為解決這一問(wèn)題提供了有效的解決方案。本文將詳細(xì)介紹TXE81XX-Q1的特性、應(yīng)用場(chǎng)景以及設(shè)計(jì)過(guò)程中的關(guān)鍵要點(diǎn)。 文件下載: txe81
    的頭像 發(fā)表于 12-15 15:20 ?412次閱讀

    汽車(chē)級(jí)SPI總線I/O擴(kuò)展器TXE81XX-Q1:特性、應(yīng)用與設(shè)計(jì)指南

    汽車(chē)級(jí)SPI總線I/O擴(kuò)展器TXE81XX-Q1:特性、應(yīng)用與設(shè)計(jì)指南 在汽車(chē)電子系統(tǒng)日益復(fù)雜的今天,對(duì)于I/O端口數(shù)量和功能的需求也在不斷增加。TXE81XX-Q1系列汽車(chē)級(jí)16位和24位S
    的頭像 發(fā)表于 12-15 15:05 ?486次閱讀

    FPGA實(shí)現(xiàn)基于SPI協(xié)議的Flash驅(qū)動(dòng)控制芯片擦除

    本篇博客具體包括SPI協(xié)議的基本原理、模式選擇以及時(shí)序邏輯要求,采用FPGA(EPCE4),通過(guò)SPI通信協(xié)議,對(duì)flash(W25Q16BV)存儲(chǔ)的固化程序進(jìn)行芯片擦除操作。
    的頭像 發(fā)表于 12-02 10:00 ?2650次閱讀
    <b class='flag-5'>FPGA</b>實(shí)現(xiàn)基于<b class='flag-5'>SPI</b>協(xié)議的Flash驅(qū)動(dòng)控制芯片擦除

    SPI的缺點(diǎn)介紹

    的系統(tǒng)中,可能需要在軟件級(jí)別實(shí)施額外的錯(cuò)誤檢查和處理過(guò)程。這可能涉及校驗(yàn)和、CRC(循環(huán)冗余校驗(yàn))或數(shù)據(jù)包確認(rèn)機(jī)制等技術(shù),以確??煽康臄?shù)據(jù)傳輸。 可擴(kuò)展性有限: 隨著 SPI 總線中設(shè)備數(shù)量的增加,所需
    發(fā)表于 11-26 06:41

    RVMCU課堂「15」: 手把手教你玩轉(zhuǎn)RVSTAR—SPI總線通信篇

    SPI是一種同步、高速、全雙工的通信總線,全稱(chēng)為Serial Peripheral Interface(串行外設(shè)接口),由Motorola公司提出。在嵌入式系統(tǒng)設(shè)計(jì)時(shí),常使用SPI接口連接一些傳感器
    發(fā)表于 10-31 07:00

    GPIOB模擬spi的方法及l(fā)cd屏幕的接入

    越高,數(shù)據(jù)傳輸速率越快。由于spi接口較為簡(jiǎn)單,同時(shí)《RISC-V架構(gòu)與嵌入式開(kāi)發(fā)快速入門(mén)》書(shū)中也詳細(xì)介紹過(guò),在此原理部分介紹從略。 二、spi
    發(fā)表于 10-30 07:59

    深入剖析SPI協(xié)議

    SPI,全稱(chēng)(Serial Peripheral interface)是由摩托羅拉公司首先定義的協(xié)議,中文名為串型外圍設(shè)備接口。SPI是一種高速全雙工的總線協(xié)議。
    的頭像 發(fā)表于 08-21 15:04 ?4110次閱讀
    深入剖析<b class='flag-5'>SPI</b>協(xié)議

    【PZ7020-StarLite 入門(mén)級(jí)開(kāi)發(fā)板】——FPGA 開(kāi)發(fā)的理想起點(diǎn),入門(mén)與工業(yè)場(chǎng)景的雙重優(yōu)選

    對(duì)于初入 FPGA 與嵌入式系統(tǒng)開(kāi)發(fā)領(lǐng)域的工程師而言,一款兼具專(zhuān)業(yè)性與易用性的入門(mén)級(jí)開(kāi)發(fā)板是快速建立技術(shù)認(rèn)知、提升實(shí)踐能力的關(guān)鍵工具。璞致電子科技(上海)有限公司深耕 SDR 及 ARM/FPGA
    的頭像 發(fā)表于 08-08 14:53 ?1277次閱讀
    【PZ7020-StarLite <b class='flag-5'>入門(mén)</b>級(jí)開(kāi)發(fā)板】——<b class='flag-5'>FPGA</b> 開(kāi)發(fā)的理想起點(diǎn),<b class='flag-5'>入門(mén)</b>與工業(yè)場(chǎng)景的雙重優(yōu)選

    使用nRFF54L15初始化一個(gè)SPI

    新建一個(gè)nrf5l15dk_nrf54l15_cpuapp.overlay 添加需要的內(nèi)容 }; }; spi22_sleep_alt : spi22_sleep_alt { group1 {
    的頭像 發(fā)表于 06-27 14:55 ?847次閱讀
    使用nRFF54L<b class='flag-5'>15</b>初始化一個(gè)<b class='flag-5'>SPI</b>

    第十七章 SPI——讀寫(xiě)串行FLASH

    本章介紹SPI協(xié)議,其為高速全雙工通信總線,含物理層、協(xié)議層內(nèi)容,還講解W55MH32的SPI特性、初始化及DMA相關(guān)配置。
    的頭像 發(fā)表于 06-19 17:06 ?1322次閱讀
    第十七章 <b class='flag-5'>SPI</b>——讀寫(xiě)串行FLASH

    看完這篇,SPI其實(shí)也很簡(jiǎn)單嘛(可下載)

    首先我們來(lái)簡(jiǎn)單介紹一下SPI,SPI是串行外設(shè)接口(SerialPeripheralInterface)簡(jiǎn)單來(lái)講就是它一種高速的,全雙工,同步的通信總線被各種
    發(fā)表于 03-26 14:29 ?2次下載