问题标签 [1wire]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
7159 浏览

python - 如何使用 owfs 读取 iButton 温度记录器?

我已经安装owfs并试图从iButton 温度记录器中读取数据。

owfs让我将 iButton 挂载为 fuse 文件系统,我可以看到所有数据。不过,我无法弄清楚访问数据的最佳方式是什么。cat我可以通过ting 文件来获得单独的读数,例如cat onewire/{deviceid}/log/temperature.1,但onewire/{deviceid}/log/temperature.ALL文件“损坏”(可能太大,因为histogram/temperature.ALL工作正常)。

读取所有文件的 python 脚本似乎可以工作,但需要很长时间。有更好的方法吗?有没有人有任何例子?

我使用的是 Ubuntu 8.04,无法运行 java“单线查看器”应用程序。

更新:使用owpython(与 owfs 一起安装),我可以获得当前温度,但不知道如何访问记录的日志:

x.log给出一个AttributeError.

0 投票
2 回答
546 浏览

embedded - 一根线问题

我需要你有资格的帮助!我正在使用 C++ 编程,使用 PIC 18F87J50 并尝试在我的 H0 端口连接 DS18B20!

我认为我的底层编程是正确的,所以....我遇到的问题(认为我有)是在执行 ROM 命令时,我正在搜索 64 位 ROM 代码。

第一个字节应该告诉我组件属于哪个系列(28h)。接下来的 48 位应该为我提供一个仅用于该组件的 uniq 序列。最后一个用于CRC。

这样做时我的想法是否正确:

如果我要求 ROM_CODE[1-6] 中的代码,我应该得到 uniq 号??我不应该吗?

亲切的问候!

0 投票
2 回答
818 浏览

embedded - 1wire问题详细

我在下面定义了这些函数,当我询问Device_ID函数例如家庭代码时,我只得到FF(应该是28),实际上我得到了家庭代码,48位串行和crc 8位所有的“一个”。似乎检测从设备功能正常工作......如果我连接从设备,他说我在这里,如果我把它拿走......没有设备存在。我在 1wire 上也有一个 5kohm 的上拉电阻。

而且我不知道为什么我的 Device_ID 不起作用,所以我的问题是为什么它不起作用!?你能在这段代码中看到任何错误吗(我使用的是 PIC 18F87J50 和一个 DS18B20):

我在 Main 中的声明:

使用的功能:





现在一些重要的device_id:





0 投票
5 回答
2101 浏览

.net - 是否有任何可用且完整的 1-Wire .NET 库?

我有一个 1-Wire USB 适配器(那个是蓝色的),想在一个小型 Linux 机器上使用它来监控温度。Linux 机器现在出故障了,所以同时我想在我的 Windows 桌面上使用基于 .NET 的监控软件来记录温度。但似乎没有一个可用的 .NET 库供 .NET 使用。Maxim SDK 附带的一个需要 J#,我没有但想使用它。我什至不确定我是否可以将它与基于 .NET 4.0 的应用程序一起使用,因为 J# 已停止使用 AFAIK。SourceForge (owdotnet) 上的另一个“开源工作”是 2008 年的,看起来已经死了。甚至没有任何关于它的信息页面。Maxim SDK 还附带一个“Compact .NET”版本,它至少可以找到连接到适配器的设备,但我 d 似乎需要自己实现整个 1-Wire 协议(发送原始字节,等待片刻,等等)。所以现在没有多大帮助。谷歌没有找到其他任何东西。你?

我的印象是整个 1-Wire 的东西已经死了。它只能在 Linux 系统上使用(使用 owfs,编译起来很庞大),并且整个产品生态系统并不完全活跃。还有什么其他的解决方案可以测量温度、环境参数(湿度、水、压力等)和状态(比如开门),甚至可以做一些不花钱的开关(打开和关闭灯)(与“家庭自动化”一样)?并且最好也可以从 .NET 代码访问?

0 投票
2 回答
1637 浏览

c++ - 什么是 MaxDetect 1-wire 总线?

我买了这个传感器:

http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/Weather/RHT03.pdf

并且输出是“MaxDetect 1-wire bus”,这是什么意思以及如何使用它?我试图将它连接到 arduino 并对其进行编程,但它无法正常工作,我不断收到 1 位的数据。我想我的代码是错误的。我需要为 arduino 使用 Wire-1 库吗?

0 投票
2 回答
148 浏览

raspberry-pi - 1-wire 如何决定使用哪个地址?

我一直在按照这个简单的教程从树莓派获取温度读数, http: //blog.vokiel.com/raspberry-pi-odczyt-temperatury-przez-nodejs/?lang=en

在 下w1/devices,我称之为address存储 1-wire 总线值的文件。

例如,教程说

地址在哪里28-00000249bf39。在我的设备上,地址是28-000004acb882. 这些地址是如何设置的?可以自己定义吗?

0 投票
2 回答
1406 浏览

c - STM32调试时结果不同

我正在尝试使用 UART 在 1-Wire 上对数字温度计 DS18B20 进行编程,但遇到了奇怪的问题。当我调试这个没有断点运行的程序(或者只是运行没有调试的程序)时,我的读数约为 100°C。当我在接收温度信息之前设置断点时,它给了我大约 50°c。第三个选项当我打开这个窗口时,我可以看到 SFR 并展开 UART4 部分,它给了我大约 25°C 的正确读数。我有 Saleae 逻辑分析仪,在所有这 3 种情况下,它都会向我发送有效数据(约 25°C)。我试图在断点所在的地方设置一些延迟(甚至延迟 2 秒),但没有帮助。它给了我大约 50°C 的读数(比如断点和未扩展的 SFR 窗口)。这可能是编程错误(我要开始了),但是这个带有扩展 SFR 窗口的操作超出了我的推理范围。我真的不知道发生了什么事。我希望你能为我了解一下这种情况。

我正在使用 STM32F4-Discovery 评估板并在 Atollic 4.1.0 上对其进行编程。

我的“图书馆”文件:

我的主要功能:

0 投票
1 回答
713 浏览

crc - Sum of CRC8 OneWire

Trying to understand crc8. This is my calculations:

Now need crc8 of 141 The first one plus the second. Using online calculator https://ghsi.de/CRC/index.php?Polynom=100110001&Message=141 I see that crc8 of 141 must be 0xF8. But 0x31 + 0xC will be 3D. Where is the error?

0 投票
1 回答
284 浏览

java - BGS5T RS232 与 1 线传感器通信

我有 Gemalto BGS5T java 模块和 1 线温度传感器。我有使用 RS232 端口与温度传感器通信的 java midlet。但问题是,无论我发送什么,我都没有收到传感器的响应。传感器上有正确的电压,所以连接应该没问题。我尝试测试我的程序,以便将 rs232 端口连接到计算机并使用终端(白蚁)观察发送的数据是否正确并且一切看起来都应该正确。另一个测试是我将温度传感器直接连接到计算机并使用终端发送数据,它的工作原理应该是这样。我什至得到了一些随机输入的响应,例如 9999。我检查了终端内的连接参数并将它们复制到 java midlet,但没有成功。只有一次我得到了一些回应,但是当我第二天尝试继续工作时,我没有成功。终端内部参数:波特率:9600 数据位:8 停止位:1 奇偶校验:无 流量控制:RTS/CTS

这是Java代码:

0 投票
2 回答
2081 浏览

arduino - 如何使用 Arduino Yun 从 DS18B20 传感器获取温度并将其显示在 Adafruit LEDbackpack(4x 7segments)上

我目前正在尝试(几个小时)在我的 Adafruit LEDBackpack 上显示从 DS18B20 获得的温度。但是当我尝试在设置matrix.begin(0x070))中初始化显示时,传感器返回的温度始终为-127

你能帮我理解我做错了什么吗?

用例

  1. 只有温度传感器:温度正确
  2. 只有屏幕:屏幕按预期工作
  3. 两者:屏幕工作并显示预期但返回的温度始终为-127。

成分:

  • Adafruit LEDBackpack 使用 I2C,因此它连接到 SCL、SDA、5v、GND
  • 温度传感器是 DS18B20(1-Wire 总线)。它连接到 D#2, 5v, GND

代码

架构

架构