Рет қаралды 206,452
As we continue the series with STM32, let’s take a look at how to use the analog-to-digital converter (ADC). At first, we set up a single conversion that samples the voltage from a potentiometer and transmits the raw value over UART. We can then read this information on a serial terminal.
We run into problems, however, when we want to sample analog voltages at a much faster rate. So, we introduce the concept of direct memory access (DMA) to help pipe data from the ADC (or any other peripheral) to memory.
We can also use the DMA controller the other way, too. We start by showing an example of reading a large buffer of test data out over UART via DMA. From there, we build a quick demo of filling a circular buffer with ADC readings with the DMA controller. We’ll simply peek at the buffer contents in the STM32CubeIDE debugger to show how the DMA can act without CPU intervention.
WRITTEN TUTORIAL
If you would like to see the steps performed in this video in written form along with the code, please see the tutorial here: www.digikey.co...
ADDITIONAL RESOURCES
Related Projects www.digikey.co...
Download STM32CubeIDE: www.st.com/en/...
STM32 HAL documentation (click on family from graphic and then Resources tab) : www.st.com/en/...
Using the STM32F0/F1/F3/G0/Lx Series DMA Controller: www.st.com/con...
Maker.io: www.digikey.co...
Digi-Key’s Blog - TheCircuit: www.digikey.co...
Connect with Digi-Key on Facebook: / digikey.electronics
And follow us on Twitter: / digikey