MC Programming & Interfacing Training Course
Topics
BASIC Level
1. Basic Digital Logic Concepts
1.1 Basic Digital Logic Electronics
1.2 Digital Representation in Electronic Circuits
2. Introduction to ESP32 Architectures
3. ESP32 I/O Pin Descriptions
3.1 General I/O Pins
3.2 I/O Pin Naming
3.3 Bootstrapping Pins
3.4 ESP32-BaseBoard
4. C Programming with ESP32 in Arduino IDE
4.1 Addition of ESP32 hardware support into Arduino IDE
4.2 Data Types in Arduino C Language
4.3 C++ Object
4.4 Library Concepts
4.5 Program Structure in Arduino C (setup () & loop ())
INTERMEDIATE Level
5. Interfacing via I2C
5.1 I2C Interfacing Structure
5.2 I2C Address
5.3 Interface with I2C Device using Library
5.4 Interface with I2C Device using Program Coding
6. Interfacing via 1-Wire Interface
6.1 1-Wire Interfacing Structure
6.2 1-Wire Device ID & Index
7. Analog and Digital Input and Output
7.1 Analog vs. Digital Values
7.2 Digital Representation of Analog Values
7.3 ESP32 Input and Output
7.4 Analog-to-Digital Conversion using ESP32 ADC
7.5 Analog-to-Digital Conversion using ADS1115
7.6 Digital-to-Analog Conversion
8. Expanding Input and Output in ESP32
9. Controlling External I/O Devices
9.1 Pulse-Width Modulation (PWM)
9.2 Servo
ADVANCED Level
10. Interfacing via SPI
10.1 SPI Interfacing Structure
10.2 Graphic Display
10.3 Touchscreen
10.4 RFID Card Reader
11. Data Storage in ESP32
11.1 SPIFFS
11.2 SD Card
11.3 SD Card/SPIFFS File Operations
11.4 Ferro-Electric RAM (FRAM / FeRAM)
11.5 Comparison of Data Storage in ESP32
12. Interfacing via Serial Communications
12.1 Programming Concerns in Serial Communications
12.2 Hardware Serial Devices in ESP32
12.3 Software Serial
13. Wireless Communications in ESP32
13.1 Bluetooth
13.2 WiFi
14. Interrupt
14.1 Simple Call-Return Structure
14.2 Interrupt and Interrupt Service Routine (ISR)
14.3 Interrupt Handling in ESP32
15. ESP32 Memory Storage Structures
15.1 ESP32 Flash Storage Partitions
16. Introduction to Multi-Tasking in ESP32