极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10664|回复: 2

求助18B20程序里的两句话的含义

[复制链接]
发表于 2015-2-11 11:06:28 | 显示全部楼层 |阅读模式
例程里别的都基本理解了,但是这两句话不太理解,例程是2个18B20测温串口通讯的程序,请高人指点下,这是什么意思:


if (!sensors.getAddress(insideThermometer, 0)) Serial.println("Unable to find address for Device 0");


if (!sensors.getAddress(outsideThermometer, 1)) Serial.println("Unable to find address for Device 1");
回复

使用道具 举报

发表于 2015-2-11 16:38:39 | 显示全部楼层
如果(得不到入口温度检测端的18B20地址)串口输出“无法得到0号设备地址”
如果(得不到出口温度检测端的18B20地址)串口输出“无法得到1号设备地址”

!sensors.getAddress(insideThermometer, 0);这个是地址提取子函数。接收到GET函数反馈后取反,的到了为真,取反为0就不执行后面,如果得不到,函数反馈值为0,取反后为1,则执行后面的。

自己慢慢理解
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-2-11 17:16:53 | 显示全部楼层
谢谢啊,我下午琢磨了下,sensors.getAddress(insideThermometer, 0)这句程序单独提出来也可以,如果不需要打印Unable to find address for Device 0。
有几个18B20,就搞几个变量替换insideThermometer,然后0依次增加1.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-17 11:00 , Processed in 0.049979 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表