python获取cpu温度_如何获得树莓派CPU实时温度值
【前言】
任何的电子设备在工作过程中必定会产生发热的现象,而不控制好设备的温度的话,很有可能会损坏设备,或者照成设备的性能下降,本文将通过学习如何读取树莓派CPU温度值,方便后期对树莓派做一些相应的控制措施。
在树莓派操作系统中,有一个读取温度值的入口,通过读取这个入口返回的值来获得树莓派实时的温度值,具体入口为:
/sys/class/thermal/thermal_zone0/temp
【具体操作】
本文将通过3种操作方式来获取该温度值:
1、shell编程操作
2、C语言文件操作
3、python文件操作
1、通过shell编程获得cup温度值
进入树莓派终端控制台,依次输入以下指令获取实时温度值:
#进入根目录
cd /
#读取temp文件,获得温度值
cat sys/class/thermal/thermal_zone0/temp
#系统返回实时值
40622
[说明]
1)通过cat命令读取存放在sys/class/thermal/thermal_zone0目录下的温度文件temp获得返回值
2)返回值为一个5位数的数值,实际温度为将该值除以1000即可!单位为摄氏度!
2、通过C语言编程获得cpu温度值
选定一个目录,并在目录中创建cpu_temp.c文件,将以下代码输入:
#include
#include
//导入文件控制函数库
#include
#include
#include
#define TEMP_PATH "/sys/class/thermal/thermal_zone0/temp"
#define MAX_SIZE 20
int main(void)
{
int fd;
double temp = 0;
char buf[MAX_SIZE];
// 以只读方式打开/sys/class/thermal/thermal_zone0/temp
fd = open(TEMP_PATH, O_RDONLY);
//判断文件是否正常被打开
if (fd < 0)
{
fprintf(stderr, "failed to open thermal_zone0/temp\n");
return -1;
}
// 读取内容
if (read(fd, buf, MAX_SIZE) < 0)
{
fprintf(stderr, "failed to read temp\n");
return -1;
}
// 转换为浮点数打印
temp = atoi(buf) / 1000.0;
printf("temp: %.3f\n", temp);
// 关闭文件
close(fd);
}
编译C代码,输入以下指令:
gcc -o cpu_temp cpu_temp.c
运行程序
./cpu_temp
系统返回实时值
temp : 40.622
程序解读:
1)关于open()、read()、close()函数使用,可看:【fcntl.h函数库的常用函数使用】。
2)atoi(buf)函数是将buf中的字符串数据转换层整形数。
3)gcc -o cpu_temp cpu_temp.c :gcc为编译器、 -o参数表示将cpu_temp.c文件编译成可执行文件并存放到 cpu_temp文件夹中。
3、通过python语言编程获得cpu温度值
选定一个目录,并在目录中创建cpu_temp.py文件,将以下代码输入:
#! /usr/bin/python
#! -*- coding: utf-8 -*-
# 打开文件
file = open("/sys/class/thermal/thermal_zone0/temp")
# 读取结果,并转换为浮点数
temp = float(file.read()) / 1000
# 关闭文件
file.close()
# 向终端控制台打印
print "temp : %.3f" %temp
执行脚本
Python cpu_temp.py
系统返回实时值
Temp : 41.163
【小结】
以上3总方式都可获取树莓派cpu实时的温度值,通过访问目录下的temp文件获取返回值,在程序上对返回值稍作转换变成我们需要的数,在以上的3种方式中,通过python获得数据更为简便!
喜欢 (1)or分享 (0)
python获取cpu温度_如何获得树莓派CPU实时温度值相关推荐
- python获取计算机配置_利用python写一段读取电脑配置信息的程序
展开全部 主要利用python的wmi模块,提供非常多的信息.import wmi def sys_version(): c = wmi.WMI() # 操作系统版本,版本号,32位/64位 prin ...
- python获取屏幕文字_详解:四种方法教你对Python获取屏幕截图(PyQt , pyautogui)...
前言: 今天为大家带来的内容是详解:四种方法教你对Python获取屏幕截图(PyQt , pyautogui)本文具有不错的参考意义,希望能够帮助到大家! Python获取电脑截图有多种方式,具体如下 ...
- python 获取硬盘信息_使用python获取电脑的磁盘信息方法
使用Python获取电脑的磁盘信息需要借助于第三方的模块psutil,这个模块需要自己安装,纯粹的CPython下面不具备这个功能. 在iPython交互界面中进行如下演示: 查看电脑的磁盘分区: I ...
- python获取交易软件数据_几行Python代码,轻松获取美股阿里巴巴的交易数据
原创: 野马 菜鸟学Python 学Python可以干很多事情,比如爬虫,数据分析,机器学习,但是有一个非常小众的分支,不仅结合了两大高薪行业,而且还薪水非常诱人,就是量化金融岗位.目前Python已 ...
- amd4200温度_解决AMD 64x2 CPU温度高自动关机终级方法
今天客户又拿来一台AMD 5200+的机子,说老是自动关机.经检测,确认是CPU温度过高,自动保护关机问题.开机CPU进系统63度,3分钟后到85度,打开"植物大战僵尸"小游戏,不 ...
- python 获取屏幕快照_如何获取Windows登录屏幕的屏幕快照:2个怪异技巧
python 获取屏幕快照 There are ways to run a screen capture utility – or any other program – from the welco ...
- python获取当前窗口句柄_人生苦短,我学python之python+selenium 多窗口、句柄(handle)...
转载自 http://www.cnblogs.com/yoyoketang/p/6128611.html 前言 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口 ...
- cpu使用率_漫话性能:CPU使用率
序言 CPU 使用率是最直观和最常用的系统性能指标,更是我们在排查性能问题时,通常会关注的第一个指标. 节拍率 为了维护 CPU 时间,Linux 通过事先定义的节拍率(内核中表示为 HZ),触发时间 ...
- linux查询服务器cpu核数_查看linux服务器CPU数量
首先,要区分两个概念:物理CPU和逻辑CPU. 物理CPU就是服务器上实际安装的CPU.但是一个物理CPU可以有多个核.例如,一个 i5 760 是双核,而一个 i5 2250 是四核.如果开启了In ...
最新文章
- 动感灯箱制作流程培训_向客户推荐灯箱,这16种灯箱你一定要知道
- VC控件自绘制三步曲
- 模4余1的素数一定能表示为两正整数的平方和
- ArrayList的add(E e)方法与扩容
- QT中图表类QChart之各种缩放/平移
- Android Studio中解决jar包重复依赖导致的代码编译错误
- 我的助理辞职了!——给不听话的下属看看~
- 安全成Win10进军企业级市场的最大卖点?
- Android WebView重定向问题,Android Webview重定向问题解决方法
- plsql 64连接32oracle,32位plsql developer连接64位oracle的方法
- 激光雷达点云数据处理
- 图形学笔记(四)——Harris 角点检测器延申
- Java基本语法-Scanner类的应用_计算两个整数和
- Elasticsearch blocked by: [SERVICE_UNAVAILABLE/1/state not recovered / initialized];
- Zookeeper实现注册中心
- os.path.isfile() 判断问题
- Consumer接口和Supplier接口
- m1 Mac zshrc 环境变量
- 行业研究报告-全球与中国PH/ORP变送器市场现状及未来发展趋势
- Shopee大规模毁约offer,今年的大厂装都不装了
热门文章
- react中配置less-loader报错
- java百度天气接口解析_Java调用天气接口(百度天气)解析返回的JSON数据
- 计算机系大一开学需要带什么,大一新生上学要不要带电脑?辅导员给出建议,家长可以参考...
- The valid characters are defined in RFC 7230 and RFC 3986
- 2022超级好用的接口自动化测试框架:基于python+requests+pytest+allure实现
- k8s部署prometheus + grafana
- opencv-python给图片添加半透明mask
- 1.1.3操作系统的发展与分类(多道批处理 单道批处理系统 分时操作系统 实时操作系统)
- iOS 更改webView文字颜色丶文字大小丶背景色的方法
- p5.js创意绘图(2)自画像