核心驅動 lm73¶
支援的晶片
德州儀器 LM73
字首:‘lm73’
掃描地址:I2C 0x48、0x49、0x4a、0x4c、0x4d 和 0x4e
資料表:可在德州儀器網站公開獲取
作者:Guillaume Ligneul <guillaume.ligneul@gmail.com>
文件:Chris Verges <kg4ysn@gmail.com>
描述¶
LM73 是一款數字溫度感測器。所有溫度值均以攝氏度為單位給出。
測量解析度支援¶
LM73 支援四種解析度,以每 LSB 的攝氏度定義:0.25、0.125、0.0625 和 0.3125。更改解析度模式會影響 LM73 模數轉換器的轉換時間。從使用者空間,可以透過裝置的 ‘update_interval’ sysfs 屬性將所需的解析度指定為轉換時間的函式。 此屬性會將輸入值的範圍標準化為資料表中為解析度定義的最大時間。
解析度
轉換時間
輸入範圍
(C/LSB)
(毫秒)
(毫秒)
0.25
14
0..14
0.125
28
15..28
0.0625
56
29..56
0.03125
112
57..無窮大
以下示例顯示瞭如何使用 ‘update_interval’ 屬性來更改轉換時間
$ echo 0 > update_interval
$ cat update_interval
14
$ cat temp1_input
24250
$ echo 22 > update_interval
$ cat update_interval
28
$ cat temp1_input
24125
$ echo 56 > update_interval
$ cat update_interval
56
$ cat temp1_input
24062
$ echo 85 > update_interval
$ cat update_interval
112
$ cat temp1_input
24031
如此處所示,lm73 驅動程式透過階躍函式自動調整使用者對 ‘update_interval’ 的任何輸入。在寫入操作後讀回 ‘update_interval’ 值將確認正在使用的轉換時間。
從數學上講,可以透過以下函式從轉換時間推匯出解析度
g(x) = 0.250 * [log(x/14) / log(2)]
其中 ‘x’ 是 ‘update_interval’ 的輸出,‘g(x)’ 是每 LSB 的攝氏度解析度。
警報支援¶
LM73 具有一個簡單的過溫警報機制。 此功能透過 sysfs 屬性公開。
屬性 ‘temp1_max_alarm’ 和 ‘temp1_min_alarm’ 是 LM73 提供的標誌,指示測量的溫度是否分別超過了 ‘temp1_max’ 和 ‘temp1_min’ 閾值。必須讀取這些值才能清除 LM73 上的暫存器。