Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench

System Workbench for STM32


HAL equivalent for ADC_DMARequestAfterLastTransferCmd() in std_periph

I am working with the STM32 Nucleo-F401RE board trying to perform ADC reads from a CCD line sensor, which have to be performed at a rate close to the possible maximum for the MCU. I have a example firmware doing exactly what I want on the discovery board I use 1.

Unfortunately, this firmware seems to be written using the std periph library, while any I would prefer using HAL. My issue is that I cannot find a proper replacement for ADC_DMARequestAfterLastTransferCmd(), which seems to play an integral role in setting up the DMA. I can’t find proper documentation on what exactly it does, so, the following problem keeps bugging me:

Questions:

What precisely is this function doing? The name (and some rudimentary documentation) indicate it would be a setting to schedule DMA requests. But I could not translate this to low-level actions.

What would be the replacement function in HAL? If not, how could I create a manual implementation?

1: Firmware for reading TCD1304 with stm32-nucleo-f401re Question