树莓派初体验之 温控探头

来源:互联网 发布:雨燕轮毂数据 编辑:程序博客网 时间:2024/04/28 00:19
感谢海爷支援了一个三无的不锈钢防水温控探头,剥线后发现红黑橙三根线。首先我以我的RP赌它是18B20的探头,其次,继续赌红线是Vcc,黑线接地,橙线是数据线。电路图就懒得画了,搜“18B20”可以搜出来一堆。需要说明的是我的实验中4.7K的上拉电阻还是用上的。(图中的棕线连接了探头的橙线)

树莓派用到了1,6,7三个pin(物理编号,即3.3V,地,GPIO7)。红线接pin 1,黑线接pin 6,橙线接pin 7,上拉电阻直连1和7。

树莓派里要sudo raspi-config,启用I2C(在高级选项里)。

### 2017-02-08 修改###

### 在Pixel里是Interfacing Options###

然后修改/boot/config.txt,确认dtparam=i2c_arm=on没有被注释掉。
加一句:dtoverlay=w1-gpio-pullup,gpiopin=4
这里的4就是pin7,应该是采用BCM GPIO的标准。
都好了以后最好重启一下。

起来后用lsmod看一下,有没有类似的信息输出:
w1_gpio        3657  0
wire               25219  2 w1_gpio,w1_therm
我们感兴趣的正是w1_therm。

“在Linux的世界中,一切皆文件”。甚至在读取温控探头获取的温度数据的方式也是如此。

cd /sys/bus/w1/devices
ls

正常情况下能看到一个28开头的目录(每个18B20温控探头都有唯一序列号),cd 这个目录,看到其中有一个文件w1_slave。cat 这个文件,最后的 t=xxxxx就是当前温度值。当然,需要除一下1000。

所以后面有程序需要得到当前温度,本质上就是去读取并解析这个文件即可。

0 0
原创粉丝点击