zoukankan      html  css  js  c++  java
  • Android 如何获取CPU的温度

    最近的项目有需求要获取CPU的温度,在网上找了一些资料,基本算是解决了问题:

    进入adb shell执行下面的命令:

    shell@android:/ $ cat /etc/thermald.conf 

    这个不同设备得到的结果可能是不已样的,有这样的:

    sampling         5000
    
    [tsens_tz_sensor0]
    sampling         5000
    thresholds       10
    thresholds_clr   5
    actions          none
    action_info      0
    
    [tsens_tz_sensor1]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor2]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor3]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor4]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor5]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor6]
    sampling         5000
    thresholds       60
    thresholds_clr   57
    actions          none
    action_info      0
    
    [tsens_tz_sensor7]
    sampling         1500
    thresholds       95     120
    thresholds_clr   87     115
    actions          cpu    cpu+shutdown
    action_info      384000 384000+5000
    
    [tsens_tz_sensor8]
    sampling         1500
    thresholds       95     120
    thresholds_clr   87     115
    actions          cpu    cpu+shutdown
    action_info      384000 384000+5000
    
    [tsens_tz_sensor9]
    sampling         1500
    thresholds       95     120
    thresholds_clr   87     115
    actions          cpu    cpu+shutdown
    action_info      384000 384000+5000
    
    [tsens_tz_sensor10]
    sampling         1500
    thresholds       95     120
    thresholds_clr   87     115
    actions          cpu    cpu+shutdown
    action_info      384000 384000+5000
    
    [batt_therm]
    sampling         1500
    thresholds       410             420             430             440             450
    thresholds_clr   400             410             420             430             440
    actions          cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery
    action_info      1350000+192+0   1134000+181+1   1026000+181+1   918000+171+2    810000+171+3

    这样的:

    sampling         5000
    
    [tsens_tz_sensor0]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor1]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor2]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor3]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor4]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor5]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor6]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor7]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor8]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor9]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000
    
    [tsens_tz_sensor10]
    sampling         1000
    thresholds       60      90      95      100     105     110     115     120
    thresholds_clr   57      85      90      95      100     105     110     115
    actions          cpu     cpu     cpu     cpu     cpu     cpu     cpu     shutdown
    action_info      1512000 1188000 918000  756000  648000  540000  486000  5000

    还有压根就不能执行的情况。

    个人理解,这个就是对应不同设备的温度传感器。

    然后,我们可以看到,有的传感器是针对CPU的。那么到下面的目录:

    shell@android:/sys/class/thermal $

    你可以找到这些传感器,然后进入对应的传感器,用cat指令可以知道温度了。

    shell@android:/sys/class/thermal/thermal_zone7 $ cat temp

    ## cat type 的话应该可以获取传感器的类型信息。

    虽然解决了问题,但是不是很理解。比如,这个是linux系统的通用设置吗? 其他传感器都对应了什么? 等等。

  • 相关阅读:
    numpy—————数组操作
    ML———聚类算法之K-Means
    DataFrame————数据离散化处理(元素定位与离散化处理)
    windows 搭建和配置 hadoop + 踩过的坑
    Pandas -----简述 Series和DataFrame
    numpy 函数和用法总结、示例
    分词————jieba分词(Python)
    (31)本地yum仓库的安装配置
    (30)zookeeper的数据结构
    (29)zookeeper的命令行客户端
  • 原文地址:https://www.cnblogs.com/beautiful-scenery/p/3613874.html
Copyright © 2011-2022 走看看