Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Trong hướng dẫn này, tôi sẽ giải thích cách thiết lập mô-đun màn hình OLED 0,96 inch để hiển thị thông tin hệ thống của Raspberry Pi 4 Model B bằng giao diện I2C của nó.
Quân nhu
Yêu cầu phần cứng:
- Raspberry Pi 4 Model B
- Mô-đun màn hình OLED 128 × 64 (SSD1306)
- Kết nối dây
Bước 1: Kết nối phần cứng
Dưới đây là các kết nối của mô-đun OLED với Raspberry Pi 4 Model B:
- SDA ==> GPIO 2 (chân 3)
- SCL ==> GPIO 3 (chân 5)
- VCC ==> 3.3V (chân 1)
- GND ==> GND (pin 14)
Bước 2: Kích hoạt giao diện I2C
Giao diện I2C bị tắt theo mặc định, vì vậy bạn cần phải kích hoạt nó. Bạn có thể thực hiện việc này trong công cụ raspi-config trên dòng lệnh bằng cách chạy:
sudo raspi-config
- Màn hình màu xanh lam sẽ xuất hiện. Bây giờ chọn tùy chọn Interfacing.
- Sau đó, chúng ta cần chọn tùy chọn I2C.
- Sau đó, chúng ta cần chọn Yes và nhấn enter rồi ok.
- Sau đó, chúng ta cần khởi động lại Raspberry Pi bằng cách gõ lệnh dưới đây:
khởi động lại sudo
Các thư viện sau có thể đã được cài đặt nhưng vẫn chạy các lệnh này để đảm bảo:
sudo apt-get install python-smbus
sudo apt-get install i2c-tools
Để tìm danh sách các thiết bị được kết nối với bus I2C trên Raspberry Pi, bạn có thể sử dụng lệnh sau:
sudo i2cdetect -y 1
Trên Raspberry Pi cũ hơn, nhập lệnh sau:
sudo i2cdetect -y 0
Đây là kết quả tôi thấy trên Raspberry Pi 4 Model B của mình:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: - - - - - - - - - - - - 3c - - -
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Nó cho thấy thiết bị đã được phát hiện có địa chỉ 0x3c. Đây là địa chỉ hex mặc định cho loại thiết bị này.
Bước 3: Cài đặt Thư viện Python Adafruit cho Mô-đun màn hình OLED
Để cài đặt thư viện, chúng tôi sẽ sao chép kho lưu trữ git của Adafruit.
git clone
Sau khi hoàn tất, hãy điều hướng đến thư mục của thư viện:
cd Adafruit_Python_SSD1306
và cài đặt thư viện cho Python 2:
sudo python setup.py cài đặt
hoặc đối với Python 3:
sudo python3 setup.py cài đặt
Bước 4: Tập lệnh Python theo dõi hệ thống
Điều hướng vào thư mục ví dụ:
ví dụ cd
Trong thư mục này, bạn sẽ tìm thấy tập lệnh mẫu:
stats.py
python3 stats.py
Theo mặc định, nó hiển thị mức sử dụng bộ nhớ, mức sử dụng đĩa, tải CPU và địa chỉ ip. Ngoài ra, tiền tố b ở phía trước mỗi chuỗi có thể được nhìn thấy.
Nó sẽ được sửa đổi một chút để loại bỏ tiền tố b và thêm nhiệt độ CPU của Raspberry Pi 4 Model B.
cmd = "tên máy chủ -I | cut -d / '\' -f1"
sẽ được thay thế bằng dòng sau:
cmd = "tên máy chủ -I | cut -f 2 -d ''"
Mã này hoàn hảo khi khởi động khi bạn muốn tìm địa chỉ IP của Raspberry Pi cho SSH hoặc VNC.
Các dòng sau sẽ được thêm vào để hiển thị nhiệt độ CPU trên mô-đun màn hình OLED:
cmd = "vcgencmd Measure_temp | cut -f 2 -d '='"
temp = subprocess.check_output (cmd, shell = True)
Mã bên dưới đã được sửa đổi cho phù hợp để loại bỏ ký tự 'b' khỏi màn hình OLED.
draw.text ((x, top), "IP:" + str (IP, 'utf-8'), font = font, fill = 255) draw.text ((x, top + 8), str (CPU, 'utf-8') + "" + str (temp, 'utf-8'), font = font, fill = 255) draw.text ((x, top + 16), str (MemUsage, 'utf-8')), font = font, fill = 255) draw.text ((x, top + 25), str (Disk, 'utf-8'), font = font, fill = 255)
Cuối cùng, bạn sẽ thấy một cái gì đó tương tự như đầu ra sau trên màn hình OLED:
Bước 5: Chạy Stats.py khi khởi động
Bạn có thể dễ dàng tạo ra nó để chương trình này chạy mỗi khi bạn khởi động Raspberry Pi.
Cách nhanh nhất và dễ nhất là đặt nó vào /etc/rc.local. Chạy lệnh dưới đây trên thiết bị đầu cuối:
sudo nano /etc/rc.local
Cuộn xuống và ngay trước dòng thoát 0, nhập thông tin sau:
sudo python /home/pi/stats.py &
- Lưu và thoát.
- Khởi động lại để xác minh rằng màn hình xuất hiện khi khởi động!