1.说到烟雾传感器,就有必要了解一下ADC的工作原理,Analog-to-Digital Converter,指模拟/数字转换器 。

2. 选择ADC

3.main函数
uint32_t smoke_value = 0;
while (1)
{
HAL_ADC_Start(&hadc1);//启动ADC1转换
HAL_ADC_PollForConversion(&hadc1,50);//等待ADC转换完成
smoke_value = HAL_ADC_GetValue(&hadc1);
//printf("smoke_value = %d \r\n",smoke_value);
printf("smoke_value = %f\r\n",3.3/4096*smoke_value);
HAL_Delay(500);
}
串口助手显示结果

用另外的杜邦线连接A0和GED,可以看到结果为0,实验正确

本文介绍了烟雾传感器工作原理,重点讲解了如何使用ADC进行模拟信号转换,并通过STM32的HAL库实现数据采集。通过串口助手观察到初始值为0,验证了实验的正确性。
2155

被折叠的 条评论
为什么被折叠?



