内核驱动 w1_ds2423¶
支持的芯片
基于 Maxim DS2423 的计数器设备。
支持的家族代码
W1_THERM_DS2423
0x1D
作者:Mika Laitio <lamikr@pilppa.org>
描述¶
通过 sysfs w1_slave 文件提供支持。每次打开和读取 w1_slave 文件的序列都会启动 DS2423 第 12 - 15 页中可用的计数器和 ram 的读取。
每个页面的结果都以 ASCII 输出的形式提供,其中每个计数器值和关联的 ram 缓冲区都输出到自己的行。
每行将包含从计数器和内存页读取的 42 个字节的值,以及 crc=YES 或 NO,用于指示读取操作是否成功以及 CRC 是否匹配。如果操作成功,则每行的末尾还有一个计数器值,表示为 c= 之后的整数
42 个字节的含义如下
来自 ram 页面的 1 个字节
计数器值的 4 个字节
4 个零字节
2 个字节用于 crc16,它是从自上次 crc 字节以来读取的数据计算得出的
ram 页面的剩余 31 个字节
crc=YES/NO 表示读取是否正常以及 crc 是否匹配
c=<int> 当前计数器值
从成功读取的示例
00 02 00 00 00 00 00 00 00 6d 38 00 ff ff 00 00 fe ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=YES c=2
00 02 00 00 00 00 00 00 00 e0 1f 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=YES c=2
00 29 c6 5d 18 00 00 00 00 04 37 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=YES c=408798761
00 05 00 00 00 00 00 00 00 8d 39 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff crc=YES c=5
从带有 crc 错误的读取示例
00 02 00 00 00 00 00 00 00 6d 38 00 ff ff 00 00 fe ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=YES c=2
00 02 00 00 22 00 00 00 00 e0 1f 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=NO
00 e1 61 5d 19 00 00 00 00 df 0b 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff 00 00 ff ff crc=NO
00 05 00 00 20 00 00 00 00 8d 39 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff crc=NO