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

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

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

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

一文解讀SPI

硬件攻城獅 ? 來源:硬件攻城獅 ? 2024-11-19 11:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

讓我們回顧一下,我們學(xué)習(xí)了串口通訊(優(yōu)點是全雙工,缺點是只能點對點通訊)

另外還學(xué)習(xí)了IIC通訊(優(yōu)點是一主多從通訊,缺點是半雙工)

技巧:看一個總線是半雙工還是全雙工就看有幾根數(shù)據(jù)線

那有沒有總線是以全雙工,并且還是一主多從的方式通訊呢?

2e93ae74-a01b-11ef-93f3-92fbcf53809c.jpg

答案是有的,那就是用SPI通訊

寫數(shù)據(jù)

先來看看設(shè)備之間如何使用SPI方式來通訊

2ead7b2e-a01b-11ef-93f3-92fbcf53809c.jpg

可以看出設(shè)備之間有4根線連接(SCK、MOSI、MISO、SS),下面來細(xì)說每根線的作用

SS為片選信號線(用來選擇哪個設(shè)備)

MOSI (master output , slave input)主機(jī)輸出,從機(jī)輸入

MISO(master input , slave output )主機(jī)輸入,從機(jī)輸出

SCK為時鐘信號線(用來提供基準(zhǔn)時鐘信號)

下面以控制EEPROM為例(圖中型號為93C46的是EEPROM)

2ed3af92-a01b-11ef-93f3-92fbcf53809c.jpg

假設(shè)EEPROM里面有128個內(nèi)存地址(用一個字節(jié)就可以尋址完)

2ef0190c-a01b-11ef-93f3-92fbcf53809c.jpg

這SPI的數(shù)據(jù)格式

2f191032-a01b-11ef-93f3-92fbcf53809c.jpg

無論是寫操作還是讀操作,起始位都為1,但操作碼01是寫操作,操作碼10是讀操作

當(dāng)?shù)刂反a寫入EEPROM中寄存器的地址,這時就選中了這個地址,相當(dāng)于打通了直達(dá)該地址的通道

緊接著寫入數(shù)據(jù),這樣數(shù)據(jù)被保存下來了

2f354a86-a01b-11ef-93f3-92fbcf53809c.jpg

用電平表示是這樣的

2f5ef214-a01b-11ef-93f3-92fbcf53809c.jpg

那是不是直接發(fā)送給被控設(shè)備就行了?

當(dāng)然是不行的

因為SPI是串行同步通訊的,所以需要數(shù)據(jù)線和時鐘線兩根線才能傳輸數(shù)據(jù)

而且SPI發(fā)送數(shù)據(jù)是當(dāng)時鐘線處于跳變沿時才能被發(fā)送的(具體是處于什么跳變沿,取決于該設(shè)備)這里以上升沿為例

2f754dc0-a01b-11ef-93f3-92fbcf53809c.jpg

在SS(片選信號)被選中期間,當(dāng)SCK(時鐘信號)發(fā)生上升沿,數(shù)據(jù)就被確定下來

以上面的數(shù)據(jù)為例

2f812078-a01b-11ef-93f3-92fbcf53809c.jpg

根據(jù)時鐘信號線空閑狀態(tài)是高電平還是低電平,又因為每種狀態(tài)可以分為上升沿和下降沿觸發(fā)

共計有4種狀態(tài)

2f8cd288-a01b-11ef-93f3-92fbcf53809c.jpg

讀數(shù)據(jù)

讀操作也是同樣的操作

現(xiàn)在要把EEPROM里的數(shù)據(jù)讀出來

2faf2112-a01b-11ef-93f3-92fbcf53809c.jpg

根據(jù)SPI的數(shù)據(jù)格式

2fb8f69c-a01b-11ef-93f3-92fbcf53809c.jpg

現(xiàn)在需要MOSI寫入1 10 0000001

MISO后半段就可以讀取數(shù)據(jù)了(上面EEPROM存儲的為0000 1111)

2fcfee7e-a01b-11ef-93f3-92fbcf53809c.jpg

總結(jié)

SPI是全雙工,一主多從

SPI是當(dāng)發(fā)生跳變沿時,傳輸數(shù)據(jù)

SPI本質(zhì)是移位寄存器

2fe169ba-a01b-11ef-93f3-92fbcf53809c.jpg

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

    關(guān)注

    17

    文章

    1885

    瀏覽量

    101288
  • 通訊
    +關(guān)注

    關(guān)注

    9

    文章

    947

    瀏覽量

    36545

原文標(biāo)題:秒懂SPI

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    詳解SPI串行外設(shè)接口

    SPI也是MCU最常見的對外通信口之,由摩托羅拉在上世紀(jì)80年代中開發(fā),用于嵌入式系統(tǒng)中器件之間的短距離數(shù)據(jù)通信,標(biāo)準(zhǔn)模式使用四條信號線。目前常見的應(yīng)用器件有:LCD模組、以太網(wǎng)模塊、SPI串行Flash和很多傳感器等,大部分
    的頭像 發(fā)表于 01-18 09:45 ?1.3w次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>詳解<b class='flag-5'>SPI</b>串行外設(shè)接口

    搞懂SPI通信協(xié)議

    SPI 的英文全稱為 Serial Peripheral Interface,顧名思義為串行外設(shè)接口。SPI種同步串行通信接口規(guī)范,主要應(yīng)用于嵌入式系統(tǒng)中的短距離通信。該接口由摩托羅拉在20世紀(jì)80年代中期開發(fā),后發(fā)展成了
    發(fā)表于 06-06 10:02 ?1846次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>搞懂<b class='flag-5'>SPI</b>通信協(xié)議

    SPI協(xié)議,寄存器解讀

    最近在學(xué)習(xí)SPI協(xié)議,對寄存器操作不是特別熟練。發(fā)帖希望有大佬能從寄存器角度提供幫助,幫忙指導(dǎo)根據(jù)手冊去解讀協(xié)議。有償。
    發(fā)表于 05-22 20:08

    詳解SPI接口

    來源:易特創(chuàng)芯串行外設(shè)接口(SPI)是微控制器和外圍IC(如傳感器、ADC、DAC、移位寄存器、SRAM等)之間使用最廣泛的接口之。本文先簡要說明SPI接口,然后介紹ADI公司支持SPI
    發(fā)表于 10-22 18:05

    解讀HEVC視頻標(biāo)準(zhǔn)的環(huán)內(nèi)濾波,看完你就懂了

    解讀HEVC視頻標(biāo)準(zhǔn)的環(huán)內(nèi)濾波,看完你就懂了
    發(fā)表于 06-03 06:08

    讀懂SPI串行外設(shè)接口

    SPI總線系統(tǒng)是種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。正是由于有了通信方式,我們才能夠通過芯片控制各種各樣的外圍器件,實現(xiàn)很多“不可思議”的現(xiàn)代科技。這里將以SPI為題,從編程角度來介紹
    發(fā)表于 04-27 15:19 ?1.1w次閱讀

    讀懂MSP430 SPI總線

    通過另控制位I2C控制,I2C位0則工作于SPI。在SPI模式下,允許單片機(jī)以確定的速率發(fā)送和接收7位或8位數(shù)據(jù)。
    發(fā)表于 05-13 09:03 ?6982次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>讀懂MSP430 <b class='flag-5'>SPI</b>總線

    AN1245中手冊之Microchip SPI串行SRAM器件的建議用法

    本文主要介紹了AN1245中手冊之Microchip SPI串行SRAM器件的建議用法.
    發(fā)表于 06-21 15:25 ?19次下載
    AN1245中<b class='flag-5'>文</b>手冊之Microchip <b class='flag-5'>SPI</b>串行SRAM器件的建議用法

    介紹SPI串行總線

    SPI協(xié)議是由摩托羅拉公司提出的通訊協(xié)議(SerialPeripheralInterface),即串行外圍設(shè)備接口,是種高速全雙工的通信總線。
    發(fā)表于 07-16 17:58 ?5372次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>介紹<b class='flag-5'>SPI</b>串行總線

    解讀FPGA設(shè)計者的5項基本功及設(shè)計流程資料下載

    電子發(fā)燒友網(wǎng)為你提供解讀FPGA設(shè)計者的5項基本功及設(shè)計流程資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-24 08:46 ?38次下載
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>解讀</b>FPGA設(shè)計者的5項基本功及設(shè)計流程資料下載

    講完SPI通訊,看后不懂來找我

    外設(shè)接口 (SPI) 是微控制器和外圍 IC(如傳感器、ADC、DAC、 移位寄存器、SRAM等)之間使用最廣泛的接口之。 SPI種同步、全雙工、主從式接口。來自主機(jī)或從機(jī)的數(shù)
    的頭像 發(fā)表于 11-01 10:23 ?6861次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>講完<b class='flag-5'>SPI</b>通訊,看后不懂來找我

    看懂SPI協(xié)議

    作者:王超首發(fā):電子電路開發(fā)學(xué)習(xí)都有哪些內(nèi)容?SPI協(xié)議簡介4線還是3線?4種工作模式多種傳輸速率SPI協(xié)議的時序SPI協(xié)議的升級版FPGA實...
    發(fā)表于 01-25 18:35 ?38次下載
    <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>SPI</b>協(xié)議

    搞懂SPI通信協(xié)議

    SPI是Serial Peripheral Interface的簡稱,是由Motorola公司推出的種高速、全雙工的總線協(xié)議,可以實現(xiàn)一對一、對多芯片通信。
    的頭像 發(fā)表于 03-23 16:51 ?3841次閱讀

    解讀GNSS信號對網(wǎng)絡(luò)中授時應(yīng)用的益處

    漲知識 | 解讀GNSS信號對網(wǎng)絡(luò)中授時應(yīng)用的益處
    的頭像 發(fā)表于 11-24 14:26 ?1233次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>解讀</b>GNSS信號對網(wǎng)絡(luò)中授時應(yīng)用的益處

    你知道什么是SPI嗎?入門,簡單易懂

    在現(xiàn)代電子設(shè)備中,數(shù)據(jù)傳輸?shù)乃俣群托手陵P(guān)重要。SPI(SerialPeripheralInterface,串行外圍接口),作為種同步串行數(shù)據(jù)總線,因其高效、全雙工的特點而廣泛應(yīng)用于嵌入式系統(tǒng)
    的頭像 發(fā)表于 02-05 17:22 ?9058次閱讀
    你知道什么是<b class='flag-5'>SPI</b>嗎?<b class='flag-5'>一</b><b class='flag-5'>文</b>入門,簡單易懂