本实验使用DS18B20温度传感器进行测量当前环境的温度信息。
电脑,windows系统
零知开发板
micro-usb线
5k电阻
DS18B20温度传感器
1、打开零知实验室软件开发工具,然后新建项目,输入以下代码:
2、按照之前的方式先【编译】,然后【上传】到开发板中。
// 引入库文件
#include "OneWireSTM.h"
#include "DallasTemperature.h"
// 定义读取数据的引脚
#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
void setup(void)
{
Serial.begin(9600);
Serial.println("Dallas Temperature IC Control Library Demo");
sensors.begin();
}
void loop(void)
{
Serial.print("Requesting temperatures...");
sensors.requestTemperatures();
Serial.println("DONE");
float tempC = sensors.getTempCByIndex(0);
if(tempC != DEVICE_DISCONNECTED_C)
{
Serial.print("Temperature for the device 1 (index 0) is: ");
Serial.println(tempC);
//plot on serial
Serial.print("$");Serial.print(tempC);Serial.println(";");
}
else
{
Serial.println("Error: Could not read temperature data");
}
}
将上述代码验证后上传到零知板,就可以看到测试结果了。
同时可以看到温度的编号曲线,这里是用手捏住传感器时候的变化: