espBerry-LOGO

帶有 Raspberry Pi GPIO 的 espBerry ESP32 開發板

espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-1

產品資訊

規格

  • 電源: 多種來源
  • 通用輸入輸出介面: 與 Raspberry Pi 40 針 GPIO 接頭相容
  • 無線功能: 是的
  • 程式設計: Arduino整合開發環境

超過view

espBerry DevBoard 透過連接到板載 RPi 相容的 32 引腳 GPIO 接頭,將 ESP40DevKitC 開發板與任何 Raspberry Pi HAT 結合。它並不是 Raspberry Pi 的替代品,而是透過利用市場上各種 RPi HAT 來擴展 ESP32 的功能。

硬體

電源連接器
espBerry 可以透過多種來源供電。有關可用電源的詳細信息,請參閱用戶手冊。

espBerry 原理圖
espBerry 旨在映射盡可能多的訊號(GPIO、SPI、UART 等)。但是,它可能不涵蓋市場上提供的所有 HAT。要適應和開發您自己的 HAT,請參閱 espBerry 的原理圖。您可以下載完整的 espBerry 原理圖 (PDF) 這裡.

ESP32 DevKit 腳位分配
ESP32 DevKit 引腳排列提供了電路板引腳配置的可視化表示。對於一個完整的 view 的引腳分配圖像,單擊 這裡.

Raspberry Pi 40 針 GPIO 接頭
Raspberry Pi 的電路板頂部邊緣有一排 GPIO 腳位。 espBerry 與所有目前 Raspberry Pi 板上的 40 針 GPIO 接頭相容。請注意,Raspberry Pi Zero、Raspberry Pi Zero W 和 Raspberry Pi Zero 2 W 上未填充 GPIO 接頭。 GPIO 接頭的接腳間距為 1(26 毫米)。

SPI 連接埠連接
espBerry 上的 SPI 連接埠允許串行全雙工和同步通訊。它利用時脈訊號在中央控制器(主機)和多個週邊設備(從機)之間傳輸和接收資料。與非同步的 UART 通訊不同,時脈訊號同步資料傳輸。

常問問題

  • 我可以將任何 Raspberry Pi HAT 與 espBerry 一起使用嗎?
    espBerry 旨在透過連接到板載 40 針 GPIO 接頭來與任何 Raspberry Pi HAT 相容。但是,它可能不涵蓋市場上提供的所有 HAT。更多資訊請參考 espBerry 原理圖。
  • espBerry 可以使用什麼程式語言?
    espBerry支援使用流行的Arduino IDE進行編程,並具有出色的編程能力。
  • 我可以在哪裡找到更多資訊和資源?
    雖然本用戶手冊提供了詳細信息,但您還可以瀏覽線上帖子和文章以獲取其他資源。如果您需要更多資訊或有建議,請隨時與我們聯繫。

超過view

  • espBerry DevBoard 結合了 ESP32-DevKitC開發 透過連接到板載 RPi 相容的 40 針 GPIO 接頭,可將板與任何 Raspberry Pi HAT 配合使用。
  • espBerry 的目的不應被視為 Raspberry Pi 的替代品,而應透過利用市場上大量的 RPi HAT 並採用先進技術來擴展 ESP32 的功能。tage 多種靈活的硬體選項。
  • espBerry 是原型設計和物聯網 (IoT) 應用的完美解決方案,尤其是需要無線功能的應用。全部開源程式碼amp萊斯採取阿德萬tag受歡迎的 Arduino IDE 以其出色的編程能力。
  • 接下來,我們將解釋硬體和軟體功能,包括添加您選擇的 Raspberry HAT 所需了解的所有詳細資訊。此外,我們還將提供一系列的硬體和軟體amp這些文件演示了 espBerry 的功能。
  • 但是,我們將避免重複透過其他資源(即線上貼文和文章)已經提供的資訊。只要我們認為需要額外信息,我們就會添加參考資料供您學習。
    筆記: 我們正在努力記錄對客戶來說可能很重要的每一個細節。然而,記錄需要時間,而且我們並不總是完美的。如果您需要更多資訊或有建議,請隨時 聯絡我們.

espBerry 特點

  • 處理器: ESP32 開發套件C
    • 32 位元 Xtensa 雙核心 @240 MHz
    • WiFi IEEE 802.11 b/g/n 2.4 GHz
    • 藍牙 4.2 BR/EDR 和 BLE
    • 520 kB SRAM(16 kB 用於快取)
    • 448 KB 只讀存儲器
    • 可透過 USB A/micro-USB B 連接線進行編程
  • Raspberry Pi 相容於 40 針 GPIO 接頭
    • 20 GPIO
    • 2 個SPI
    • 1 個 UART
  • 輸入功率: 5伏直流電
    • 反極性保護
    • 過音量tag電子保護
    • 電源筒連接器插孔 2.00mm ID (0.079ʺ), 5.50mm OD (0.217ʺ)
    • 提供 12/24 VDC 選項
  • 工作範圍: -40℃~85℃
    筆記: 大多數 RPi HAT 的工作溫度為 0°C ~ 50°C
  • 方面: 95 毫米 x 56 毫米 – 3.75ʺ x 2.2ʺ
    符合 標準 Raspberry Pi HAT 機械規格

硬體

  • 一般來說,espBerry 開發板透過連接到板載 RPi 相容的 32 針 GPIO 接頭,將 ESP40-DevKitC 模組與任何 Raspberry Pi HAT 結合。
  • ESP32 和 RPi HAT 之間最常用的連接是 SPI 和 UART 端口,如以下章節所述。我們也映射了幾個 GPIO(通用輸入輸出)訊號。有關映射的更多詳細信息,請參閱原​​理圖。
  • 我們正在努力提供良好的文件。但是,請瞭解,我們無法在本使用手冊中解釋所有 ESP32 詳細資訊。欲了解更多詳細信息,請參閱 ESP32-DevKitC V4 入門指南.

espBerry 板組件

espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-2

電源連接器

  • espBerry 可透過多種來源供電:
    • ESP32 DevKitC 模組上的 Micro-USB 連接器
    • 5 VDC 插孔 2.0 毫米
    • 5 VDC 端子塊
    • 連接到 RPi HAT 的外部電源
  • 有些 Raspberry Pi HAT 允許直接向 HAT 提供外部電源(例如 12 VDC)。透過此外部電源為 espBerry 供電時,需要將電源選擇器處的跳線設定為「EXT」。否則,必須設定為“On Board”。
  • 可以在內部為 espBerry 供電(“板載”),同時仍為 HAT 供電。

espBerry 原理圖 

  • espBerry 旨在映射盡可能多的訊號(GPIO、SPI、UART 等)。然而,這並不一定意味著 espBerry 涵蓋了市場上所有可用的 HAT。您改編和開發自己的 HAT 的最終來源必須是 espBerry 的原理圖。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-3

  • 按此下載完整的 espBerry 原理圖 (PDF)。
  • 此外,我們在後續章節中加入了 ESP32 DevKitC 和 Raspberry Pi 40 針 GPIO 接頭引腳排列。

ESP32 DevKit 腳位排列
對於一個完整的 view 上圖的內容,請點擊此處。

espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-4

Raspberry Pi 40 針 GPIO 接頭

  • Raspberry Pi 的一個強大功能是板頂部邊緣的一排 GPIO(通用輸入/輸出)引腳。目前所有 Raspberry Pi 板上都有 40 針 GPIO 接頭(Raspberry Pi Zero、Raspberry Pi Zero W 和 Raspberry Pi Zero 2 W 上未安裝)。在 Raspberry Pi 1 Model B+ (2014) 之前,主機板包含較短的 26 針接頭。所有主機板(包括 Raspberry Pi 400)上的 GPIO 接頭的引腳間距為 0.1 英吋(2.54 毫米)。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-5

  • 欲了解更多信息,請參閱 Raspberry Pi 硬體 – GPIO 和 40 針接頭.
  • 有關Raspberry Pi HAT的更多信息,請參閱 附加板和 HAT.

SPI 連接埠連接

  • SPI 代表串行週邊接口,一種串行全雙工同步接口。同步介面需要時脈訊號來傳輸和接收資料。時脈訊號在一個中央控制器(“主機”)和多個週邊設備(“從機”)之間同步。與非同步的 UART 通訊不同,時脈訊號控制資料何時發送以及何時準備好讀取。
  • 只有主設備可以控制時脈並向所有從設備提供時脈訊號。沒有時脈訊號就無法傳輸資料。主站和從站都可以相互交換資料。不需要位址解碼。
  • ESP32 有 32 條 SPI 匯流排,但只有兩條可用,分別為 HSPI 和 VSPI。如前所述,在 SPI 通訊中,總是有一個控制器(也稱為主設備)控制其他週邊設備(也稱為從設備)。您可以將 ESPXNUMX 配置為主站或從站。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-6

  • 在 espBerry 上,指派給預設 IO 的訊號:

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-7

  • 下圖顯示了從 ESP32 模組到 RPi GPIO 接頭的 SPI 訊號,作為原理圖的摘錄。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-8

  • 有多種類型的 ESP32 板可供選擇。 espBerry 以外的主機板可能有不同的預設 SPI 引腳,但您可以從其資料表中找到有關預設引腳的資訊。但如果未提及預設引腳,您可以使用 Arduino 草圖找到它們(使用下面的第一個連結)。
  • 有關更多信息,請參閱:
  • espBerry 預設使用 VSPI 連接,這表示如果您使用預設訊號,則不會遇到問題。有多種方法可以更改引腳分配並切換到 HSPI(如上述參考文獻中所述),但我們尚未針對 espBerry 探索這些場景。
  • 另請參閱有關 SPI 連接埠編程的部分。

串行 (UART) 連接埠連接

  • 除板載 USB 連接埠外,ESP32 開發模組還具有 UART0、UART1 和 UART2 三個 UART 接口,可提供高達 5 Mbps 速度的非同步通訊。這些串行埠可以映射到幾乎任何引腳。在 espBerry 上,我們將 IO15 指定為 Rx,將 IO16 指定為 Tx,它們連接到 16 針頭上的 GPIO20 和 GPIO40,如下所示:

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-9

  • 我們選擇不在 ESP3 DevKit 上使用標準 RX/TX (GPIO1/GPIO32) 訊號,因為它們通常用於透過 Arduino IDE 的序列監視器進行測試列印。這可能會幹擾 ESP32 和 RPi HAT 之間的通訊。相反,您必須按照本手冊軟體部分中的說明,將每個軟體的 IO16 對應為 Rx,將 IO15 對應為 Tx。
  • 另請參閱我們的串行 (UART) 程式設計部分。

軟體

  • 下面,我們將簡要地解釋 espBerry 最重要的程式設計方面。正如本使用手冊前面提到的,我們將在我們認為需要其他資訊的地方添加線上參考。
  • 了解更多實作項目amp萊斯,另請參閱我們的 ESP32 程式設計技巧.
  • 此外,還有很多前amp的 ESP32 程式設計文獻,值得投資。
  • 但是,我們強烈建議使用 使用 ESP8266 和 ESP32 的電子項目,特別適合您的無線應用項目。是的,現在有很多好書和免費的線上資源,但這就是我們正在使用的書。它使我們的藍牙、BLE 和 WIFI 方法變得輕而易舉。輕鬆編程無線應用程式很有趣,我們在我們的網站上分享它們 web 地點。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-10

安裝並準備 Arduino IDE

  • 我們所有的編程amp由於易於安裝和使用,這些文件是使用 Arduino IDE(整合開發環境)開發的。此外,網路上還有大量適用於 ESP32 的 Arduino 草圖。
  • 安裝,請依照下列步驟操作:
    • 步驟一: 第一步是下載並安裝 Arduino IDE。透過連結 https://www.arduino.cc/en/Main/Software 並免費下載 IDE,可以輕鬆完成此操作。如果您已經擁有,請確保您擁有最新版本。
    • 步驟一: 安裝完成後,打開 Arduino IDE,然後前往 Files -> 首選項開啟首選項視窗並找到“附加板管理器” URLs:」如下圖:

      espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-11

      • 文字方塊可能為空或已包含其他內容 URL 如果您之前已將其用於另一塊板。若為空,只需貼上以下內容 URL 到文字方塊中。
        https://dl.espressif.com/dl/package_esp32_index.json
      • 如果文字方塊已經包含其他內容 URL 只需添加這個 URL 用逗號 (,) 分隔兩者。我們已經有了 Teensy URL。我們剛剛進入 URL 並添加了逗號。
      • 完成後,按一下“確定”,視窗將消失。
    • 步驟一: 進入工具 -> 開發板 -> 開發板管理器,開啟開發板管理器視窗並蒐索 ESP32。如果 URL 貼上正確後,您的視窗應該會找到下面帶有“安裝”按鈕的螢幕,只需單擊“安裝”按鈕,您的主機板就會安裝完畢。

      espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-12
      上面的螢幕截圖顯示了安裝後的 ESP32。

    • 步驟一: 在開始編程之前,必須設定選擇合適的 ESP32 硬體(有多個選項)。導覽至 Tools -> Boards 並選擇 ESP32 Dev Module,如下所示:

      espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-13

    • 步驟一: 開啟裝置管理員並檢查 ESP32 連接到哪個 COM 連接埠。

      espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-14

  • 使用 espBerry 時,請尋找 Silicon Labs CP210x USB 轉 UART 橋接器。在我們的設定中,它顯示 COM4。返回 Arduino IDE,然後在「工具」->「連接埠」下,選擇 ESP 連接的連接埠。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-15

  • 如果您是Arduino IDE的初學者,請參考 使用 Arduino 軟體 (IDE).

SPI 連接埠編程

  • 以下僅代表簡述view SPI 程式設計。 SPI 程式設計並不容易,但是每當我們開始一個新專案時,我們都會在網路上尋找程式碼(例如,github.com)。
  • 例如,為了對 MCP2515 CAN 控制器進行編程,我們使用了 Cory Fowler 開發的 Arduino 的 MCP_CAN 庫的修改版本,即我們正在利用他的知識和精力來完成我們的專案。
  • 儘管如此,花時間了解基本的 SPI 程式設計還是值得的。例如,espBerry 的 SPI 訊號映射如下所示:

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-16

  • 這些設定必須應用於應用程式的程式碼。請參閱以下資源以了解有關使用 ESP32 進行 SPI 程式設計的詳細資訊:

串行埠 (UART) 編程

  • 在espBerry上,我們將IO15指定為Rx,IO16指定為Tx,它們連接到16針頭上的GPIO20和GPIO40。
  • 我們選擇不在 ESP3 DevKit 上使用標準 RX/TX (GPIO1/GPIO32) 訊號,因為它們通常用於透過 Arduino IDE 的序列監視器進行測試列印。這可能會幹擾 ESP32 和 RPi HAT 之間的通訊。相反,您必須根據軟體將 IO16 對應為 Rx,將 IO15 對應為 Tx。

    espBerry-ESP32-開發板,附 Raspberry-Pi-GPIO-FIG-17

  • 上面的程式碼代表一個應用程式amp文件使用 Serial1。
  • 在 Arduino IDE 下使用 ESP32 時,您會注意到 Serial 指令運作正常,但 Serial1 和 Serial2 卻不行。 ESP32 具有三個硬體串行端口,可以映射到幾乎任何引腳。要讓 Serial1 和 Serial2 運作,您需要涉及 HardwareSerial 類別。作為參考,請參閱 ESP32、Arduino 和 3 個硬體串口.
  • 另請參閱我們的帖子 espBerry 專案:帶有 CH32F USB-UART 晶片的 ESP9102,串行速度高達 3Mbit/s.

關於公司

文件/資源

帶有 Raspberry Pi GPIO 的 espBerry ESP32 開發板 [pdf] 使用者手冊
帶有 Raspberry Pi GPIO 的 ESP32 開發板,ESP32,帶有 Raspberry Pi GPIO 的開發板,帶有 Raspberry Pi GPIO 的板,Raspberry Pi GPIO

參考

發表評論

您的電子郵件地址不會被公開。 必填欄位已標記 *