• sales

    +86-0755-88291180

3. Display usage and CPU temperature User Guide

Display usage and CPU temperature

After CPU Info LCD screen is correctly inserted into the Raspberry Pi, you need to compile and run the program to display it normally. This experiment is used to display the current CPU usage and CPU temperature of the Raspberry Pi.

1. Install the wringPi library

CPU Info LCD screen is used for data communication through the GPIO port of the Raspberry Pi, so we must install the wiringPi library file.

Enter the following command to install the wringPi library. Users who have already installed the wiringPi library can ignore this step.

cd ~

git clone git://git.drogon.net/wiringPi

cd wiringPi

./build

2.Install Drive

2.1 Transfer the driver file to the Raspberry Pi

You need to install the SSH Secure Shell Client tool on your computer. After connecting to the Raspberry Pi, transfer the cpu_show_temp.zip package from this folder to the pi directory of the Raspberry Pi.

As shown blew, drag and drop cpu_show_temp.zip directly into the Raspberry Pi system.

Download: cpu_show_temp.zip


2.2 Extract file

Open the Raspberry Pi terminal and find the cpu_show_temp.zip file.

Enter command:

ls 

  

Enter command:

unzip cpu_show_temp.zip


2.3 Enter the program folder

Enter command:

cd  ~/cpu_show_temp

ls


2.4 Compiler file

Enter command:

cc -o cpushow_temp pcd8544_rpi.c PCD8544.c  -L/usr/local/lib -lwiringPi


cc is the compile command, -o is the compile parameter, cpushow_temp is the generated program name, pcd8544_rpi.c and PCD8544.c are the source files in the current directory, -L/usr/local/lib and -lwiringPi are referenced libraries file.

2.5 Running procedure

Enter command:

sudo ./cpushow_temp


The system will print the current CPU temperature value and display the following on the CPU Info screen.


3. Code analysis

Enter command:

nano pcd8544_rpi.c

This command is to open pcd8544_rpi.c

1. The following sections are pin settings. The corresponding relationship of the GPIO ports has been indicated on the back of the LCD.


2.Main function

 

3.The front part is the initialize program and the prompt information; the latter part is a for loop,

which is display data.


Get CPU usage


①Open the /proc/stat file and read the data with the fgets function. The sscanf function saves the read parameters to the corresponding variables,

Calculates the total_1 and idle_1 read for the first time.

Delays for 1 second and clear the variable data, it has been tested that the time is less than 1 second, the problem of read data failure will occur.

The second read data is saved to total_2 and idle_2;

The value of CPU usage is calculated and stored in cpuInfo . sprintf (cpuInfo, "CPU% ld %%", avgCpuLoad); The function is a splicing function that replaces the value of avgCpuLoad to the position of% ld and saves it to cpuInfo. If the value of avgCpuLoad is 2, the CPU output of cpuInfo is 2%.

4.Get CPU temperature


5.LCD display


LCDdrawstring(0, 1, "Hello YahBoom!") meaning is first row, second line display ‘Hello YahBoom!’. First parameter is 0,which meaning is starting from the first column on the left. Second parameter is 1, which meaning is starting from the second column count from above. Third parameter is "hello YahBoom!", which meaning is data we need to display. 

Note: If you have added the boot-up display program, please edit the rc.local file comment or delete the code related to the display. After restarting, close the running driver and then operate.

If the program that has already been run is not closed, the new program will run and the screen will always change due to the conflict. 

The method of modification is as follows

sudo nano /etc/rc.local

You need to shield the program, which related to the cpu Info LCD (add a # in front of the code to shield the code)


Enter command:

sudo reboot

This command is to restart the Raspberry Pi. 

TAG: Multi Protection Raspberry Pi Game Raspberry Pi 5 5V5A Power raw display Raspberry Pi Display Raspberry Pi 15.6 inch QLED Quantum Dot Display 1920x1080 Capacitive Touchscreen For Computer PC/Jetson/Game $167.99 RP2040 LoRa Install Espressif IDF Plugin Tutorial User Guide Pi5 ESP32 Development Board WiFi+Bluetooth Ultra Low Power Dual Core ESP 32S ESP 32 Similar ESP8266 JLINK OB Solar Power Manager Module (D) Industrial Modbus RS485 RTU 8-ch Magnetic Latching Relay Module (C) With Digital Input FT232RNL USB TO TTL Industrial UART Can For Raspberry Pi 5 Terminal Debug ESP32 C6 Development Board 1.43 inch AMOLED QSPI Display 1.43inch TouchScreen Dual MIC AudioI Deepseek N16R8 Raspberry Pi MLX90640 Raspberry Pi DSI Raspberry Pi Transparent Screen RS485 to RJ45 Raspberry Pi 5 PCIe to USB Gen1 HUB and M.2 NVMe SSD PI5 Expansion board HAT+