Serial interfaces in microcontrollers Training Course
The course presents common serial interfaces used in embedded systems and useful practical details of their implementation. The presentation is accompanied by hands-on exercises using STM32 microcontrollers.
Course Outline
UART/USART peripheral, data transfer principles and special symbols.
Transfer errors. RS232 and RS485 electrical standards. Usage of RS232
handshake signals. STM32 USART peripheral capabilities.
SPI and similar interfaces – usage, connection topology, use scenarios.
STM32 SPI implementation.
QSPI and OSPI – characteristics.
I2C characteristics and low-level protocol. STM32 implementation.
Interfacing to memories and sensors.
OneWire interface and its possible implementations in microcontrollers –
software, timer, UART.
WS2812 interface – implementation using PWM timer, SPI, UART.
Requirements
Basic knowledge of C language and microcontroller technology.
Open Training Courses require 5+ participants.
Serial interfaces in microcontrollers Training Course - Booking
Serial interfaces in microcontrollers Training Course - Enquiry
Serial interfaces in microcontrollers - Consultancy Enquiry
Consultancy Enquiry
Testimonials (2)
Sean was a dynamic speaker and the hands-on exercises were very interesting and I can see how they will be really applicable.
Temira Koenig - Yeshiva University
Course - Raspberry Pi for Beginners
The aquisition of useful knowlwdge and clarification of some things I was not sure of peviously.
Kenneth Mahoney - University of Glasgow
Course - Arduino: Programming a Microcontroller for Beginners
Provisional Courses
Related Courses
Advanced Embedded Systems Development
35 HoursThis instructor-led, live training in Poland (online or onsite) is aimed at engineers who wish to learn how to use embedded C to program various types of microcontrollers based on different processor architectures (8051, ARM CORTEX M-3, and ARM9).
Arduino Programming for Beginners
21 HoursIn this instructor-led, live training in Poland, participants will learn how to program the Arduino for real-world usage, such as to control lights, motors and motion detection sensors. This course assumes the use of real hardware components in a live lab environment (not software-simulated hardware).
By the end of this training, participants will be able to:
- Program Arduino to control lights, motors, and other devices.
- Understand Arduino's architecture, including inputs and connectors for add-on devices.
- Add third-party components such as LCDs, accelerometers, gyroscopes, and GPS trackers to extend Arduino's functionality.
- Understand the various options in programming languages, from C to drag-and-drop languages.
- Test, debug, and deploy the Arduino to solve real world problems.
Efficient microcontroller programming in C
7 HoursThe course covers the aspects of modern C language dialects (C99, C11, C2x) related to embedded programming and guidelines for efficient and error-immune programming techniques. The examples/exercises are implemented on STM32 family microcontrollers.
Deploying AI on Microcontrollers with TinyML
21 HoursThis instructor-led, live training in Poland (online or onsite) is aimed at intermediate-level embedded systems engineers and AI developers who wish to deploy machine learning models on microcontrollers using TensorFlow Lite and Edge Impulse.
By the end of this training, participants will be able to:
- Understand the fundamentals of TinyML and its benefits for edge AI applications.
- Set up a development environment for TinyML projects.
- Train, optimize, and deploy AI models on low-power microcontrollers.
- Use TensorFlow Lite and Edge Impulse to implement real-world TinyML applications.
- Optimize AI models for power efficiency and memory constraints.
Microcontroller Design
35 HoursThis instructor-led, live training in Poland (online or onsite) is aimed at engineers who wish to learn the design principles of microcontroller design.
Raspberry Pi for Beginners
14 HoursRaspberry Pi is a very small, single-board computer.
In this instructor-led, live training, participants will learn how to set up and program the Raspberry Pi to serve as an interactive and powerful embedded system.
By the end of this training, participants will be able to:
- Set up an IDE (integrated development environment) for maximum development productivity
- Program Raspberry Pi to control devices such as motion sensor, alarms, web servers and printers.
- Understand Raspberry Pi's architecture, including inputs and connectors for add-on devices.
- Understand the various options in programming languages and operating systems
- Test, debug, and deploy the Raspberry Pi to solve real world problems
Audience
- Developers
- Hardware/software technicians
- Technical persons in all industries
- Hobbyists
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Note
- Raspberry Pi supports various operating systems and programming languages. This course will use Linux-based Raspbian as the operating system and Python as the programming language. To request a specific setup, please contact us to arrange.
- Participants are responsible for purchasing the Raspberry Pi hardware and components.
Tensorflow Lite for Microcontrollers
21 HoursThis instructor-led, live training in Poland (online or onsite) is aimed at engineers who wish to write, load and run machine learning models on very small embedded devices.
By the end of this training, participants will be able to:
- Install TensorFlow Lite.
- Load machine learning models onto an embedded device to enable it to detect speech, classify images, etc.
- Add AI to hardware devices without relying on network connectivity.
USB Device programming with STM32CubeIDE
7 HoursThe course presents the basic aspects of USB device programming and the practical use of STM32CubeIDE for USB device firmware design.