C language for embedded systems - KAIN5M13

Informations générales

  • Number of hours

    • Lectures 9.0
    • Projects -
    • Tutorials 9.0
    • Internship -
    • Laboratory works 15.0
    • Written tests 3.0

    ECTS

    ECTS 0.5

Goal(s)

Mastery of the C language, especially for "low level" programming (close to the system and the hardware).

Content(s)

  • Survey of basic notions (conditional and iterative statements, I/O, functions, arrays).
  • Types in C (arithmetic, characters, strings) and their encoding.
  • Arrays and pointers (memory management, parameter passing, arithmetic on addresses,...).
  • More on strings.
  • Modular programming and compiling, Makefile; creation of libraries.
  • Bitwise operators.
  • Structures and linked lists (creation, destruction, management).

Prerequisites

Beginner level in C (basic syntax, conditional and iterative instructions, conversational inputs / outputs, functions, tables).

Calendar

The course exists in the following branches:

  • Curriculum - INFO - Semester 5

Additional Information

Course ID : KAIN5M13
Course language(s): FR

You can find this course among all other courses.

Bibliography

  • Langage C
    • "Programmer en langage C", Claude Delannoy, Eyrolles.
    • "C: langage, bibliothèque, applications", Henri Garreta, InterEditions.
    • "Le langage C - Norme ANSI", B.Kernighan et D.Ritchie, Dunod.
    • "Managing projects with GNU Make", Robert Mecklenburg, O'Reilly.
  • Exécution sur Carte Nucleo
    • Marc Laury, À la découverte des cartes Nucleo, Eyrolles, 2017
    • Documentations disponibles sur le site du constructeur ST Microelectronics
      • PM0214 Cortex-M4 Programming manual
      • RM390 STM32F446 Reference manual + STM32F446xC/E Datasheet
      • UM1724 STM32 Nucleo-64 board User manual