Departamentos

Mais informações da Oferta

PRACTICE STM32 MICROCONTROLLER WITH DMA PROGRAMMING DEMYSTIFIED – ARM CORTEX-M: Dummy Example Code, Data Transfer Using ARM and DMA, STM32 NUCLEO, ADC - DMA and More (English Edition)

✔It's really important to understand the master slave communication in the microcontroller architecture. Here in this project, I will also give a quick introduction to the direct memory access. Now let's say you have a microcontroller which is running with let's say ARM Cortex M4 processor or any ARM processor. And let's say you also have one peripheral let's say ADC which is connected to the main bus of the microcontroller, and the processor is also connected to the main bus. that's how they communicate. isn't it? now let's say ADC is a peripheral and its job is to digitize the analog signal. Isn't it? which is given as input.


✔And when you trigger the operation what happens. It starts calculating, digitizing the data, and when the operation completes it will have its own register called data register and there it will store the value. Isn't it? let's say that value is AA. now the peripheral is ready with the data. Right? So now, what's the use? If this data is with the peripheral it has to be moved to the memory .Isn't it? what you do? you write some instructions in order to copy that data from the peripheral into the memory. Right? what ARM does? it actually executes a you know load instruction. Right? In order to read this data from this memory location that is every data registers so every register of the peripheral will be having its own address.


✔ Isn't it? it use the load instruction in order to read the data from the peripheral into the internal register. Right? Internal registers of the processor then, It is like this path, it goes to the processor register and then it comes to the memory. Isn't it? that's the path. Now, let me just erase this. that's the path. Now, here you can ask one question.

✔Why that path is required? Why can't the ADC anyway disconnected to the bus. This memory is also connected to the bus. Then why can't the ADC just push that data into the memory. Why it should go all the way through the processor? that's a valid question. Isn't it? Now, the answer for that question is it's not possible. Because, even though the ADC is connected to the bus, the ADC doesn't come with that intelligence in order to generate lots of bus transactions and the control signals that are involved in order to move data from one location to another.

Mais sobre este produto