C/C++教程

windows下获取cpu温度以对外提供api,借用微星 MSI Afterburner(燃烧加力室) 个人原创

本文主要是介绍windows下获取cpu温度以对外提供api,借用微星 MSI Afterburner(燃烧加力室) 个人原创,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一开始的想法是我用4块钱买到了一个iic的led124*32屏幕,想着用arduino uno来显示电脑的cpu温度,相当于一个简易外设,如果用esp32还可以不用串口与电脑连线了。

然而第一步就卡住了,window并没有提供真正的cpu温度api,鲁大师一类的都是自己写的驱动。于是我查到了这个  Open Hardware Monitor beta,一个开源的硬件信息检测工具。官网   Open Hardware Monitor - Core temp, fan speed and voltages in a free software gadget

但是我实在是不会调用那个。dll文件,看起来需要一定的c#基础 。wmi调用倒是可以,但是要打开软件才可以  ,在powershell(管理员权限)中 输入   get-wmiobject -namespace root\OpenHardwareMonitor -query 'select * from Sensor'   就可以看到很多从传感器获得的数据

 

我觉得这个要打开软件,有点多此一举。找啊找,,找到了著名的 微星 MSI Afterburner,感谢微星,它提供了一个服务端,用http发布硬件信息,可以用手机app来查看硬件信息,甚至可以用手机超频   官网  下载地址  Afterburner (msi.com)

需要下载MSI Afterburner与MSI Afterburner Remote Server。打开这俩软件,我们先研究下他的协议,Afterburner Remote Server是一个http服务器,地址跟端口可以设置 

 

注意第一个密码。后边会用到

查看硬件信息与帧率的地址是    http://192.168.1.5:4000/mahm,(超频是另一个后缀)  192.168.1.5是我自己电脑的局域网地址,请酌情更改,在浏览器里测试这个网址,会让你输账号密码  ,账号是  MSIAfterburner   ,密码就是 Secuity的内容 。服务器会返回一个xml,包含了非常多硬件信息

 

 

 然后就是处理这个xml文件了,uno上我准备写一个客户端解析xml然后用串口发送给uno板子,esp32就可以完全独立完成http请求与解析xml并显示在12864小屏幕了

以上获取xml的协议我用到了Wireshark-抓包。

这篇关于windows下获取cpu温度以对外提供api,借用微星 MSI Afterburner(燃烧加力室) 个人原创的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!