基于STM32的烟雾传感器

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

基于STM32的烟雾传感器_第1张图片

2. 选择ADC

基于STM32的烟雾传感器_第2张图片

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);
  }

串口助手显示结果

基于STM32的烟雾传感器_第3张图片

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

基于STM32的烟雾传感器_第4张图片

你可能感兴趣的:(stm32,嵌入式硬件,单片机)