在python中从树莓派获得错误的cpu_frequency



我想使用python从树莓派4B中获取cpu_freq值

def GetCpuInfo():
# Get CPU frequence
cpu_freq =open("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq").read()
return cpu_freq

当我打印cpu_freq数据时,输出总是固定在1800000(它是raspberry pi的最大cpu频率1.8Ghz),但是每次我使用

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

这个命令在终端,它给我动态阀(600000-1800000)那么为什么我得到错误的值时,使用python?这是一个错误的方式来读取这个文件吗?

你的read()没有问题。

启动Python本身可能需要足够的周期才能使CPU上升到全频率,特别是在像Pi这样的小系统上。

为了防止这种情况,在你读取读数之前,添加一个延迟,让它恢复运行。例如:

import time
def GetCpuInfo():
with open("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq") as f:
return f.read()
for _ in range(20):
time.sleep(1)
print(GetCpuInfo())

相关内容

  • 没有找到相关文章

最新更新