学习目标
- 开始采样
- 等待转换完成
- 按照序列顺序获取采样结果。
编码实现
/* USER CODE BEGIN WHILE */
while (1)
{
HAL_ADC_Start(&hadc1);
if(HAL_OK == HAL_ADC_PollForConversion(&hadc1, HAL_MAX_DELAY)) {
uint16_t value = HAL_ADC_GetValue(&hadc1);
float temperature = ((1.4 - 3.3 * value / 4096 )/ 4.4) + 25;
printf("temp: %d %f\r\n", value, temperature);
value = HAL_ADC_GetValue(&hadc1);
float vol = 3.3 * value / 4096;
printf("vol: %d %f\r\n", value, vol);
}
HAL_Delay(1000);
/* USER CODE END WHILE */
练习题
- 使用ADC采样温度和电位器