- Vereiste materialen:
- Hardware-informatie van ESP32:
- Programmering van de ESP32
- Uw Arduino IDE voorbereiden:
- ESP32 programmeren met Arduino IDE:
Internet heeft via smartphones bijna elke portemonnee bereikt, naar schatting gebruiken ongeveer 3,2 miljard mensen internet, maar verrassend genoeg gebruiken ongeveer 8,4 miljard apparaten internet. Dat wil zeggen dat elektronische apparaten meer dan twee keer van de mensen die internet gebruiken met internet zijn verbonden, en het maakt de dingen om ons heen elke dag slimmer. De belangrijkste reden is de opkomst van Internet of Things, beter bekend als IOT, en er wordt ook geschat dat we tegen het einde van 2020 20,4 miljard apparaten op internet zullen hebben. Dus het is tijd om je aan te passen en onze mouwen op te steken om met IOT-projecten te werken als we deze ontwikkeling willen bijhouden, gelukkig hebben de open source-platforms zoals Arduino en Espressif Systems het ons een stuk gemakkelijk gemaakt.
Espressif Systems lanceerde de ESP8266-01 lang geleden, die deuren opende voor veel hobbyisten om in de wereld van IOT te komen, sindsdien heeft de gemeenschap zich sterk ontwikkeld en zijn er veel producten op de markt verschenen. Nu heeft de lancering van ESP32 Espressif de zaken naar een nieuw niveau getild. Deze kleine goedkope 8 $ -module is een dual-core 32-bit CPU met ingebouwde Wi-Fi en dual-mode Bluetooth met voldoende hoeveelheid 30 I / O-pinnen voor alle basiselektronicaprojecten. Al deze functies zijn heel gemakkelijk te gebruiken, omdat ze rechtstreeks vanuit de Arduino IDE kunnen worden geprogrammeerd. Spannend genoeg… Dus laten we diep graven om aan de slag te gaan met de ESP32.
Vereiste materialen:
- ESP32-module
- Arduino IDE
- Programmeerkabel (micro-USB-kabel)
- De zielsteen van MCU (grapje)
Hardware-informatie van ESP32:
Laten we eens kijken naar de ESP32-module. Het is iets groter dan de ESP8266-01-module en is breadboard-vriendelijk omdat de meeste pin-headers zijn uitgebroken als I / O-pinnen naar elkaar toe gericht zijn, wat geweldig is. Laten we het bord in kleine stukjes breken om het doel van elk segment te kennen
Zoals je kunt zien, is het hart van de module de ESP-WROOM-32, een 32-bits microprocessor. Het heeft ook een aantal knoppen en LED's die hieronder worden uitgelegd.
Micro-USB-aansluiting: De micro-USB-aansluiting wordt gebruikt om de ESP32 via een USB-kabel op onze computer aan te sluiten. Het wordt gebruikt om de ESP-module te programmeren en kan ook worden gebruikt voor seriële foutopsporing omdat het seriële communicatie ondersteunt
EN-knop: De EN-knop is de resetknop van de ESP-module. Als u op deze knop drukt, wordt de code die op de ESP-module wordt uitgevoerd, gereset
Boot-knop: Deze knop wordt gebruikt om het programma van Arduino naar de ESP-module te uploaden. Het moet worden ingedrukt nadat je op het uploadpictogram op de Arduino IDE hebt geklikt. Wanneer de Boot-knop samen met de EN-knop wordt ingedrukt, gaat ESP naar de modus voor het uploaden van firmware. Speel niet met deze modus, tenzij u weet wat u doet.
Rode LED: De rode LED op het bord wordt gebruikt om de stroomtoevoer aan te geven. Het licht rood op wanneer het bord wordt gevoed.
Blauwe LED: de blauwe LED op het bord is verbonden met de GPIO-pin. Het kan worden in- of uitgeschakeld door middel van programmeren. In sommige Chinese gekloonde borden zoals de mijne, kan deze led ook rood zijn.
I / O-pinnen: hier heeft een grote ontwikkeling plaatsgevonden. In tegenstelling tot ESP8266 hebben we op ESP32 toegang tot alle I / O-pinnen van de module via de uitbreekpinnen. Deze pinnen zijn geschikt voor digitaal lezen / schrijven, analoog lezen / schrijven, PWM, IIC, SPI, DAC en nog veel meer. Daar zullen we later meer op ingaan. Maar als u geïnteresseerd bent, kunt u dit leren via de pinbeschrijving op ESP32 Datasheet.
ESP-WROOM-32: Dit is het hart van de ESP32-module. Het is een 32-bit microprocessor ontwikkeld door Espressif systems. Als u meer een technisch persoon bent, kunt u de ESP-WROOM-32 Datasheet lezen. Ik heb hieronder ook enkele belangrijke parameters opgesomd.
ESP32 |
|
Specificatie |
Waarde |
Aantal aders |
2 |
Architectuur |
32 beetje |
CPU-frequentie |
|
Wifi |
JA |
Bluetooth |
JA |
RAM |
512 KB |
FLASH |
16 MB |
GPIO-pinnen |
36 |
Communicatieprotocollen |
SPI, IIC, I2S, UART, CAN |
ADC-kanalen |
18 kanalen |
ADC-resolutie |
12-bits |
DAC-kanalen |
2 |
DAC-resolutie |
8-bits |
Voorlopig is dit alle informatie die we over de hardware moeten weten. We zullen dieper ingaan op de verschillende projecten die de ESP32 gebruiken.
Programmering van de ESP32
Zoals eerder in deze tutorial vermeld, gaan we de ESP32 programmeren met behulp van de Arduino IDE, omdat deze een sterke community-ondersteuning heeft. Maar u kunt de ESP32 ook programmeren met andere software van de ESP Toolchain.
In deze tutorial wordt ook alleen uitgelegd hoe u aan de slag gaat met het Windows-platform. Als u van andere platforms komt, volgt u de onderstaande links
- Instructies voor Mac
- Instructies voor Debian / Ubuntu Linux
- Instructies voor Fedora
- Instructies voor openSUSE
Uw Arduino IDE voorbereiden:
STAP 1: Laten we beginnen. De eerste stap zou zijn om de Arduino IDE te downloaden en te installeren. Dit kan eenvoudig worden gedaan door de link https://www.arduino.cc/en/Main/Software te volgen en de IDE gratis te downloaden. Als je er al een hebt, zorg er dan voor dat deze van de laatste versie is.
STAP 2: Ga vervolgens naar deze link om GIT te downloaden, en een download zal automatisch beginnen met de naam "Git-2.16.2". Wacht tot het downloaden is voltooid.
STAP 3: Zodra de download is voltooid, opent u het exe-bestand om GIT op uw computer te installeren. Klik gewoon op Volgende voor alle opties zonder iets te wijzigen om door te gaan met de installatie.
STAP 4: Zoek naar de naam "GIT GUI" om degene te vinden die we zojuist hebben geïnstalleerd. Open GIT bash niet. Standaard wordt GIT GUI geïnstalleerd op station C onder de map Program Files
STAP 5: Start de GIT GUI-applicatie. Selecteer vervolgens " Afsluiten repository klonen ".
STAP 6: Het volgende venster verschijnt waarin u het volgende moet doen.
Plak onder Bronlocatie: https://github.com/espressif/arduino-esp32.git
Onder Doeldirectory Plakken: / hardware / espressif / esp32
is te vinden door op Bestand -> Voorkeuren op de Arduino IDE te klikken
De mijne is C: / Users / Aswinth / Documents / Arduino , dus mijn doeldirectory is C: / Users / Aswinth / Documents / Arduino / hardware / Espressif / esp32 . Eenmaal geplakt zag mijn scherm eruit zoals hieronder getoond
STAP 7: Nadat u de juiste locatiepaden heeft gecontroleerd, klikt u op clone en u krijgt het volgende scherm.
STAP 8: Zoek nu opnieuw naar " Git Bash " en open het. U krijgt het volgende venster.
STAP 9: Typ nu " cd" en plak hier uw doelmap opnieuw. De mijne zag er als volgt uit na het plakken. Druk dan op Enter.
STAP 10: Plak nu git submodule update --init –recursive en druk op enter om het volgende scherm te krijgen.
STAP 11: Open nu “/ hardware / espressif / esp32 / tools” en dubbelklik op het bestand get.exe . Wacht tot het proces is voltooid. Eenmaal voltooid, zou u de volgende bestanden in de directory moeten zien
Dat is het, nu is onze Arduino IDE klaar om met ESP32 te werken. Laten we doorgaan en kijken of het werkt.
ESP32 programmeren met Arduino IDE:
STAP 1: Verbind uw ESP32-kaart met uw computer via de micro-USB-kabel. Zorg ervoor dat de rode LED hoog op de module gaat om stroomtoevoer te garanderen.
STAP2: Start de Arduino IDE en ga naar Tools -> Boards en selecteer ESP32Dev board zoals hieronder getoond
STAP 3: Open apparaatbeheer en controleer op welke com-poort uw ESP32 is aangesloten. De mijne is aangesloten op COM 8 zoals hieronder weergegeven
STAP 4: Ga terug naar Arduino IDE en selecteer onder Tools -> Port de poort waarmee uw ESP is verbonden. Eenmaal geselecteerd, zou je zoiets in de linker benedenhoek van de IDE moeten zien.
STAP 5: Laten we het Blink-programma uploaden om te controleren of we onze ESP32-module kunnen programmeren. Dit programma moet de LED laten knipperen met een interval van 1 seconde.
int LED_BUILTIN = 2; leegte setup () {pinMode (LED_BUILTIN, OUTPUT); } void loop () {digitalWrite (LED_BUILTIN, HIGH); vertraging (1000); digitalWrite (LED_BUILTIN, LOW); vertraging (1000); }
Het programma lijkt erg op de Arduino-knippercode, daarom leg ik ze niet in detail uit. Maar een verandering is dat hier in ESP32 de LED aan boord is verbonden met pin nummer 2, terwijl hij voor Arduino zal worden aangesloten op pin nummer 13.
STAP 6: Om de code te uploaden, klik je gewoon op uploaden en je zou de Arduino-console het volgende moeten zien geven als alles werkt zoals verwacht.
Opmerking: voor sommige modules moet u tijdens het uploaden de Boot-knop ingedrukt houden om fouten te voorkomen.
Dat is het, we hebben met succes de eerste code geüpload naar ons ESP32-bord. Mijn module met knipperende LED wordt hieronder weergegeven
U kunt doorgaan en de andere voorbeeldprogramma's die beschikbaar zijn via Bestand -> Voorbeeld -> ESP32 proberen om met andere functionaliteiten van de ESP32 te werken. Als u problemen heeft gehad om dit werk te krijgen, kunt u de vraag in de commentaarsecties hieronder plaatsen. U kunt ook het forum gebruiken voor technische hulp.