Sommario:

Ruota il display e il touchscreen del Raspberry Pi: 4 passaggi
Ruota il display e il touchscreen del Raspberry Pi: 4 passaggi

Video: Ruota il display e il touchscreen del Raspberry Pi: 4 passaggi

Video: Ruota il display e il touchscreen del Raspberry Pi: 4 passaggi
Video: Il display giusto per il tuo Raspberry Pi 2024, Novembre
Anonim
Ruota il display e il touchscreen del Raspberry Pi
Ruota il display e il touchscreen del Raspberry Pi
Ruota il display e il touchscreen del Raspberry Pi
Ruota il display e il touchscreen del Raspberry Pi

Questo è un Instructable di base per mostrarti come ruotare il display e l'input touchscreen per qualsiasi Raspberry Pi che esegue il sistema operativo Buster Raspbian, ma ho usato questo metodo sin da Jessie. Le immagini utilizzate in questo provengono da un Raspberry Pi 3 B+ che esegue Raspbian Buster con un touchscreen LCD TFT da 3,5.

Il touchscreen utilizzato è fantastico, se ne volete uno lo trovate a questo link di amazon:

www.amazon.com/Raspberry-320x480-Monitor-Raspbian-RetroPie/dp/B07N38B86S/ref=asc_df_B07N38B86S/?tag=hyprod-20&linkCode=df0&hvadid=312824707815&hvv62=312824707815&hvpos6209=1o19&hvvrtandw=89157= =c&hvdvcmdl=&hvlocint=&hvlocphy=9027898&hvtargid=pla-667157280173&psc=1

Passaggio 1: rotazione del display

Rotazione del display
Rotazione del display
Rotazione del display
Rotazione del display
Rotazione del display
Rotazione del display

Il display raspberry pi è molto facile da ruotare perché c'è un'opzione che puoi inserire in /boot/config.txt che ti consente di ruotare lo schermo con una riga.

Per ruotare è sufficiente aprire il terminale (ctrl + alt + t) e quindi digitare "sudo nano /boot/config.txt"

Vai alla fine del file e digita ciò che ti serve per ruotare lo schermo come desideri:

# Orientamento predefinito

display_rotate=0

# Ruota di 90° in senso orario

display_rotate=3

# Ruota di 180°

display_rotate=2

# Ruota di 270° in senso orario

display_rotate=1

Passaggio 2: perché il touchscreen deve essere ruotato?

Perché il touchscreen deve essere ruotato
Perché il touchscreen deve essere ruotato
Perché il touchscreen deve essere ruotato
Perché il touchscreen deve essere ruotato

Il touchscreen è un po' più complicato, si basa su una matrice per prendere gli input e mapparli in una nuova posizione. Questo viene fatto con una matrice di trasformazione tridimensionale che sono molto comuni nella robotica e nella fisica spaziale per descrivere il movimento di un oggetto in uno spazio 3D. Potresti pensare perché il mio cursore 2D ha bisogno di una matrice 3D? Ma il tuo cursore ha in realtà una terza dimensione inutilizzata. Vedi la matematica qui sotto:

Per impostazione predefinita, la matrice è impostata su e matrice identità, ovvero una mappatura uno a uno: (I punti sono segnaposto per aiutare ad allineare le cose, immagina che non siano lì, Inscrutables rimuove gli spazi)

……| 1 0 0 |

io = | 0 1 0 |

……| 0 0 1 |

Quando questa matrice viene moltiplicata per il vettore di input fornito dal tuo touchscreen, questo è ciò che accade:

| 1 0 0 |….| 300 |…..| 300 |

| 0 1 0 | * | 200 | = | 200 |

| 0 0 1 |…….| 1 |……….| 1 |

Come si vede sopra, la matrice identità non influisce sull'output. Ora lo scopo di questo tutorial non è insegnarti la moltiplicazione di matrici, ma se sei interessato ci sono molti tutorial online. Mostrerò il lato matematico di questo solo così puoi vedere la prova di come e perché questo sta accadendo.

Se volessimo ruotare il touch screen di 90° (in senso orario) allora useremmo questa matrice:

| 0 -1 1 |…| 300 |….|-200 |

| 1 0 0 | * | 200 | = | 300 |

| 0 0 1 |……..| 1 |………| 1 |

Quindi, come vedi, i valori x e y sono ora cambiati, ma anche il nuovo valore x è negativo. È un po' difficile da visualizzare, quindi guarda il mio esempio nelle immagini. Viene tracciata una linea dal centro verso destra, ora quando viene ruotata di 90° (in senso orario), si nota che la linea tracciata va da centro -> destra (+x) a centro -> giù (-y) ed è per questo che il il vettore di input deve essere modificato come tale. Il resto delle matrici di rotazione è elencato nel passaggio successivo, ma ora sai qualcosa in più su cosa sta succedendo!

Passaggio 3: rotazione del touchscreen

Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen
Rotazione del touchscreen

Vai di nuovo al tuo terminale e digita "cd /usr/share/X11/xorg.conf.d/", se il tuo touchscreen sta almeno rilevando i tocchi, il file di configurazione dovrebbe essere qui.

Digita "ls" per elencare i file correnti, il tuo file di calibrazione dovrebbe essere lì, se non sai qual è il tuo aprili (usando "nano your_file_name") e trovane uno che ha una sezione che ha "Identifier … touchscreen". Molto probabilmente sarà uno che ha "evdev" o "libinput" nel titolo. Una volta trovato, fai "sudo nano your_file_name" per ottenere l'accesso in scrittura e modificare il file.

Vai alla tua sezione e aggiungi l'"Opzione" corretta in fondo alla "Sezione".

Tutti sono con prospettiva in senso orario:

90° = Opzione "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"

180° = Opzione "TransformationMatrix" "-1 0 1 0 -1 1 0 0 1"

270° = Opzione "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"

Passaggio 4: è tutto

Speriamo che questo aiuti molti appassionati di Raspberry Pi a iniziare! Vedo persone che lottano continuamente con questo problema, quindi se ti capita di imbatterti in qualcuno in un forum che ha bisogno di aiuto, invia loro un link a qui. Felice di inventare i miei amici!

Consigliato: