espBerry ESP32 Disvolva Estraro kun Raspberry Pi GPIO
PRODUCTINFORMO
Specifoj
- Elektrofonto: Multoblaj fontoj
- GPIO: Kongrua kun Raspberry Pi 40-pingla GPIO-kapo
- Sendrataj Kapabloj: Jes
- Programado: Arduino IDE
Finiteview
La espBerry DevBoard kombinas la disvolvan tabulon ESP32DevKitC kun iu ajn Raspberry Pi HAT per konektado al la surŝipa RPi-kongrua 40-stifta GPIO-kapo. Ĝi ne celas esti Raspberry Pi-alternativo, sed prefere etendaĵo de la funkcieco de la ESP32 uzante la larĝan gamon de RPi HAT-oj disponeblaj en la merkato.
Aparataro
Elektrofonta Konektilo
La espBerry povas esti funkciigita per diversaj fontoj. Bonvolu konsulti la uzantmanlibron por detalaj informoj pri la disponeblaj energifontoj.
espBerry Skemoj
La espBerry estis dizajnita por mapi kiel eble plej multajn signalojn (GPIO, SPI, UART, ktp.). Tamen, ĝi eble ne kovras ĉiujn ĉapelojn disponeblajn en la merkato. Por adapti kaj evoluigi vian propran ĈAPELON, raportu al la skemo de la espBerry. Vi povas elŝuti la plenajn skemojn de espBerry (PDF) ĉi tie.
La ESP32 DevKit Pinout
La ESP32 DevKit pinout disponigas vidan reprezentadon de la pinglokonfiguracio de la estraro. Por plena view de la pinout bildo, klaku ĉi tie.
La Raspberry Pi 40-pingla GPIO-Kapo
La Raspberry Pi havas vicon da GPIO-pingloj laŭ la supra rando de la tabulo. La espBerry estas kongrua kun la 40-pingla GPIO-kapo trovita sur ĉiuj nunaj Raspberry Pi-tabuloj. Bonvolu noti, ke la GPIO-kapo estas nepopulata sur Raspberry Pi Zero, Raspberry Pi Zero W, kaj Raspberry Pi Zero 2 W. Antaŭ la Raspberry Pi 1 Model B+, tabuloj havis pli mallongan 26-pinglan kaplinion. La GPIO-kapo havas 0.1 (2.54mm) pinglaton.
SPI Havena Konekto
La SPI-haveno sur la espBerry permesas serian plendupleksan kaj sinkronan komunikadon. Ĝi utiligas horloĝsignalon por transdoni kaj ricevi datumojn inter centra kontrolo (majstro) kaj multoblaj ekstercentraj aparatoj (sklavoj). Male al UART-komunikado, kiu estas nesinkrona, la horloĝsignalo sinkronigas datumojn.
Oftaj Demandoj
- Ĉu mi povas uzi iun ajn Raspberry Pi HAT kun la espBerry?
La espBerry estas desegnita por kongrui kun iu ajn Raspberry Pi HAT per konektado al la enkonstruita 40-stifta GPIO-kapo. Tamen, ĝi eble ne kovras ĉiujn ĉapelojn disponeblajn en la merkato. Bonvolu raporti al la skemo de espBerry por pliaj informoj. - Kiun programlingvon mi povas uzi kun la espBerry?
La espBerry subtenas programadon per la populara Arduino IDE, kiu ofertas bonegajn programajn kapablojn. - Kie mi povas trovi pliajn informojn kaj rimedojn?
Dum ĉi tiu uzantmanlibro provizas detalajn informojn, vi ankaŭ povas esplori interretajn afiŝojn kaj artikolojn por pliaj rimedoj. Se vi bezonas pliajn informojn aŭ havas sugestojn, bonvolu kontakti nin.
Finiteview
- La espBerry DevBoard kombinas la Evoluo de ESP32-DevKitC tabulo kun iu ajn Raspberry Pi HAT per konekto al la surŝipa RPi-kongrua 40-stifta GPIO-kapo.
- La celo de la espBerry ne devus esti perceptita kiel Raspberry Pi-alternativo sed kiel etendado de la funkcieco de la ESP32 per tuŝado de la vastaj ofertoj de RPi-ĈAPELOJ en la merkato kaj antaŭenirante.tage de la multoblaj kaj flekseblaj aparataj opcioj.
- La espBerry estas la perfekta solvo por prototipado kaj Interreto de Aĵoj (IoT) aplikoj, precipe tiuj postulantaj sendratajn kapablojn. Ĉiuj malfermfontaj kodoj samples take advantage de la populara Arduino IDE kun ĝiaj bonegaj programaj kapabloj.
- En la sekvanta, ni klarigos la aparataron kaj programaron funkciojn, inkluzive de ĉiuj detaloj, kiujn vi bezonas scii por aldoni la Raspberry HAT de via elekto. Krome, ni provizos kolekton de aparataro kaj programaroamples por pruvas la kapablojn de la espBerry.
- Tamen ni deteniĝos de ripeti informojn, kiuj jam disponeblas per aliaj rimedoj, t.e., interretaj afiŝoj kaj artikoloj. Kie ajn ni opinias, ke aldonaj informoj estas necesaj, ni aldonos referencojn por vi studi.
Notu: Ni penas tre malfacile dokumenti ĉiun detalon, kiu povas esti grava por niaj klientoj scii. Tamen, dokumentado bezonas tempojn, kaj ni ne ĉiam estas perfektaj. Se vi bezonas pliajn informojn aŭ havas sugestojn, bonvolu bonvolu kontaktu nin.
Trajtoj de espBerry
- Procesoro: ESP32 DevKitC
- 32-Bita Xtensa dukerna @240 MHz
- WiFi IEEE 802.11 b/g/n 2.4 GHz
- Bluetooth 4.2 BR/EDR kaj BLE
- 520 kB SRAM (16 kB por kaŝmemoro)
- 448 kB ROM
- Programebla per kablo USB A/mikro-USB B
- Raspberry Pi Kongrua 40-stifta GPIO-kapo
- 20 GPIO
- 2 x SPI
- 1 x UART
- Eniga potenco: 5 VDC
- Protekto de inversa poluseco
- Overvoltage Protekto
- Potenca Barela Konektilo Jack 2.00mm ID (0.079ʺ), 5.50mm OD (0.217ʺ)
- 12/24 VDC-opcioj haveblaj
- Operacia Intervalo: -40 °C ~ 85 °C
Notu: Plej multaj RPi-ĈAPELOJ funkcias je 0°C ~ 50°C - Dimensioj: 95 mm x 56 mm – 3.75ʺ x 2.2ʺ
Konformas al Normaj Mekanikaj Specifoj de Raspberry Pi HAT…
Aparataro
- Ĝenerale, la disvolva tabulo espBerry kombinas la ESP32-DevKitC-modulon kun iu ajn Raspberry Pi HAT per konektado al la enkonstruita RPi-kongrua 40-stifta GPIO-kapo.
- La plej uzataj ligoj inter la ESP32 kaj la RPi HAT estas la SPI kaj la UART-haveno kiel klarigite en la sekvaj ĉapitroj. Ni ankaŭ mapis plurajn signalojn GPIO (Ĝeneraluzebla Input Output). Por pli detalaj informoj pri la mapado, bonvolu raporti al la skemo.
- Ni multe klopodas provizi bonan dokumentadon. Tamen, bonvolu kompreni, ke ni ne povas klarigi ĉiujn ESP32-detalojn en ĉi tiu uzantmanlibro. Por pli detalaj informoj, bonvolu raporti al la ESP32-DevKitC V4 Komenca Gvidilo.
espBerry Board Komponantoj
Elektrofonta Konektilo
- La espBerry povas esti funkciigita per pluraj fontoj:
- La Mikro-USB-konektilo sur la ESP32 DevKitC-modulo
- La 5 VDC Jack 2.0 mm
- La 5 VDC Fina Bloko
- Ekstera elektroprovizo konektita al la RPi HAT
- Estas Raspberry Pi HAT-oj, kiuj permesas liveri eksteran potencon (ekz. 12 VDC) rekte al la HAT. Ekfunkciigante la espBerry per ĉi tiu ekstera nutrado, vi devas agordi la jumper ĉe la Elektrofonto al "EXT". Alie, ĝi devas agordi al "Surŝipe".
- Estas eble funkciigi la espBerry interne ("Sur Board") dum daŭre havante potencon aplikitan al la ĈAPELO.
espBerry Skemoj
- La espBerry estis dizajnita por mapi kiel eble plej multajn signalojn (GPIO, SPI, UART, ktp.). Tamen, tio ne nepre signifas, ke la espBerry kovras ĉiujn HAT-ojn disponeblajn en la merkato. Via finfina fonto por adaptiĝoj kaj disvolvi vian propran ĈAPELON devas esti la skemo de la espBerry.
- Klaku ĉi tie por elŝuti la plenajn skemojn de espBerry (PDF).
- Krome, ni aldonis la ESP32 DevKitC kaj la Raspberry Pi 40-pinglan GPIO-kaplinion en la sekvaj ĉapitroj.
La ESP32 DevKit pinout
Por plena view de la supra bildo, alklaku ĉi tie.
La Raspberry Pi 40-pingla GPIO-Kapo
- Potenca trajto de la Raspberry Pi estas la vico de pingloj GPIO (ĝeneraluzeblaj enigo/eligo) laŭ la supra rando de la tabulo. 40-stifta GPIO-kapo troviĝas sur ĉiuj nunaj Raspberry Pi-tabuloj (nepopulataj sur Raspberry Pi Zero, Raspberry Pi Zero W kaj Raspberry Pi Zero 2 W). Antaŭ la Raspberry Pi 1 Model B+ (2014), tabuloj konsistis el pli mallonga 26-stifta kaplinio. La GPIO-kapo sur ĉiuj tabuloj (inkluzive de la Raspberry Pi 400) havas 0.1″ (2.54mm) pinton.
- Por pliaj informoj, referu al Raspberry Pi Aparataro - GPIO kaj la 40-stifta Kapo.
- Por pliaj informoj pri Raspberry Pi HAT-oj, bonvolu raporti al Aldonaj Tabuloj kaj ĈAPELOJ.
SPI Havena Konekto
- SPI signifas Serial Peripheral Interface, seria plendupleksa kaj sinkrona interfaco. La sinkrona interfaco postulas horloĝan signalon por transdoni kaj ricevi datumojn. La horloĝsignalo estas sinkronigita inter unu centra kontrolo ("majstro") kaj multoblaj periferiaj aparatoj ("sklavoj"). Male al UART-komunikado, kiu estas nesinkrona, la horloĝsignalo kontrolas kiam datumoj estas sendotaj kaj kiam ĝi devus esti preta por legi.
- Nur majstra aparato povas kontroli la horloĝon kaj disponigi horloĝsignalon al ĉiuj sklavaj aparatoj. Datenoj ne povas esti transdonitaj sen horloĝsignalo. Kaj majstro kaj sklavo povas interŝanĝi datumojn unu kun la alia. Neniu adresmalkodado estas bezonata.
- La ESP32 havas kvar SPI-busojn, sed nur du estas disponeblaj por uzo, kaj ili estas konataj kiel HSPI kaj VSPI. Kiel menciite antaŭe, en SPI-komunikado, ĉiam ekzistas unu regilo (ankaŭ konata kiel majstro) kiu kontrolas aliajn ekstercentrajn aparatojn (ankaŭ konatajn kiel sklavoj). Vi povas agordi la ESP32 aŭ kiel mastro aŭ sklavo.
- Sur la espBerry, la signaloj asignitaj al la defaŭltaj IOoj:
- Suba bildo montras la SPI-signalojn de la ESP32-modulo al la RPi GPIO-kapo kiel eltiraĵo de la skemo.
- Estas multaj specoj de ESP32-tabuloj haveblaj. Tabuloj krom la espBerry povas havi malsamajn defaŭltajn SPI-pinglojn, sed vi povas trovi informojn pri defaŭltaj pingloj el ilia datenfolio. Sed se defaŭltaj pingloj ne estas menciitaj, vi povas trovi ilin uzante Arduino-skizon (uzu la unuan ligilon sube).
- Por pliaj informoj, vidu:
- La espBerry uzas la VSPI-konekton kiel defaŭltan, kio signifas, se vi iras kun la defaŭltaj signaloj, vi ne devus renkonti problemojn. Estas manieroj ŝanĝi la pinglo-taskon kaj ŝanĝi al HSPI (kiel klarigite en la supraj referencoj), sed ni ne esploris ĉi tiujn scenarojn por la espBerry.
- Vidu ankaŭ nian sekcion pri SPI Havena Programado.
Seria (UART) Havena Konekto
- Krom la enkonstruita USB-haveno, la ESP32-disvolva modulo havas tri UART-interfacojn, t.e. UART0, UART1 kaj UART2, kiuj disponigas nesinkronan komunikadon kun rapideco de ĝis 5 Mbps. Ĉi tiuj seriaj havenoj povas esti mapitaj al preskaŭ ajna pinglo. Sur la espBerry, ni asignis IO15 kiel Rx kaj IO16 kiel Tx, kiuj estas konektitaj al GPIO16 kaj GPIO20 sur la 40-pingla kaplinio kiel montrite ĉi tie:
- Ni elektis ne uzi la normajn RX/TX (GPIO3/GPIO1) signalojn sur la ESP32 DevKit, ĉar ili ofte estas uzataj por testaj presaĵoj per la Seria Monitoro de la Arduino IDE. Ĉi tio povas malhelpi la komunikadon inter la ESP32 kaj la RPi HAT. Anstataŭe, vi devas mapi IO16 kiel Rx kaj IO15 kiel Tx per programaro kiel klarigite en la sekcio de Programaro de ĉi tiu manlibro.
- Vidu ankaŭ nian sekcion pri Seria (UART) Programado.
Programaro
- En la sekvanta, ni mallonge klarigos la plej gravajn programajn aspektojn por la espBerry. Kiel menciite antaŭe en ĉi tiu uzantmanlibro, ni aldonos interretajn referencojn kie ni opinias, ke aldonaj informoj estas necesaj.
- Por pli, praktika projekto samples, vidu ankaŭ nian Konsiletoj pri Programado de ESP32.
- Krome, estas multaj eksamples de ESP32-programa literaturo, kiuj valoras la investon.
- Tamen ni tre rekomendas uzi Elektronikaj Projektoj kun la ESP8266 kaj ESP32, precipe por viaj sendrataj aplikaj projektoj. Jes, multaj bonaj libroj kaj senpagaj interretaj rimedoj estas disponeblaj hodiaŭ, sed ĉi tiu estas la libro, kiun ni uzas. Ĝi faris nian aliron al Bluetooth, BLE kaj WIFI facila. Programi sendratajn aplikojn sen ĝenoj estis amuza, kaj ni dividas ilin ĉe nia web retejo.
Instalado kaj Preparado de la Arduino IDE
- Ĉiuj nia programado samples estis evoluigitaj uzante la Arduino IDE (Integra Disvolva Medio) pro ĝia facileco de instalado kaj uzado. Krome, ekzistas multaj Arduino-skizoj disponeblaj interrete por la ESP32.
- Por la instalado, sekvu ĉi tiujn paŝojn:
- Paŝo 1: La unua paŝo estus elŝuti kaj instali la Arduino-IDE. Ĉi tio povas esti farita facile sekvante la ligilon https://www.arduino.cc/en/Main/Software kaj elŝutante la IDE senpage. Se vi jam havas tian, certigu, ke vi havas la lastan version.
- Paŝo 2: Unufoje instalita, malfermu la Arduino IDE, kaj iru al Files -> Preferoj por malfermi la fenestron de preferoj kaj lokalizi la "Aldonaj Tabuloj-Manaĝero URLs:” kiel montrite sube:
- La tekstkesto povas esti malplena aŭ jam enhavas iun alian URL se vi uzis ĝin antaŭe por alia tabulo. Se ĝi estas malplena, simple algluu la sube URL en la tekstujon.
https://dl.espressif.com/dl/package_esp32_index.json - Se la tekstkesto jam enhavas iun alian URL nur aldonu ĉi tion URL al ĝi, apartigu ambaŭ per komo (,). Nia jam havis la Teensy URL. Ni ĵus eniris la URL kaj aldonis la komon.
- Post tio, alklaku OK kaj la fenestro malaperos.
- La tekstkesto povas esti malplena aŭ jam enhavas iun alian URL se vi uzis ĝin antaŭe por alia tabulo. Se ĝi estas malplena, simple algluu la sube URL en la tekstujon.
- Paŝo 3: Iru al Iloj -> Tabuloj -> Estraraj Administrantoj por malfermi la fenestron de Estrarmanaĝero kaj serĉi ESP32. Se la URL estis algluita ĝuste via fenestro devus trovi la malsupran ekranon kun la butono Instali, simple alklaku la butonon Instali kaj via tabulo devus esti instalita.
La supra ekrankopio montras la ESP32 post kiam ĝi estis instalita. - Paŝo 4: Antaŭ ol vi komencas programi, vi devas agordi la taŭgan ESP32-aparaton (estas pluraj opcioj). Iru al Iloj -> Tabuloj kaj elektu ESP32 Dev Module kiel montrite ĉi tie:
- Paŝo 5: Malfermu la aparato-administranton kaj kontrolu, al kiu COM-haveno via ESP32 estas konektita.
- Kiam vi uzas la espBerry, serĉu la Silicon Labs CP210x USB al UART-Ponto. En nia aranĝo ĝi montras COM4. Reiru al Arduino IDE kaj sub Iloj -> Haveno, elektu la Havenon al kiu via ESP estas konektita.
- Se vi estas komencanto kun la Arduino IDE, bonvolu raporti al Uzante la Arduino-Programaron (IDE).
SPI Havena Programado
- La sekvanta reprezentas nur mallongan superonview de SPI-programado. SPI-programado ne estas facila, sed kiam ajn ni komencas novan projekton, ni serĉas kodon interrete (ekz., github.com).
- Ekzemple, por programi la MCP2515 CAN-regilon, ni uzas modifitan version de la Biblioteko MCP_CAN por Arduino de Cory Fowler, t.e., ni uzas lian scion kaj penadon por nia projekto.
- Tamen, indas elspezi tempon por kompreni SPI-programadon sur baza nivelo. Ekzemple, la espBerry havas la SPI-signalojn mapitajn kiel montrite ĉi tie:
- Ĉi tiuj agordoj devas esti aplikataj en la kodo de la aplikaĵo. Bonvolu raporti al la sekvaj rimedoj por lerni pli pri SPI-programado kun la ESP32:
Seria Haveno (UART) Programado
- Sur la espBerry, ni asignis IO15 kiel Rx kaj IO16 kiel Tx, kiuj estas konektitaj al GPIO16 kaj GPIO20 sur la 40-pingla kaplinio.
- Ni elektis ne uzi la normajn RX/TX (GPIO3/GPIO1) signalojn sur la ESP32 DevKit, ĉar ili ofte estas uzataj por testaj presaĵoj per la Seria Monitoro de la Arduino IDE. Ĉi tio povas malhelpi la komunikadon inter la ESP32 kaj la RPi HAT. Anstataŭe, vi devas mapi IO16 kiel Rx kaj IO15 kiel Tx per programaro.
- La supra kodo reprezentas aplikaĵon ekzample uzante Serial1.
- Kiam vi laboras kun la ESP32 sub la Arduino IDE, vi rimarkos, ke la Seria komando funkcias bone sed Serial1 kaj Serial2 ne. La ESP32 havas tri aparatajn seriajn havenojn kiuj povas esti mapitaj al preskaŭ ajna pinglo. Por ke Serial1 kaj Serial2 funkciu, vi devas impliki la HardwareSerial-klason. Kiel referenco, vidu ESP32, Arduino kaj 3 Aparataj Seriaj Havenoj.
- Vidu ankaŭ nian afiŝon espBerry Projekto: ESP32 kun CH9102F USB-UART Peceto por Seria Rapido ĝis 3Mbit/s.
PRI KOMPRUNO
- Kopirajto © 2023 Copperhill Technologies Corporation - Ĉiuj Rajtoj Rezervitaj
- https://espBerry.com
- https://copperhilltech.com
Dokumentoj/Rimedoj
![]() |
espBerry ESP32 Disvolva Estraro kun Raspberry Pi GPIO [pdf] Uzanto-manlibro ESP32 Disvolva Tabulo kun Raspberry Pi GPIO, ESP32, Disvolva Tabulo kun Raspberry Pi GPIO, Tabulo kun Raspberry Pi GPIO, Raspberry Pi GPIO |