刘智中 发表于 2018-12-8 18:16:20

【实验室培训_201810期】+刘智中+第四周任务(软件)

本帖最后由 刘智中 于 2018-12-8 18:22 编辑

一、任务要求:了解并掌握运用ardunio单片机控制DHT11数字温湿度传感器对温湿度数据的采集与处理,并且根据输出的温度数据来改变跑马灯的样式,并根据不同按键的输入状态输出不同温度数据(摄氏度、华氏温度、开氏温度)。
二、工作环境:通过ardunio软件编程对DHT11数字温湿度传感器控制进行数据采集处理。
三、实现步骤:对原有的程序进行改写,通过三个按键实现通过串口监视器输出三种不同的温度信息;再通过温度数据对LED灯的控制(亮灯数=摄氏度/10华氏度/10开氏度/50)。


部分显示程序如下:
Serial.print("Humidity(%): ");            // 输出湿度信息
      Serial.println((float)DHT11.humidity,2);
      x=digitalRead(11);
      y=digitalRead(12);
      z=digitalRead(13);
      if(x==LOW)
      {
      Serial.print("Temperature(℃): ");       //输出温度度信息(摄氏)
      Serial.println((float)DHT11.temperature,2);
      t=(float)DHT11.temperature/10;
      }
      else if(y==LOW)
      {
         Serial.print("Temperature(F): ");       //输出温度度信息(华氏)
         Serial.println((float)DHT11.temperature*1.8+32,2);
         t=((float)DHT11.temperature*1.8+32)/10;
         }
      else if(z==LOW)
      {
          Serial.print("Temperature(K): ");       //输出温度度信息(开氏)
          Serial.println((float)DHT11.temperature+273.15,2);
          t=((float)DHT11.temperature+273.15)/50;
         }
      else Serial.print("No more ");
      for(i=3;i<3+t;i++)
      {
         digitalWrite(i,HIGH);
         }
      delay(2000);
      for(i=3;i<11;i++)                        //清空亮灯数据
      {
         digitalWrite(i,LOW);
         }      
通过本次对DHT11的编程学习,主要了解到了对头文件与源文件的多文件编程,并且对于串口的编程更加熟练。



鲁亮 发表于 2018-12-10 15:59:07

把代码输入方式改一下,帖子里可以直接贴代码,不要这样截图
页: [1]
查看完整版本: 【实验室培训_201810期】+刘智中+第四周任务(软件)