14/01/2018, 02:01
(Questo messaggio è stato modificato l'ultima volta il: 14/01/2018, 10:29 da Zzed.)
Innanzitutto, la libreria è compatibile sia con Python 2.7 che con Python 3.4 o superiori.
Continuerò a ripetere che se uno scrive del buon codice, le differenze non sono poi così complicate..
Cominciamo :
Innanzitutto, questi display vengono comandati da Raspberry Pi tramite il protocollo SPI, che non è abilitato di default in Raspbian (e nemmeno in DietPi, che ho usato io), ma senza perderci in stranezze, con Raspbian o i suoi derivati eseguire
scegliere l'opzione 9 con le frecce
poi scegliere A6 SPI
rispondere YES quando chiede se abilitare SPI
rispondere ancora YES qdo chiederà se deve caricare automaticamente il modulo del kernel
usare la freccia a destra per scegliere FINISH
Scegliere YES quando chiederà di riavviare
quando riavviato, col comando lsmod possiamo verificare che se il driver SPI è caricato e attivo nel sistema (deve comparire qualcosa come "spi_bcm2835" o "spi_bcm2807".. a seconda del modello di Raspberry Pi).
Cablaggio:
Usa il cavetto a corredo (o cinque cavetti dupont) per collegare il piedino 1 del display al +5V del Raspberry, il pin 2 alla GND del Raspberry, il piedino 3 al GPIO10 e il piedino 4 al GPIO8, il piedino 5 al GPIO11 del Raspberry.
Installazione:
Installiamo prima le dipendenze:
poi la directoy della libreria vera e propria:
esempi..
prendiamoli da GitHub:
eseguiamoli con
Ora il tuo display dovbrà accendersi e animarsi. Probabilmente non in modo propriamente corretto (solitamente i moduli 4x1 hanno i moduli led girati di 90°), ma non preoccupari, non è un gran problema..
----
facciamo una prova rapida visualizzando l'orario, come in una radiosvegia:
scrivi questo codice in un file di testo, e chiamalo displaysveglia.py
ora dal terminale digita python displaysveglia.py
dovresti ottenere il risultato della gif animata del post precedente.
per fermare il tutto, ctrl+c nel terminale
Continuerò a ripetere che se uno scrive del buon codice, le differenze non sono poi così complicate..
Cominciamo :
Innanzitutto, questi display vengono comandati da Raspberry Pi tramite il protocollo SPI, che non è abilitato di default in Raspbian (e nemmeno in DietPi, che ho usato io), ma senza perderci in stranezze, con Raspbian o i suoi derivati eseguire
Codice:
sudo raspi-config
poi scegliere A6 SPI
rispondere YES quando chiede se abilitare SPI
rispondere ancora YES qdo chiederà se deve caricare automaticamente il modulo del kernel
usare la freccia a destra per scegliere FINISH
Scegliere YES quando chiederà di riavviare
quando riavviato, col comando lsmod possiamo verificare che se il driver SPI è caricato e attivo nel sistema (deve comparire qualcosa come "spi_bcm2835" o "spi_bcm2807".. a seconda del modello di Raspberry Pi).
Cablaggio:
Codice:
| Display | | | Raspberry | |
|:-------:|:----:|:-----------:|:---------:|:-----------------:|
| Scheda | Nome | Note | Pin | Funzione |
| 1 | VCC | +5V Power | 2 | 5V0 |
| 2 | GND | Massa | 6 | GND |
| 3 | DIN | Data In | 19 | GPIO 10 (MOSI) |
| 4 | CS | Chip Select | 24 | GPIO 8 (SPI CE0) |
| 5 | CLK | Clock | 23 | GPIO 11 (SPI CLK) |
Usa il cavetto a corredo (o cinque cavetti dupont) per collegare il piedino 1 del display al +5V del Raspberry, il pin 2 alla GND del Raspberry, il piedino 3 al GPIO10 e il piedino 4 al GPIO8, il piedino 5 al GPIO11 del Raspberry.
Installazione:
Installiamo prima le dipendenze:
Codice:
sudo usermod -a -G spi,gpio pi
sudo apt-get install build-essential python-dev python-pip libfreetype6-dev libjpeg-dev
sudo -i pip install --upgrade pip setuptools
sudo apt-get purge python-pip
poi la directoy della libreria vera e propria:
Codice:
sudo -H pip install --upgrade luma.led_matrix
esempi..
prendiamoli da GitHub:
Codice:
git clone https://github.com/rm-hull/luma.led_matrix.git
Codice:
cd luma.led_matrix
Codice:
python examples/matrix_demo.py
Ora il tuo display dovbrà accendersi e animarsi. Probabilmente non in modo propriamente corretto (solitamente i moduli 4x1 hanno i moduli led girati di 90°), ma non preoccupari, non è un gran problema..
----
facciamo una prova rapida visualizzando l'orario, come in una radiosvegia:
scrivi questo codice in un file di testo, e chiamalo displaysveglia.py
Codice:
import time
from luma.core.interface.serial import spi, noop
from luma.core.render import canvas
from luma.led_matrix.device import max7219
from luma.core import legacy
from luma.core.legacy import text, show_message
from luma.core.legacy.font import proportional, CP437_FONT, TINY_FONT, SINCLAIR_FONT, LCD_FONT
serial = spi(port=0, device=0, gpio=noop())
device = max7219(serial, cascaded=4, block_orientation=-90)
while True:
ora = time.strftime("%H:%M")
orax = time.strftime("%H.%M")
with canvas(device) as draw:
legacy.text(draw, (0, 0), ora, fill="white", font=proportional(CP437_FONT))
time.sleep(1)
with canvas(device) as draw:
legacy.text(draw, (0, 0), orax, fill="white", font=proportional(CP437_FONT))
time.sleep(1)
ora dal terminale digita python displaysveglia.py
dovresti ottenere il risultato della gif animata del post precedente.
per fermare il tutto, ctrl+c nel terminale