`

树莓派 c获取树莓派CPU温度

 
阅读更多
C语言文件IO操作
    新建一个名为cpu-temp.c文件,文件的具体内容如下:
#include <stdio.h>
#include <stdlib.h> 

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

#define TEMP_PATH "/sys/class/thermal/thermal_zone0/temp"
#define MAX_SIZE 32
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: %.2f\n", temp);
    
    // 关闭文件
    close(fd);
}


在cpu-temp.c目录下输入以下指令生成可执行文件,接着执行该文件。
引用
# 编译链接
gcc -o test cpu-temp.c
# 执行
./test
# 执行返回
temp: 49.2



c之出现warning: implicit declaration of function ‘read’ [-Wimplicit-function-declaration]这个问题

解决办法:
先执行下面命令看read在哪个头文件下面
引用
man read

加上头文件编译,问题就解决了
引用
#include <unistd.h>
分享到:
评论

相关推荐

    树莓派CPU和GPU温度监测

    ### 树莓派CPU和GPU温度监测 #### 知识点概述 树莓派作为一款微型计算机,在多种应用场景中被广泛使用。为了确保其稳定运行,监控树莓派的CPU和GPU温度非常重要。通过监测温度,可以及时采取措施避免因过热导致的...

    一个树莓派上的风扇温控程序(C语言模块),支持三种风扇管理模式..zip

    这可以通过读取树莓派内建的温度传感器,如CPU温度传感器,或者连接外部温度传感器实现。通常,温度数据可以通过`/sys/class/hwmon/hwmonX/tempN_*`路径下的文件读取。 2. 风扇控制策略:程序提供了三种风扇管理...

    树莓派状态信息显示 via LCD1602.zip

    这通常包括但不限于CPU温度、内存使用率、网络连接状态、系统负载等关键信息,帮助用户监控和理解树莓派的运行状况。 标签“LCD1602”是项目的核心组件,表明这个项目专注于如何与这种特定的液晶屏进行交互。 ...

    PiMiniMoniter

    通过在树莓派上连接Nokia 5110液晶显示屏,我们可以直观地获取到系统的各项关键信息,如温度、CPU使用率、内存剩余、开机时间和CPU温度,以及wlan0接口的IP地址。这一项目的实施,不仅能够增强我们对树莓派系统状态...

    基于树莓派3的全彩LED+温控风扇+实时时钟三合一扩展板-电路方案

    为了防止这种情况,可以添加一个温控风扇,根据树莓派的CPU温度自动调整转速。这通常通过读取树莓派的温度传感器数据,并用编程语言(如Python)编写控制逻辑来实现。 4. **实时时钟**:实时时钟(RTC)是一个独立...

    树莓派扩展板散热风扇-电路方案

    由于树莓派4的使用定位为小型计算机,然而单板上并无任何散热措施,一旦系统负载过大(如打开较多网页、播放视频等),树莓派温度则会立即上升至80度左右,由于CPU自带温度监控,一旦温度过大,则会降频运行,甚至...

    monitor-pis:监控树莓派

    1. **硬件监控**:监控树莓派的硬件状态,如CPU温度、内存使用率、磁盘空间、网络带宽使用以及电源状态等。这可以通过读取系统接口(如/proc或sysfs)中的数据来实现。 2. **性能指标**:收集和分析树莓派的性能...

    pi-sys-monitor:树莓派Sense帽子系统监视器,使用LED矩阵显示系统资源使用情况和正常运行时间

    例如,`/proc`目录下的系统文件提供了丰富的系统状态信息,如`/proc/loadavg`用于获取CPU负载平均值,`/proc/meminfo`则包含内存统计信息,而`/proc/uptime`则显示了系统自启动以来的总秒数。 程序需要解析这些文件...

    基于单片机智能风扇的设计.pdf

    智能风扇是通过利用温度传感器获取室内外的环境温度数据,然后结合单片机控制风扇的转速,达到一定的节能效果,同时改善用户的使用体验。单片机在智能风扇中的应用,体现了嵌入式系统设计的一般原理,即硬件与软件的...

    基于西门子S7-1200PLC的实验室门禁及环境因子控制.pdf

    其中,CPU1215C作为主控制器,RS422/485通信模块用于和RFID读卡器进行数据交换,而Modbus协议读写器YW-630用于读取IC卡的卡片序列号。 实验室环境因子控制系统则基于PLC自动控制,并可实现手动和自动的控制。系统...

    raspberry-sensor-core:简单监控PI的核心温度和电压

    CPU温度过高可能导致系统不稳定甚至损坏硬件,而电压异常则可能影响设备的正常工作。通过"raspberry-sensor-core",用户可以获取这些关键信息,以便及时采取措施,如调整工作负载、添加散热设备或检查电源供应。 这...

    RPiLibs:Raspberry Pi库

    6. 系统信息获取:开发者可以利用库中的函数获取树莓派的系统信息,如CPU温度、内存使用情况等,以便于监控和优化系统性能。 7. 定时器和中断:RPiLibs可能还包括定时器和中断处理功能,这些功能对于实现周期性任务...

    bmp280(bcm2835).rar_BMP280_BMP280驱动

    BCM2835是Raspberry Pi(树莓派)早期型号所使用的SoC芯片,集成了ARM11 CPU和硬编码的多媒体处理单元,同时也包括了I2C控制器,使得它可以方便地与BMP280等外设进行通信。 驱动程序的主要功能可能包括以下几点: ...

    RPi4-示例

    10. **系统监控**:Python可以监控CPU温度、内存使用情况、网络状态等,确保树莓派系统的稳定运行。 通过这些示例,用户不仅可以学习到Python编程,还能深入了解树莓派4的硬件特性及其在实际应用中的潜力。

Global site tag (gtag.js) - Google Analytics