espBerry-LOGO

espBerry ESP32 plėtros plokštė su Raspberry Pi GPIO

espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-1 pav.

PRODUKTO INFORMACIJA

Specifikacijos

  • Maitinimo šaltinis: Keli šaltiniai
  • GPIO: Suderinamas su Raspberry Pi 40 kontaktų GPIO antrašte
  • Belaidžio ryšio galimybės: Taip
  • Programavimas: Arduino IDE

Baigėsiview

EspBerry DevBoard sujungia ESP32DevKitC kūrimo plokštę su bet kuria Raspberry Pi HAT, prisijungdama prie RPi suderinamos 40 kontaktų GPIO antraštės. Tai nėra Raspberry Pi alternatyva, o ESP32 funkcionalumo išplėtimas, naudojant platų rinkoje esančių RPi HAT.

Aparatūra

Maitinimo šaltinio jungtis
EspBerry gali būti maitinamas iš įvairių šaltinių. Išsamios informacijos apie galimus maitinimo šaltinius rasite vartotojo vadove.

espBerry schemos
EspBerry buvo sukurtas taip, kad atvaizduotų kuo daugiau signalų (GPIO, SPI, UART ir kt.). Tačiau jis gali neaprėpti visų rinkoje esančių SKRYBŲ. Norėdami pritaikyti ir sukurti savo SKRYBĘ, žr. espBerry schemą. Galite atsisiųsti visas espBerry schemas (PDF) čia.

ESP32 DevKit Pinout
ESP32 DevKit pinout suteikia vaizdinį plokštės kaiščio konfigūracijos vaizdą. Už pilną view smeigtuko paveikslėlyje spustelėkite čia.

Raspberry Pi 40 kontaktų GPIO antraštė
„Raspberry Pi“ turi GPIO kaiščių eilę viršutiniame lentos krašte. EspBerry yra suderinamas su 40 kontaktų GPIO antrašte, esančia visose dabartinėse Raspberry Pi plokštėse. Atminkite, kad Raspberry Pi Zero, Raspberry Pi Zero W ir Raspberry Pi Zero 2 W GPIO antraštė neužpildyta. Iki Raspberry Pi 1 Model B+ plokštės turėjo trumpesnę 26 kontaktų antraštę. GPIO antraštė turi 0.1 (2.54 mm) kaiščio žingsnį.

SPI prievado jungtis
EspBerry SPI prievadas leidžia nuosekliai palaikyti dvipusį ir sinchroninį ryšį. Jis naudoja laikrodžio signalą duomenims perduoti ir priimti tarp centrinio valdymo (pagrindinio) ir kelių išorinių įrenginių (pagalbinių įrenginių). Skirtingai nuo UART ryšio, kuris yra asinchroninis, laikrodžio signalas sinchronizuoja duomenų perdavimą.

DUK

  • Ar galiu naudoti bet kurią Raspberry Pi HAT su espBerry?
    EspBerry sukurtas taip, kad būtų suderinamas su bet kokia Raspberry Pi HAT, prijungtas prie 40 kontaktų GPIO antraštės. Tačiau jis gali neaprėpti visų rinkoje esančių SKRYBŲ. Daugiau informacijos rasite espBerry schemoje.
  • Kokią programavimo kalbą galiu naudoti su espBerry?
    EspBerry palaiko programavimą naudojant populiarią Arduino IDE, kuri siūlo puikias programavimo galimybes.
  • Kur galiu rasti papildomos informacijos ir išteklių?
    Nors šiame vartotojo vadove pateikiama išsami informacija, taip pat galite naršyti internetiniuose įrašuose ir straipsniuose, kad gautumėte papildomų išteklių. Jei jums reikia daugiau informacijos ar turite pasiūlymų, susisiekite su mumis.

Baigėsiview

  • EspBerry DevBoard sujungia ESP32-DevKitC kūrimas plokštę su bet kuria Raspberry Pi HAT, prisijungę prie su RPi suderinamos 40 kontaktų GPIO antraštės.
  • EspBerry tikslas turėtų būti suvokiamas ne kaip Raspberry Pi alternatyva, o kaip ESP32 funkcionalumo išplėtimas, pasinaudojant didžiuliu RPi HAT pasiūla rinkoje ir pasinaudojant pranašumais.tage iš daugybės lanksčių aparatinės įrangos parinkčių.
  • EspBerry yra puikus sprendimas prototipams kurti ir daiktų interneto (IoT) programoms, ypač toms, kurioms reikia belaidžio ryšio galimybių. Visi atvirojo kodo kodai samples take advantage iš populiaraus Arduino IDE su puikiomis programavimo galimybėmis.
  • Toliau paaiškinsime aparatinės ir programinės įrangos funkcijas, įskaitant visą informaciją, kurią reikia žinoti norint pridėti pasirinktą Raspberry HAT. Be to, pateiksime techninės ir programinės įrangos rinkinįampTai parodo espBerry galimybes.
  • Tačiau mes nekartosime informacijos, kuri jau yra prieinama kituose šaltiniuose, ty internetiniuose įrašuose ir straipsniuose. Jei manysime, kad reikia papildomos informacijos, pridėsime nuorodas, kad galėtumėte mokytis.
    Pastaba: Labai stengiamės dokumentuoti kiekvieną detalę, kuri gali būti svarbi mūsų klientams. Tačiau dokumentacija užtrunka, ir mes ne visada esame tobuli. Jei jums reikia daugiau informacijos ar turite pasiūlymų, nedvejodami susisiekite su mumis.

espBerry funkcijos

  • Procesorius: ESP32 DevKitC
    • 32 bitų Xtensa dviejų branduolių @ 240 MHz
    • „WiFi IEEE 802.11 b / g / n 2.4 GHz“
    • Bluetooth 4.2 BR/EDR ir BLE
    • 520 kB SRAM (16 kB talpyklai)
    • 448 kB ROM
    • Programuojamas per USB A/mikro-USB B laidą
  • Raspberry Pi suderinama 40 kontaktų GPIO antraštė
    • „20 GPIO“
    • 2 x SPI
    • 1 x UART
  • Įvesties galia: 5 VDC
    • Apsauga nuo atvirkštinio poliškumo
    • Overvoltage Apsauga
    • Maitinimo statinės jungties lizdas 2.00 mm ID (0.079 ʺ), 5.50 mm OD (0.217 ʺ)
    • Galimi 12/24 VDC variantai
  • Veikimo diapazonas: -40°C ~ 85°C
    Pastaba: Dauguma RPi HAT veikia 0°C ~ 50°C temperatūroje
  • Matmenys: 95 mm x 56 mm – 3.75ʺ x 2.2ʺ
    Atitinka Standartinės Raspberry Pi HAT mechaninės specifikacijos

Aparatūra

  • Apskritai, espBerry kūrimo plokštė sujungia ESP32-DevKitC modulį su bet kuriuo Raspberry Pi HAT, prisijungdama prie su RPi suderinamos 40 kontaktų GPIO antraštės.
  • Dažniausiai naudojamos jungtys tarp ESP32 ir RPi HAT yra SPI ir UART prievadas, kaip paaiškinta kituose skyriuose. Taip pat susiejome kelis GPIO (bendrosios paskirties įvesties išvesties) signalus. Išsamesnės informacijos apie žemėlapių sudarymą rasite schemoje.
  • Labai stengiamės pateikti gerą dokumentaciją. Tačiau supraskite, kad šiame vartotojo vadove negalime paaiškinti visos ESP32 informacijos. Norėdami gauti išsamesnės informacijos, žr ESP32-DevKitC V4 Darbo pradžios vadovas.

espBerry lentos komponentai

espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-2 pav.

Maitinimo šaltinio jungtis

  • EspBerry gali būti maitinamas iš kelių šaltinių:
    • Mikro-USB jungtis ESP32 DevKitC modulyje
    • 5 VDC lizdas 2.0 mm
    • 5 VDC gnybtų blokas
    • Išorinis maitinimo šaltinis prijungtas prie RPi HAT
  • Yra Raspberry Pi HAT, kurios leidžia tiekti išorinę maitinimą (pvz., 12 VDC) tiesiai į HAT. Kai maitinate espBerry per šį išorinį maitinimo šaltinį, maitinimo šaltinio parinkiklio trumpiklį turite nustatyti į „EXT“. Kitu atveju jis turi būti nustatytas į „On Board“.
  • Galima maitinti espBerry viduje („On Board“), o maitinimas tiekiamas HAT.

espBerry schemos 

  • EspBerry buvo sukurtas taip, kad atvaizduotų kuo daugiau signalų (GPIO, SPI, UART ir kt.). Tačiau tai nebūtinai reiškia, kad espBerry apima visas rinkoje esančias HAT. Jūsų pagrindinis adaptacijų ir savo HAT kūrimo šaltinis turi būti espBerry schema.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-3 pav.

  • Spustelėkite čia norėdami atsisiųsti visas espBerry schemas (PDF).
  • Be to, kituose skyriuose pridėjome ESP32 DevKitC ir Raspberry Pi 40 kontaktų GPIO antraštės lizdą.

ESP32 DevKit kištukas
Už pilną view aukščiau esančio paveikslėlio, spustelėkite čia.

espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-4 pav.

Raspberry Pi 40 kontaktų GPIO antraštė

  • Galinga „Raspberry Pi“ savybė yra GPIO (bendrosios paskirties įvesties / išvesties) kaiščių eilutė, esanti viršutiniame plokštės krašte. 40 kontaktų GPIO antraštė yra visose dabartinėse Raspberry Pi plokštėse (nepildyta Raspberry Pi Zero, Raspberry Pi Zero W ir Raspberry Pi Zero 2 W). Iki Raspberry Pi 1 Model B+ (2014 m.) plokštės turėjo trumpesnę 26 kontaktų antraštę. Visų plokščių GPIO antraštė (įskaitant Raspberry Pi 400) turi 0.1 colio (2.54 mm) kaiščio žingsnį.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-5 pav.

  • Norėdami gauti daugiau informacijos, žr Raspberry Pi Hardware – GPIO ir 40 kontaktų antraštė.
  • Norėdami gauti daugiau informacijos apie Raspberry Pi HAT, žr Papildomos lentos ir skrybėlės.

SPI prievado jungtis

  • SPI reiškia Serial Peripheral Interface, nuosekliąją dvipusę ir sinchroninę sąsają. Norint perduoti ir priimti duomenis, sinchroninei sąsajai reikalingas laikrodžio signalas. Laikrodžio signalas sinchronizuojamas tarp vieno centrinio valdymo („pagrindinio“) ir kelių išorinių įrenginių („slavų“). Skirtingai nuo UART ryšio, kuris yra asinchroninis, laikrodžio signalas valdo, kada duomenys turi būti siunčiami ir kada turi būti paruošti skaityti.
  • Tik pagrindinis įrenginys gali valdyti laikrodį ir teikti laikrodžio signalą visiems pagalbiniams įrenginiams. Duomenų negalima perduoti be laikrodžio signalo. Ir pagrindinis, ir pavaldinys gali keistis duomenimis tarpusavyje. Adreso dekodavimas nereikalingas.
  • ESP32 turi keturias SPI magistrales, tačiau galima naudoti tik dvi, jos žinomos kaip HSPI ir VSPI. Kaip minėta anksčiau, SPI komunikacijoje visada yra vienas valdiklis (taip pat žinomas kaip pagrindinis), kuris valdo kitus išorinius įrenginius (taip pat žinomus kaip vergai). ESP32 galite konfigūruoti kaip pagrindinį arba pavaldinį.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-6 pav.

  • EspBerry signalai, priskirti numatytosioms IO:

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-7 pav.

  • Žemiau esančiame paveikslėlyje rodomi SPI signalai iš ESP32 modulio į RPi GPIO antraštę kaip schemos ištrauka.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-8 pav.

  • Yra daugybė ESP32 plokščių tipų. Kitos plokštės nei espBerry gali turėti skirtingus numatytuosius SPI kaiščius, tačiau informacijos apie numatytuosius kaiščius galite rasti jų duomenų lape. Bet jei numatytieji kaiščiai nepaminėti, juos galite rasti naudodami Arduino eskizą (naudokite pirmąją nuorodą žemiau).
  • Norėdami gauti daugiau informacijos, žr.
  • EspBerry naudoja VSPI ryšį kaip numatytąjį, o tai reiškia, kad jei naudojate numatytuosius signalus, problemų neturėtų kilti. Yra būdų, kaip pakeisti kaiščio priskyrimą ir perjungti į HSPI (kaip paaiškinta anksčiau pateiktose nuorodose), tačiau mes nenagrinėjome šių espBerry scenarijų.
  • Taip pat žiūrėkite mūsų skyrių apie SPI prievadų programavimą.

Nuosekliojo (UART) prievado jungtis

  • Be integruoto USB prievado, ESP32 kūrimo modulis turi tris UART sąsajas, ty UART0, UART1 ir UART2, kurios užtikrina asinchroninį ryšį iki 5 Mbps greičiu. Šie nuoseklieji prievadai gali būti susieti su beveik bet kokiu kaiščiu. EspBerry priskyrėme IO15 kaip Rx ir IO16 kaip Tx, kurie yra prijungti prie GPIO16 ir GPIO20 40 kontaktų antraštėje, kaip parodyta čia:

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-9 pav.

  • ESP3 DevKit pasirinkome nenaudoti standartinių RX/TX (GPIO1/GPIO32) signalų, nes jie dažnai naudojami bandomiesiems spaudiniams per Arduino IDE serijinį monitorių. Tai gali trukdyti ryšiui tarp ESP32 ir RPi HAT. Vietoj to turite priskirti IO16 kaip Rx ir IO15 kaip Tx kiekvienai programinei įrangai, kaip paaiškinta šio vadovo programinės įrangos skyriuje.
  • Taip pat žiūrėkite mūsų skyrių apie serijinį (UART) programavimą.

Programinė įranga

  • Toliau trumpai paaiškinsime svarbiausius espBerry programavimo aspektus. Kaip minėta anksčiau šiame vartotojo vadove, pridėsime internetinių nuorodų, kur, mūsų nuomone, reikia papildomos informacijos.
  • Norėdami sužinoti daugiau, praktinis projektas samples, taip pat žiūrėkite mūsų ESP32 programavimo patarimai.
  • Be to, yra daug exampmažiau iš ESP32 programavimo literatūra, į kuriuos verta investuoti.
  • Tačiau labai rekomenduojame naudoti Elektroniniai projektai su ESP8266 ir ESP32, ypač jūsų belaidžių programų projektams. Taip, šiais laikais yra daug gerų knygų ir nemokamų internetinių išteklių, bet mes naudojame šią knygą. Dėl to mūsų požiūris į „Bluetooth“, BLE ir WIFI tapo lengvas. Programuoti belaidžio ryšio programas be vargo buvo smagu, ir mes jomis dalinamės web svetainę.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-10 pav.

Arduino IDE diegimas ir paruošimas

  • Visi mūsų programavimo samples buvo sukurti naudojant Arduino IDE (integruotą kūrimo aplinką), nes ją lengva įdiegti ir naudoti. Be to, internete yra daugybė ESP32 skirtų „Arduino“ eskizų.
  • Norėdami įdiegti, atlikite šiuos veiksmus:
    • 1 veiksmas: Pirmas žingsnis būtų atsisiųsti ir įdiegti Arduino IDE. Tai galima lengvai padaryti spustelėjus nuorodą https://www.arduino.cc/en/Main/Software ir nemokamai atsisiuntus IDE. Jei jau turite, įsitikinkite, kad turite naujausią versiją.
    • 2 veiksmas: Įdiegę atidarykite „Arduino IDE“ ir eikite į Files -> Parinktys, kad atidarytumėte nuostatų langą ir surastumėte „Papildomų lentų tvarkyklę URLs:“, kaip parodyta žemiau:

      espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-11 pav.

      • Teksto laukelis gali būti tuščias arba jame jau yra kitų dalykų URL jei anksčiau jį naudojote kitai lentai. Jei jis tuščias, tiesiog įklijuokite toliau pateiktą informaciją URL į teksto laukelį.
        https://dl.espressif.com/dl/package_esp32_index.json
      • Jei teksto laukelyje jau yra kitų URL tiesiog pridėkite tai URL prie jo abu atskirkite kableliu (,). Mūsiškiai jau turėjo „Teensy“. URL. Mes ką tik įėjome į URL ir pridėjo kablelį.
      • Baigę spustelėkite Gerai ir langas išnyks.
    • 3 veiksmas: Eikite į Tools -> Boards -> Board Managers, kad atidarytumėte valdybos langą ir ieškotumėte ESP32. Jei URL buvo įklijuotas teisingai, jūsų langas turėtų rasti žemiau esantį ekraną su Diegimo mygtuku, tiesiog spustelėkite mygtuką Įdiegti ir jūsų lenta turėtų būti įdiegta.

      espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-12 pav.
      Aukščiau pateiktame ekrano kopijoje parodytas ESP32 po jo įdiegimo.

    • 4 veiksmas: Prieš pradėdami programuoti, turite nustatyti atitinkamą ESP32 aparatinę įrangą (yra keletas parinkčių). Eikite į Tools -> Boards ir pasirinkite ESP32 Dev Module, kaip parodyta čia:

      espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-13 pav.

    • 5 veiksmas: Atidarykite įrenginių tvarkytuvę ir patikrinkite, prie kurio COM prievado prijungtas ESP32.

      espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-14 pav.

  • Kai naudojate espBerry, ieškokite Silicon Labs CP210x USB į UART Bridge. Mūsų sąrankoje rodomas COM4. Grįžkite į Arduino IDE ir skiltyje Įrankiai -> Prievadas pasirinkite prievadą, prie kurio prijungtas jūsų ESP.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-15 pav.

  • Jei esate Arduino IDE pradedantysis, žr „Arduino“ programinės įrangos (IDE) naudojimas.

SPI prievado programavimas

  • Toliau pateikiama tik trumpa informacijaview SPI programavimo. SPI programavimas nėra lengvas, bet kai tik pradedame naują projektą, kodo ieškome internete (pvz., github.com).
  • Pavyzdžiui, norėdami programuoti MCP2515 CAN valdiklį, naudojame modifikuotą MCP_CAN bibliotekos versiją, skirtą Arduino, kurią sukūrė Cory Fowler, ty panaudojame jo žinias ir pastangas savo projektui.
  • Nepaisant to, verta skirti laiko suprasti SPI programavimą pagrindiniu lygiu. Pavyzdžiui, espBerry turi SPI signalus, susietus taip, kaip parodyta čia:

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-16 pav.

  • Šie nustatymai turi būti taikomi programos kode. Norėdami sužinoti daugiau apie SPI programavimą naudojant ESP32, žr. šiuos šaltinius:

Nuosekliojo prievado (UART) programavimas

  • EspBerry priskyrėme IO15 kaip Rx ir IO16 kaip Tx, kurie yra prijungti prie GPIO16 ir GPIO20 40 kontaktų antraštėje.
  • ESP3 DevKit pasirinkome nenaudoti standartinių RX/TX (GPIO1/GPIO32) signalų, nes jie dažnai naudojami bandomiesiems spaudiniams per Arduino IDE serijinį monitorių. Tai gali trukdyti ryšiui tarp ESP32 ir RPi HAT. Vietoj to turite susieti IO16 kaip Rx ir IO15 kaip Tx pagal programinę įrangą.

    espBerry-ESP32-Development-Board-su-Raspberry-Pi-GPIO-17 pav.

  • Aukščiau pateiktas kodas reiškia programą, pvzample naudojant Serial1.
  • Dirbdami su ESP32 pagal Arduino IDE, pastebėsite, kad Serial komanda veikia puikiai, bet Serial1 ir Serial2 ne. ESP32 turi tris aparatinės įrangos nuosekliuosius prievadus, kuriuos galima susieti su beveik bet kokiu kaiščiu. Kad Serial1 ir Serial2 veiktų, turite įtraukti HardwareSerial klasę. Kaip nuorodą žr ESP32, Arduino ir 3 nuoseklieji aparatūros prievadai.
  • Taip pat žiūrėkite mūsų įrašą espBerry projektas: ESP32 su CH9102F USB-UART mikroschema, skirta serijos greičiui iki 3Mbit/s.

APIE ĮMONĘ

Dokumentai / Ištekliai

espBerry ESP32 plėtros plokštė su Raspberry Pi GPIO [pdf] Naudotojo vadovas
ESP32 kūrimo plokštė su Raspberry Pi GPIO, ESP32, kūrimo plokštė su Raspberry Pi GPIO, plokštė su Raspberry Pi GPIO, Raspberry Pi GPIO

Nuorodos

Palikite komentarą

Jūsų el. pašto adresas nebus skelbiamas. Privalomi laukai pažymėti *