43 HAL_StatusTypeDef
Start(ADC_HandleTypeDef* adc_handle, uint32_t* buffer,
44 uint32_t sample_count,
size_t buffer_size);
52 HAL_StatusTypeDef
Stop(ADC_HandleTypeDef* adc_handle);
57 struct alignas(32) StateBlock
59 DMA_NodeTypeDef node{};
60 DMA_QListTypeDef queue{};
61 DMA_QListTypeDef* original_queue =
nullptr;
63 static_assert(offsetof(StateBlock, node) == 0U);
65 void BuildAndAttach(ADC_HandleTypeDef* adc_handle, uint32_t* buffer,
66 uint32_t sample_count,
size_t buffer_size);
67 static void FinalizeStopped(DMA_HandleTypeDef* dma_handle);
HAL_StatusTypeDef Start(ADC_HandleTypeDef *adc_handle, uint32_t *buffer, uint32_t sample_count, size_t buffer_size)
挂接循环链表并启动 ADC DMA / Attach the circular list and start ADC DMA.