 Okay, now we can stop looking into the theory a little bit less and we now start with the more practical stuff to allow us to work more with the library. We will also return to this theoretical stuff during our handzones, because I prefer more to show this theory on the practical stuff, because it gives you better visibility of how this works. Okay, we start with the hardware IPs, usually these IPs are always present and they are common for the all STM32s, then if you don't know them, then you will use them for the all STM32s. Okay, the system profiles, we will look on this, because it's good to first test everything also on your own, not only talk about the theory. I will go also through this theory later on, but I think it's good to first talk a little bit about the theory and then go to the handzones we talked before about the structure. Now we look on the one part of the structure on the system profiles diverse, which are hidden, few profiles which are common for the all STM32s. Then if you know this periphery one time, it will be common for the all STM32s. Then the peripherals, which are there hidden is definitely the GPO. You know that we worked with the GPO before in the first our test lab, which was the GPO toggle. GPO is the general purpose input-output pathway, then the RCC, the asset and clock control is always necessary and always present. You cannot disable this pathway. The DMA, the direct memory access, which is the supporting pathway, which can easy the life for us for the transfer of the data from the one part of the microcontroller to the second destination. Then definitely fixed part of our microcontroller is the core, the core text core. In our context, we will talk about the NVIC, which is the nested vector interrupt controller. This pathway handle all interrupts and the SysTick timer and your APIs. And last system pathway more than less is the power management pathway, the PWR, which also contains some useful functionalities. This pathway is always good to know because usually you always use them. The first, I will start with the asset and clock control. Only very simple, because also asset and clock control can be more complicated. We will go through this little bit later. Maybe from the CUPE mix you remember the clock configuration. And I also explain you how this clock configuration inside the CUPE mix in the graphical tool. It's reflected in our project in case, in also case that you want to create your clock configuration on your own. Yes, the functions, usually the functions are hidden in the HL library in which ends with the C in the C files. And we also have some macros, which are very basic functionalities for which is not necessary to have the function, because it will be more than less the waste of the time. Or you using this macros so often that it saved the performance for you, then it's better to have them in the H file. And in case that you are searching for the functionality, you can search in the .c file if there is the function. And also you can look into the header file if there is the equivalent of the macros. The RCC. What is our interest now? Because all pay files which we want to use require the clocks. You definitely can select the clock, which we do before in the graphical tool. The clock source, the dividers, the multipliers, the PLL circuit. And definitely this is very important. But also all the pay files need the clock. And you need to enable the clock to the pay files. This must be done manually. If the pay files don't have the clock, we cannot change the registers. And on the end we cannot configure the pay file. For this we need first to enable the clocks into this pay file, which allow us to change the registers and configure this pay file. For this in the RCC.h file you can, for example, find very, very basic macros, which allow us to enable the clocks for the pay file, disable the clocks for the pay file, reset the pay file into default state, and also the erase reset, which means that stop resetting the pay file. These are the macros. We before, in the previous library, we used the functions for this, but I must say the function was a little bit bigger and used for this the macros seems the more effective way in case that using the low power is only example of the macros. You see that the macros are based on the direct register access and I think more macros for the reset. Okay, definitely if you are interesting in the macros, we can look into the h file to see what is hidden under the macros.