Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
ESP32 Lesson Season 01
Rating: 4.2 out of 5(31 ratings)
331 students

ESP32 Lesson Season 01

ESP32 SDK Periperals Driver Development
Created byHUI HU
Last updated 11/2019
English
English [Auto],

What you'll learn

  • ESP32 basic hardware knowledge
  • ESP32 SDK Compile Environment Setup
  • ESP32 Periperals Driver development: Uart, GPIO, Interrupt, Timer, DAC, ADC, I2C, SPI, SDCard, I2S etc.

Course content

1 section20 lectures7h 58m total length
  • Feature Review22:59

    Explore the ESP32 feature review: a low-power wifi and bluetooth combo chip offering up to 150 Mbps, with adc, dac, touch sensors, and multiple high-speed interfaces.

  • Minimum System8:40

    Explore the ESP32 minimum system: a simple reference design featuring a power supply, 40 megahertz crystal, and io interfaces, enabling a compact wifi and bluetooth hardware setup.

  • Setup compile environment18:40

    Set up the ESP32 compile environment by downloading the IDF framework, obtaining the project source from GitHub, and configuring the Windows build path; use a Linux-like terminal for testing.

  • Hello World28:50

    Set up and compile a minimal ESP32 hello world project using a Linux-style make system and menuconfig to generate the build and sdk config, and flash.

  • GPIO LED18:37

    Explore ESP32 gpio control by blinking a led, setting direction and high/low levels, then compile and flash the blink example.

  • GPIO Interrupt20:06

    discover how to configure and use a gpio interrupt on an ESP32, including setting input pins, enabling the interrupt, and implementing the interrupt handler with hardware testing.

  • Timer19:22

    Learn to use an ESP32 timer to wake from sleep, configure timer groups, and handle timer events via an interrupt and a main task queue.

  • UART26:08

    Explore the ESP32 UART interface for MCU communication, including bootloader trace data, multi UART configuration (uart0, uart1, uart2), and practical send/receive tasks with a USB-to-UART connection.

  • DAC15:43

    Learn how the ESP32 DAC converts digital signals to analog outputs, drives a speaker, and configures DAC channels and voltage range on a 3.3V supply, with code setup and testing.

  • ADC29:06

    Learn how to calibrate the ESP32 ADC using two-point or reference-based curves, understand attenuation and measurement ranges, and convert ADC readings to wattage for battery/energy monitoring.

  • I2C24:38

    Master I2C communication on an ESP32 with an accelerometer by reading and writing registers. Verify the setup using the correct slave address and the who am i value of 0x69.

  • I2C Further Discussion17:11
  • I2C LSM6DS3 Sensor Full Function Coding42:28

    Master i2c lsm6ds3 sensor full function coding on esp32 by initializing the sensor, reading accelerometer and temperature data, and using the standard c driver interface with practical example code.

  • Integrate I2C OLED Original Driver44:55

    Integrate the I2C OLED original driver into the ESP32 project by adapting the interface and writing data via start and stop sequences to display english and chinese text.

  • Drive I2C OLED By u8g2 GUI Library22:23

    Drive an I2C OLED on ESP32 using the u8g2 GUI library, from downloading and integrating the library into ESP-IDF to testing graphics like circles and text.

  • SPI21:43

    Explore how to use the SBI interface to communicate with a sensor (accelerometer and gyroscope) on the ESP32, including bus setup, chip-select handling, and reading the device ID.

  • SDCard13:29

    Explore the ESP32 SD card interface using the SBI API module, mounting a filesystem and reading and writing a text file with fopen and fclose.

  • NVS30:32

    Explore how the ESP32 NVS stores key-value data across restarts, saving integers, strings and binary data, with a 4000-byte string limit, using open, get, set, and commit.

  • I2S 01 --- I2S Protocol and ESP32 I2S interface18:46

    Explore the i2s protocol and the ESP32 i2s interface, including bit clock, word select, and data lines, and how i2s supports audio, camera, and lcd with dma and interrupts.

  • I2S 02 --- Drive Speaker by Internal DAC34:31

    Drive a speaker with the ESP32 using I2S and the internal DAC, showcasing simple audio playback. Generate wav headers with a Python script and update the IDF compiler.

Requirements

  • Basic C knowledge

Description

This season will cover three aspects of ESP32 wifi chip software development:

(1) ESP32 basic hardware knowledge;

(2) ESP32 SDK Compile Environment Setup;

(3) ESP32 Periperals Driver software development: Uart, GPIO, Interrupt, Timer, DAC, ADC, I2C, SPI, SDCard, I2S etc.


This season is the first part of the ESP32 development lesson series. It mainly takes the ESP32 as a regular Microcontroller to demo how to control other sensors or MCU.


Who this course is for:

  • ESP32 developers
  • Wifi developers