xdsnet
获得 1461 次赞
帮助过2253人
一个Arduino IDE下 利用ESP8266 读取DS18B20传感器温度,并上传更新到传感云平台(http://www.wsncloud.com/)的实例。 代码中有完整的注释说明 在按要求配置好Arduino IDE 后,只需要设置开头的几个自定义参数就可以成功编译上传到最小ESP8266环境上,按要求搭建好运行环境,接上电源就可以运行,如果有串口监控,可以获取足够运行信息。
本帖最后由 xdsnet 于 2018-6-7 08:48 编辑 前面用c语言实现读取多个dt18b20数据,要远程服务,就需要远程获取到温度值,这里就利用nodejs的express框架简单实现远程获取温度信息。 1. 环境信息: rasbian最新系统,因为该信息不需要特殊权限(只要安装好w1模块,打开了相应支持——见前文),nodejs版本10.2.1,npm版本6.1.02. 基础环境构建(通过提前安装express-generator)搭建基 本环境,具体为执行下面命令: sudo npm install express-generator -g express myapp cd myapp npm install 这样就搭建好了基本环境,可以执行 debug=myapp npm start 或者 npm start 来启动服务,用和树莓派在一个网段的机器上的浏览器打开 http://设备地址:3000/ 如果能正常看见东西表明基 本环境正确了。在树莓派上用ctrl+c 结束服务 然后编辑myapp下的app.js,在 var indexrouter = require(./routes/index); 下添加 var readtempsrouter = require(./routes/readtemps); 在 app.use(/, indexrouter); 下添加 app.use(/readtemps, readtempsrouter);以添加一个访问接口,下面就是具体的实现,内容在 routes/readtemps.js 文件中,具体内容为(不知道为什么老显示程序中又非法字符,所以只能以附件形式提供): 然后重新运行服务,则用 http://树莓派地址:3000/readtemps 就可以浏览到json格式的温度数据了。每次访问都是新值。