- // 初始化ADC和DMA
- HAL_ADC_Start_DMA(&hadc, (uint32_t*)adc_buffer, BUFFER_SIZE);
- void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc) {
- // DMA传输完成时调用
- ProcessADCBuffer();
- }
- void HAL_ADC_ConvHalfCpltCallback(ADC_HandleTypeDef* hadc) {
- // DMA传输到一半时调用
- ProcessADCHalfBuffer();
- }
- void ProcessADCBuffer() {
- // 处理完整的ADC数据缓冲区
- }
- void ProcessADCHalfBuffer() {
- // 处理半缓冲区的数据
- }
|