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