我在进行adc采样时开启pwm adc采集到的数据会被拉大不知道是什么原因有人能指点一下么
- /**
- * @brief 获取12位ADC值
- * @param 无
- * @note 无
- * @retval uint16_t
- */
- uint16_t GetAdc12Bit(uint32_t channel)
- {
-
- ADC1->CR |= (1 << 4); // 停止 ADC
- ADC1->CHSELR = (1 << channel); // 选择通道
- ADC1->CR |= (1 << 0); // 使能 ADC
- ADC1->CR |= (1 << 2); // 启动 ADC, 同HAL_ADC_Start();
-
- // delay_us(500); // 等待电压稳定
- HAL_Delay(1);
- Heart_C210(0);
- while (!(ADC1->ISR & ADC_ISR_EOC))
- ; // 等待转换完成,同HAL_ADC_PollForConversion();
-
- if (heat936==1)
- {
- Heart_C210(pid.output);
- }
-
- return ADC1->DR; // 返回采样值,同HAL_ADC_GetValue();
- }
复制代码
|