如何在raspberry pi上啟用spi/i2c(以及它們的用途)

你可能知道Raspberry Pi上的GPIO引腳,但是SPI和I2C聯結器呢?它們是幹什麼用的,你怎麼能利用它們呢?...

樹莓皮幾乎可以用來做任何事。從家庭媒體中心到定製復古遊戲設置,可以肯定地說,Pi和類似的單板電腦正在變得無處不在。

SPI-I2C-raspberry-pi

當您開始在Raspberry Pi上嘗試GPIO引腳時,事情變得更加有趣。我們已經介紹了所有這些管腳的功能,現在讓我們看看如何在Pi上啟用SPI和I2C協議,以及為什麼要啟用。

什麼是覆盆子皮(spi on raspberry pi)?

在開始之前,讓我們簡要介紹一下這兩個協議的作用。

SPI(或串行外圍接口)允許微控制器(如Pi)一次與100多個外圍組件通信。微控制器充當所有“從”部件的“主”部件,並能與它們高速通信。此圖概述了一個簡單的SPI連接:

SPI and I2C on the Raspberry Pi

如果這是你第一次讀到關於SPI的文章,它可能看起來很嚇人,但是要堅持下去!SCLK是主設備設置的時鐘速度,它決定了設備之間共享信息的速度。

在時鐘的每個週期(或“嘀嗒聲”)中,主設備和從設備都發送和接收一位信息。這就是MOSI(Master-Out-Slave-In)和MISO(Master-In-Slave-Out)引腳的用途。

SS或Slave Select pin(在Pi上標記為CE0或CE1)用於通知從設備在任何給定時間與主設備通信或不通信。在大多數情況下,每個從設備都需要自己的SS引腳,但可以共享SCLK、MOSI和MISO引腳。

一些設備可以“菊花鏈”共享一個SS引腳,使總引腳使用減少到四個,加上兩個電源和接地。SPI以其驚人的速度而聞名,通常用於移位寄存器或adc(模數轉換器)中,以便在設備之間傳遞數據。

增強型初創公司YouTube頻道有一個簡單易懂的SPI入門,進一步解釋協議:

如何在raspberry pi上啟用spi

要在Raspberry Pi上啟用SPI,請通過輸入以下命令從終端打開raspi配置:

sudo raspi-config

導航到Interfacing Opti***,並在以下菜單上選擇P4 SPI Enable/Disable automatic loading of SPI kernel module(P4 SPI啟用/禁用SPI內核模塊的自動加載)。在窗口提示下選擇“是”。SPI現在已啟用!

SPI and I2C on the Raspberry Pi

或者,您可以從/boot啟用SPI/配置.txt文件。打開終端窗口並輸入:

sudo nano /boot/config.txt

查找讀取#dtparam=spi=on的行並刪除#符號。無論以何種方式啟用SPI,重新啟動Pi和SPI都將啟用。

你能用樹莓皮做spi嗎?

雖然有數百個不同的項目使用許多不同的SPI外圍設備,一個好的入門項目是編程自己的RFID閱讀器。

我們使用MFRC-522閱讀器在我們的DIY智能鎖與Arduino和RFID教程。對於一個覆盆子皮風味的RFID介紹,檢查piddlerintheroot的深入說明。

這種設置也不僅僅是為了愛好電子產品。在我們收集的最佳Raspberry Pi項目中,作為歐洲大型工廠運營的一部分,我們採用了使用Raspberry Pi和RFID運行的全尺寸MES系統。

什麼是i2c覆盆子皮(i2c on raspberry pi)?

I2C是由Phillips Electronics創建的通信協議,在基於微控制器的業餘愛好項目中得到了大量應用。原因很明顯——它只使用兩根電線,而不是SPI的最小四根。它也得到了用戶**的庫的良好支持。在Raspberry Pi上有許多設計用於I2C的組件。雖然它比SPI慢,但對於大多數日常使用來說,它的工作速度仍然足夠快。

與SPI非常相似,該協議有一個主設備(如Pi)和一個從設備(如屏幕、移位寄存器或電機驅動器)。

設備之間的第一個連接是SCL(串行時鐘),它由主機設置以同步數據傳輸。第二行是SDA(串行數據),它在I2C總線上的所有設備之間來回傳輸數據。

主設備以起始位和七位十六進制地址開始通信。這必須與從屬設備匹配,以便它們通信。這就是為什麼這麼多的設備可以只用兩根電線。

然後,主設備在接收到應答或ACK back之前指定它是要讀還是寫(R/W)從設備。

YouTube增強型初創公司再次提供了對I2C的易於理解和深入瞭解:

如何在raspberry pi上啟用i2c

I2C也通過raspi配置菜單在Pi上啟用。打開終端並輸入:

sudo raspi-config

使用箭頭鍵選擇接口選項,然後選擇P5I2C啟用/禁用I2C內核模塊的自動加載。確認您要啟用協議,您將看到一個確認屏幕。

SPI and I2C on the Raspberry Pi

與SPI一樣,還可以通過修改配置.txt文件。打開終端並輸入:

sudo nano /boot/config.txt

修改#dtparam=i2c#u arm=on,刪除#符號。

SPI and I2C on the Raspberry Pi

重新啟動Pi,I2C就可以啟動了!

你能在樹莓皮上用i2c做什麼?

I2C非常適合任何需要大量輸出的項目。一個典型的用途是液晶屏幕,它需要多達16引腳使用。I2C將此功能降低到只有兩個用於通信,兩個用於電源和接地。

許多LCD屏幕都附帶了I2C“揹包”,使它們的設置更加簡單,併為其他傳感器和外圍設備釋放了剩餘的Pi引腳。

TheRaspberryPiGuy有一個詳細的YouTube教程,介紹如何在Raspberry Pi上設置和使用I2C液晶屏

使用spi和i2c可以節省引腳!

覆盆子Pi上的SPI和I2C當然不適合完全愛好電子產品的初學者,但它們也沒什麼好怕的。

在潛水之前,按照我們的樹莓皮初學者指南學習基礎知識是個好主意。

通過一些範例項目學習是最好的方法,我們期待著看到你的想法!誰知道你會做出什麼奇怪而美妙的覆盆子皮呢?

  • 發表於 2021-03-25 07:35
  • 閱讀 ( 56 )
  • 分類:DIY

你可能感興趣的文章

樹莓皮板指南:零與模型a和b

你有興趣買一個樹莓皮,但一開始看,你就遇到了一個問題:為什麼有這麼多型號? ...

  • 發佈於 2021-03-11 19:21
  • 閲讀 ( 76 )

5個線上威脅可能會毀掉你的raspberry pi體驗

你很高興用你的樹莓皮。也許是遊戲中心,或者是媒體中心。希望你已經嘗試了一些其他用途,這個難以置信的多功能的小電腦。但它安全嗎? ...

  • 發佈於 2021-03-12 17:34
  • 閲讀 ( 47 )

你的樹莓皮安全嗎?

你的樹莓皮安全嗎?當然是。但它真的安全嗎?上面的資料安全嗎?這個計劃會被推翻嗎? ...

  • 發佈於 2021-03-13 03:37
  • 閲讀 ( 63 )

樹莓皮:非官方教程

This guide is available to download as a free PDF. Download this file now. Feel free to copy and share this with your friends and family. ...

  • 發佈於 2021-03-13 15:59
  • 閲讀 ( 65 )

為什麼你什麼都不用樹莓皮

想**一個網路連線的doodad,它會閃爍LED嗎?你可以用樹莓皮!畢竟,當你的工具箱裡只有一把錘子的時候,你很容易把一切都看成釘子。但你不應該,這就是原因。 ...

  • 發佈於 2021-03-14 14:25
  • 閲讀 ( 70 )

如何在任何raspberry pi上安裝vpn

虛擬專用網(VPN)是網路隱私和安全的重要組成部分。簡言之,如果你還沒有執行一個與你常用的安全工具,你應該。VPN可用於Windows、Linux和macOS,以及Android和iOS。 ...

  • 發佈於 2021-03-14 18:08
  • 閲讀 ( 62 )

使用raspberry pi觸控式螢幕的10個專案

與其將Raspberry Pi**電視,或透過SSH連線(或透過VNC或RDP進行遠端桌面連線),您可能會選擇購買Raspberry Pi觸控式螢幕顯示器。 ...

  • 發佈於 2021-03-14 20:42
  • 閲讀 ( 50 )

如何將資料從raspberry pi複製到pc:5種方法

不管你用什麼樣的樹莓圓周率,總有一天你會找到一個簡單的方法來複制資料到計算機和從計算機。它可以執行網路伺服器,媒體伺服器,復古遊戲機等等。 ...

  • 發佈於 2021-03-15 10:48
  • 閲讀 ( 63 )

如何觀看netflix,亞馬遜影片,和樹莓皮叢

試著把你的樹莓皮變成媒體中心,但感到失望? ...

  • 發佈於 2021-03-18 02:26
  • 閲讀 ( 58 )

適合初學者的11個最佳樹莓圓周率專案

樹莓圓周率是一個偉大的小機器-它的負擔得起,高度便攜,使用者友好。但是,當你第一次得到一個,它可能是棘手的,以找出哪些專案,你應該首先承擔。 ...

  • 發佈於 2021-03-19 13:42
  • 閲讀 ( 61 )