嵌入式Linux跑分软件,看看你的嵌入式设备CPU温度是多少,能烤肉吗?
點擊上方「嵌入式大雜燴」,「星標(biāo)公眾號」第一時間查看嵌入式筆記!
大家應(yīng)該都看過一些大佬發(fā)的電腦CPU烤肉的視頻,電腦CPU的溫度真的有那么高嗎?我們一起來看一下咱們電腦CPU的溫度是多少?
PC端CPU溫度的方式有很多種,比較簡單的可能就是Windows下安裝一些跑分軟件,通過這些軟件可以看到CPU的溫度,比如魯大師:
另外,Linux下也有很多手段查看,這里不做介紹。
下面我們介紹一些我么跑Linux的嵌入式設(shè)備CPU溫度的方法。要獲取得到CPU溫度肯定需要傳感器(不知道CPU的溫度是不是這樣采的)、相關(guān)驅(qū)動等。這些偏底層的我們就不去研究了,先用起來。
Linux內(nèi)核中一般都帶有CPU溫度檢測的驅(qū)動,與CPU相關(guān)的設(shè)備文件/sys、/proc中。
我這里用的是百問網(wǎng)的開發(fā)板,其出廠帶的系統(tǒng)CPU溫度對象的虛擬文件在/sys/devices/virtual/thermal/thermal_zone0中,我們該目錄下的temp文件就可以得到CPU的溫度。比如:
cat?/sys/devices/virtual/thermal/thermal_zone0/temp
這里的54242代表的是54.242℃。
我們讀取查看一個文件的內(nèi)容,可以直接在shell命令行查看,也可以通過編程的方式查看。編碼之前我們看一個圖:
這是學(xué)習(xí)嵌入式Linux必須要熟知的一個基礎(chǔ)圖。我們編寫應(yīng)用程序可以有兩種方法:一種是直接系統(tǒng)調(diào)用層接口(即open、 read、 write 等函數(shù))、另一種是調(diào)用glibc的接口(即fopen、 fread、 fwrite 等 函數(shù))間接地調(diào)用系統(tǒng)調(diào)用層接口。相關(guān)筆記推薦:
這里我們使用調(diào)用glibc的方式來編寫我們讀取CPU溫度的應(yīng)用程序,代碼:
左右滑動查看全部代碼>>>
#include?
#include?
#include?
int?main(int?arc,?char?*argv[]){
FILE?*fp?=?NULL;
unsigned?int?temperature?=?0;
fp?=?fopen?("/sys/devices/virtual/thermal/thermal_zone0/temp",?"r");
if?(fp?
{
printf("fopen?error!\n");
exit(1);
}
while(1)
{
fscanf(fp,?"%d",?&temperature);
printf("cpu?temperature:?%d.%d\n",?temperature/1000,?temperature%1000/100);
sleep(1);
}
fclose(fp);
return?0;
}
交叉編譯、傳到板子里,運行:
以上就是本次關(guān)于獲取CPU溫度的分享,如有錯誤,歡迎指出??烊タ纯茨愕腃PU溫度能不能烤肉吧
猜你喜歡
1024G 嵌入式資源大放送!包括但不限于C/C++、單片機、Linux等。在公眾號聊天界面回復(fù)1024,即可免費獲取!
總結(jié)
以上是生活随笔為你收集整理的嵌入式Linux跑分软件,看看你的嵌入式设备CPU温度是多少,能烤肉吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql模糊查询结果取反
- 下一篇: 屏幕标记软件pointfix的下载和安装