Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
U ovom ću vodiču objasniti kako postaviti 0,96 inčni OLED modul za prikaz za prikaz informacija o sustavu Raspberry Pi 4 Model B koristeći njegovo I2C sučelje.
Pribor
Potreban hardver:
- Raspberry Pi 4 Model B
- 128 × 64 OLED modul zaslona (SSD1306)
- Spajanje žica
Korak 1: Povezivanje hardvera
Dolje su prikazane veze OLED modula s Raspberry Pi 4 modelom B:
- SDA ==> GPIO 2 (pin 3)
- SCL ==> GPIO 3 (pin 5)
- VCC ==> 3,3 V (pin 1)
- GND ==> GND (pin 14)
Korak 2: Omogućite I2C sučelje
Sučelje I2C prema zadanim je postavkama onemogućeno pa ga morate omogućiti. To možete učiniti unutar alata raspi-config u naredbenom retku pokretanjem:
sudo raspi-config
- Pojavit će se plavi zaslon. Sada odaberite opciju Interfacing.
- Nakon toga moramo odabrati I2C opciju.
- Nakon toga moramo odabrati Da i pritisnuti enter, a zatim u redu.
- Nakon toga moramo ponovno pokrenuti Raspberry Pi upisivanjem naredbe ispod:
sudo ponovno podizanje sustava
Sljedeće knjižnice možda su već instalirane, ali svejedno pokrenite ove naredbe kako biste bili sigurni:
sudo apt-get install python-smbus
sudo apt-get install i2c-tools
Da biste pronašli popis uređaja spojenih na I2C sabirnicu na Raspberry Pi -u, možete koristiti sljedeću naredbu:
sudo i2cdetect -y 1
Na starijem Raspberry Pi upišite sljedeću naredbu:
sudo i2cdetect -y 0
Evo rezultata koji vidim na svom Raspberry Pi 4 modelu B:
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: -- -- -- -- -- -- -- --
Pokazalo se da je uređaj otkriven s adresom 0x3c. Ovo je zadana heksadecimalna adresa za ovu vrstu uređaja.
Korak 3: Instalirajte Adafruit Python knjižnicu za OLED zaslonski modul
Za instaliranje knjižnice klonirat ćemo Adafruit git spremište.
git klon
Nakon dovršetka idite u direktorij biblioteke:
cd Adafruit_Python_SSD1306
i instalirajte knjižnicu za Python 2:
sudo python setup.py install
ili za Python 3:
sudo python3 setup.py install
Korak 4: Sistemski monitor Python Script
Idite u direktorij primjera:
cd primjeri
U ovoj mapi trebali biste pronaći primjer skripte:
stats.py
python3 stats.py
Prema zadanim postavkama prikazuje upotrebu memorije, upotrebu diska, opterećenje CPU -a i IP adresu. Također, b-prefiks ispred svakog niza može se vidjeti.
Bit će malo izmijenjen kako bi se riješio b-prefiksa i dodala temperatura procesora Raspberry Pi 4 Model B.
cmd = "naziv hosta -I | izrezati -d / '\' -f1"
zamijenit će se sljedećim retkom:
cmd = "ime hosta -I | izrezati -f 2 -d ''"
Ovaj je kod savršen pri pokretanju kada želite pronaći IP adresu svoje Raspberry Pi za SSH ili VNC.
Sljedeći retci bit će dodani za prikaz temperature procesora na OLED zaslonskom modulu:
cmd = "vcgencmd mjera_templa | izrezati -f 2 -d '='"
temp = podproces.check_output (cmd, ljuska = True)
Donji kôd je prema tome izmijenjen kako bi se uklonio znak 'b' s OLED zaslona.
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)
Konačno, trebali biste vidjeti nešto slično sljedećem izlazu na OLED zaslonu:
Korak 5: Pokretanje Stats.py pri pokretanju
Možete ga jednostavno napraviti tako da se ovaj program pokreće svaki put kada pokrenete svoj Raspberry Pi.
Najbrži i najjednostavniji način je staviti ga u /etc/rc.local. Pokrenite naredbu ispod na terminalu:
sudo nano /etc/rc.local
Pomaknite se prema dolje i neposredno prije izlazne linije 0 unesite sljedeće:
sudo python /home/pi/stats.py &
- Spremi i izađi.
- Ponovo pokrenite sustav kako biste provjerili pojavljuje li se zaslon prilikom pokretanja!