Certificate Authentication

Advanced Arduino Programming - Bespoke Certificate for Lu Yunn

Add to LinkedIn

Certificate ID: 
798487
Authentication Code: 
e3021
Certified Person Name: 
Lu Yunn
Trainer Name: 
Roderick Heydon
Duration Days: 
3
Duration Hours: 
21
Course Name: 
Advanced Arduino Programming - Bespoke
Course Date: 
10 February 2025 08:30 to 12 February 2025 15:30
Course Outline: 

Review of Basics

  • Why You Should Consider Advanced Arduino Programming:
    • Benefits of advanced skills for complex projects and innovation
  • Recap of Arduino Basics
    • Pin modes, digital and analog I/O, serial communication
  • Development Environments
    • Understanding the Arduino IDE and exploring alternative environments like PlatformIO in VSCode
  • Overview of Arduino-Compatible Boards:
    • Mega Family, Arduino PRO, ESP32 boards
  • Arduino Programming Syntax and Control Flow:
    • Review of essential syntax and control structures

Communication Protocols

  • I2C and SPI:
    • Understanding and implementing I2C and SPI communication
    • Master-slave configuration and handling multiple devices
  • Serial Communication:
    • Advanced UART communication techniques
    • Wireless communication: Bluetooth and Wi-Fi using modules like ESP32

I/O and Peripherals

  • Storage Interfaces:
    • Interfacing with SD-CARD for data storage
    • Using EEPROM and Flash memory for non-volatile storage
  • Display Interfaces:
    • Interfacing with LCD, OLED, and TFT displays
  • Touch Interfaces:
    • Using touchscreens (resistive and capacitive)
    • Interfacing with touch sensors and touch panels

Real-Time Systems and Interrupts

  • Interrupts:
    • Configuring and using hardware and software interrupts
    • Debouncing and managing interrupt-driven events
  • Timers and Scheduling:
    • Using built-in timers and creating custom timer functions
    • Introduction to real-time operating systems (like FreeRTOS) and task scheduling

Libraries and Frameworks

  • Third-Party Libraries:
    • Utilizing and integrating third-party libraries
    • Modifying and creating custom libraries

Networking and IoT

  • Networking Basics:
    • Setting up and using Ethernet and Wi-Fi shields
    • Understanding network protocols: HTTP, MQTT, WebSocket

Debugging and Testing

  • Debugging Techniques:
    • Using the serial monitor
    • Advanced debugging tools: JTAG/SWD
    • Using logic analyzers and oscilloscopes for hardware debugging
  • Testing:
    • Writing and running unit tests
    • Utilizing automated testing frameworks

MATLAB Support Package for Arduino

  • Integrating MATLAB with Arduino:
    • Getting Started with MATLAB Support Package for Arduino Hardware
    • Setup and Configuration
    • Control Peripherals Using the Arduino Explorer App
    • Communicate with I2C Device on Arduino Hardware
    • Communicate with SPI Device on Arduino Hardware

Summary and Closing Remarks

  • Course Recap:
    • Review of key concepts covered in the course