PROGRAM OF THE COURSE ===================== The course is available in two versions - 6 cfu: part I and II - 9 cfu: all the three parts Part I: MCU ----------- Introduction to microcontrollers and their development systems. HW of the MCUs and their main peripherals. Lab activity: examples of typical applications of MCUs in embedded systems. Part II: RTOS and embedded linux for embedded systems ----------------------------------------------------- FreeRTOS - Task management - Queues management - Interrupts - Resources management - Software timer - Event groups - Notification - Memory management - Troubleshooting Embedded linux - Introduction to Linux embedded - Linux architecture - Yocto project and toolchain Part III: High speed PCB design and instrumentation control ----------------------------------------------------------- This module focuses on some fundamental aspects of development and control of electronic instrumentation. In the first part the main techniques of "high speed" boards (PCB - Printed Circuit Bard) design will be described and some emblematic cases will be addressed. Starting from the electronic schematics, professionals in the sector will teach which are the steps to get to the files necessary to produce a PCB. Professional software (Altium Design) will be used and at the end of this section the students will have all the skills to make multi-layer PCB, in particular focusing on "high speed" and RF circuits. The second part of the module will deal with the issue of instrumentation control, data acquisition and data processing. We will start by giving the basics of the most used language for the management of scientific instrumentation (LabVIEW - the course is in fact equivalent to a "LabVIEW Base 1 course" of National Instruments and is taught by professionals certified as "NI developers") and a level will be reached for which students will be able to control and acquire data from various instruments (oscilloscopes, function generators, multimeters, power supplies etc, which will be made available) through the main communication methods (RS232, GPIB, Ethernet Socket TCP/IP, UDP, VXI-11). INFORMATION ABOUT THE EXAM ========================== Main information is available in the course syllabus. Further info about part I ------------------------- As in any exam, questions are related to what has been explained in the classroom, so for this part of the course they might be about e.g. - (STM32CubeMX) the setup of a pin for a given task - (STM32CubeIDE) the use of a HAL for a given task - the use of a NUCLEO-H7A3 for a given task - e.g., the use of an external peripheral - an example of use of uVision or VS Code - ... Consequently, - students are requested to have their own PC with the necessary s/w - installation and setup of the necessary s/w are considered a fondamental part of this exam - the teacher will provide, if needed, - MCU board (with USB cable) - breadboard, wires, external peripherals, discrete components... As written in the syllabus, students may choose this part of the course for the "small project"; this activity is intented to be worth a couple of days of work. For these students, the first question will be a presentation/demonstration of the developed small project. Students who do not prepare the small project for this part of the course are suggested to prepare a "very small project" (something worth a couple of hours of work), e.g. - the use of a HAL not seen in the classroom - the use of a peripheral not seen in the classroom - ... In this case, the first question will be a presentation/demonstration of the developed very small project. The exams take place in lab. Zoldan (C2 building, first floor).