首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找到温度传感器的十六进制地址?

如何找到温度传感器的十六进制地址?
EN

Unix & Linux用户
提问于 2018-09-03 05:58:02
回答 1查看 387关注 0票数 1

我正试图利用我的宏碁Aspire One笔记本电脑的脚本(我相信是acerfand)在一定温度下控制风扇的开/关。为了正常工作,它需要温度传感器的数值。如何找到温度传感器的十六进制地址?我试过dmidecode,但我甚至不知道搜索它的位置是否正确。

代码语言:javascript
复制
sub get_temp
{
    initialize_ioports();
    my $r = hex("xxx"); # Temperature
    my $temp = read_ec($r);
    close_ioports();
    return $temp;
}

编辑:不知怎么我找到了!为了防止有人搜索这个号码,宏碁想要一个722 if :十六进制(“0xB0”)。

EN

回答 1

Unix & Linux用户

发布于 2018-09-03 06:59:16

假设传感器是通过PCI总线连接的。

首先,使用其驱动程序(内核模块)名称查找您的传感器目录:

代码语言:javascript
复制
grep DRIVER /sys/bus/pci/devices/*/uevent

您将看到一批这样的行:

代码语言:javascript
复制
/sys/bus/pci/devices/0000:00:02.0/uevent:DRIVER=pcieport
/sys/bus/pci/devices/0000:00:04.0/uevent:DRIVER=pcieport
/sys/bus/pci/devices/0000:00:11.0/uevent:DRIVER=ahci
/sys/bus/pci/devices/0000:00:12.0/uevent:DRIVER=ohci-pci
/sys/bus/pci/devices/0000:00:12.2/uevent:DRIVER=ehci-pci
/sys/bus/pci/devices/0000:00:13.0/uevent:DRIVER=ohci-pci
/sys/bus/pci/devices/0000:00:13.2/uevent:DRIVER=ehci-pci
/sys/bus/pci/devices/0000:00:14.0/uevent:DRIVER=piix4_smbus
/sys/bus/pci/devices/0000:00:14.1/uevent:DRIVER=pata_atiixp
/sys/bus/pci/devices/0000:00:14.2/uevent:DRIVER=snd_hda_intel
/sys/bus/pci/devices/0000:00:14.5/uevent:DRIVER=ohci-pci
/sys/bus/pci/devices/0000:00:16.0/uevent:DRIVER=ohci-pci
/sys/bus/pci/devices/0000:00:16.2/uevent:DRIVER=ehci-pci
/sys/bus/pci/devices/0000:00:18.3/uevent:DRIVER=k10temp
/sys/bus/pci/devices/0000:01:00.0/uevent:DRIVER=nvidia
/sys/bus/pci/devices/0000:01:00.1/uevent:DRIVER=snd_hda_intel
/sys/bus/pci/devices/0000:02:00.0/uevent:DRIVER=r8169

其中一行将包含传感器内核模块的名称--在上面的示例中,它是k10temp,相应的行是:

代码语言:javascript
复制
/sys/bus/pci/devices/0000:00:18.3/uevent:DRIVER=k10temp

因此,现在我们知道传感器的目录-在示例中,这个目录是:

代码语言:javascript
复制
/sys/bus/pci/devices/0000:00:18.3/

目录中的文件device包含传感器的十六进制地址,因此执行(对于上面的示例):

代码语言:javascript
复制
cat /sys/bus/pci/devices/0000:00:18.3/device

输出如下:

代码语言:javascript
复制
0x1703

如果您无法识别传感器内核模块的名称,只需安装lm-sensors,然后执行sudo sensors-detectsensors --您将很容易找到内核模块的名称,因为您将看到其中一个传感器的名称:

代码语言:javascript
复制
k10temp-pci-00c3
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/466494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档