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. 

Price: $9.89
Part Number: 1.6inch-Cpuinfo-LCD
Brand: Spotpear
SKU: 0105217