Get in Touch

Course Outline

An overview of C language standard evolution: C90, C99, C11/C17, and C2x – highlighting new features. Topics include source and header files, fundamental data types and their applications, storage classes and attributes such as const, volatile, static, restrict, inline, and others. Guidelines for using the preprocessor, distinguishing between macros and inline functions, coding conventions, and features pertinent to embedded development. Additionally, the course covers program sections and memory management.

Programming techniques focused on avoiding unnecessary type conversions and minimizing variable scope and range. An introduction to the ARM Cortex-M core series, a comprehensive overview of the STM32 microcontroller family, and a review of the hardware utilized in the practical exercises.

Practical Exercises:
1. Understanding firmware structure, utilizing data types and attributes, and addressing common pitfalls and errors in GPIO programming.
2. Applying the const attribute to strings and implementing UART communication.
3. Working with ADC and multiplexed LED displays using fixed-point arithmetic and state machines, including hardware-accelerated display refresh via DMA.
4. Optional topic selected by attendees: driving multiplexed displays, implementing software-triggered interrupts, or routing the C stdout stream to a physical interface.

 7 Hours

Testimonials (2)

Related Categories