Sadržaj:

Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir: 4 koraka
Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir: 4 koraka

Video: Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir: 4 koraka

Video: Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir: 4 koraka
Video: SKR PRO V1.1 TFT35 V2 2024, Novembar
Anonim
Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir
Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir
Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir
Rotirajte Raspberry Pi ekran i ekran osetljiv na dodir

Ovo je osnovni Instructable koji će vam pokazati kako rotirati unos ekrana i ekrana osjetljivog na dodir za bilo koji Raspberry Pi koji radi na Buster Raspbian operativnom sistemu, ali ovu metodu koristim od Jessie. Slike korištene u ovom snimku su sa Raspberry Pi 3 B+ koji pokreće Raspbian Buster sa 3,5 TFT LCD ekranom osjetljivim na dodir.

Korišteni zaslon osjetljiv na dodir je fantastičan, ako ga želite, možete ga pronaći na ovoj amazonskoj vezi:

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

Korak 1: Rotiranje ekrana

Rotiranje ekrana
Rotiranje ekrana
Rotiranje ekrana
Rotiranje ekrana
Rotiranje ekrana
Rotiranje ekrana

Raspored malina pi displeja je vrlo jednostavan za rotiranje jer postoji opcija koju možete staviti u /boot/config.txt koja vam omogućava da rotirate ekran jednom linijom.

Za rotiranje jednostavno otvorite terminal (ctrl + alt + t), a zatim upišite "sudo nano /boot/config.txt"

Idite na dno datoteke i upišite ono što vam je potrebno da biste rotirali ekran onako kako želite:

# Zadana orijentacija

display_rotate = 0

# Rotirajte 90 ° u smjeru kazaljke na satu

display_rotate = 3

# Rotirajte za 180 °

display_rotate = 2

# Rotirajte 270 ° u smjeru kazaljke na satu

display_rotate = 1

Korak 2: Zašto se zaslon osjetljiv na dodir treba rotirati

Zašto se zaslon osjetljiv na dodir treba rotirati
Zašto se zaslon osjetljiv na dodir treba rotirati
Zašto se zaslon osjetljiv na dodir treba rotirati
Zašto se zaslon osjetljiv na dodir treba rotirati

Zaslon osjetljiv na dodir je malo složeniji, oslanja se na matricu za preuzimanje unosa i mapiranje na novu poziciju. To se postiže pomoću trodimenzionalne transformacijske matrice koja je vrlo česta u robotici i svemirskoj fizici za opisivanje kretanja objekta u 3D prostoru. Možda razmišljate zašto je mom 2D kursoru potrebna 3D matrica? Ali vaš kursor zapravo ima treću dimenziju koja se ne koristi. Matematiku pogledajte u nastavku:

Prema zadanim postavkama matrica je postavljena na i matrica identiteta, što znači mapiranje jedan-na-jedan: (Točke su čuvari mjesta koje pomažu pri sravnjivanju stvari, zamislite da nisu tu, Inscrutables uklanja razmake)

……| 1 0 0 |

I = | 0 1 0 |

……| 0 0 1 |

Ovo se događa kada se ova matrica pomnoži s ulaznim vektorom koji daje vaš zaslon osjetljiv na dodir:

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

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

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

Kao što vidite gore, matrica identiteta ne utiče na izlaz. Svrha ovog uputstva nije da vas nauči matričnom množenju, ali ako vas zanima, na internetu postoji mnogo vodiča. Pokazat ću matematičku stranu ovoga samo da vidite dokaze kako se i zašto to događa.

Da želimo zakrenuti touschscreen za 90 ° (u smjeru kazaljke na satu), koristili bismo ovu matricu:

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

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

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

Kao što vidite, vrijednosti x i y su se sada promijenile, ali je nova vrijednost x također negativna. Malo je teško vizualizirati, pa pogledajte moj primjer na slikama. Linija se prati od centra na desno, sada kada se rotira 90 ° (u smjeru kazaljke na satu), primijetite da iscrtana linija ide od centra -> desno (+x) do centra -> dolje (-y) i to je razlog zašto ulazni vektor je potrebno promijeniti kao takav. Ostatak matrica rotacije naveden je u sljedećem koraku, ali sada znate malo više o tome što se događa!

Korak 3: Rotiranje ekrana osjetljivog na dodir

Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir
Rotiranje ekrana osetljivog na dodir

Ponovno idite na svoj terminal i upišite "cd /usr/share/X11/xorg.conf.d/", ako vaš zaslon osjetljiv na dodir barem detektira dodire, tada bi konfiguracijska datoteka trebala biti ovdje.

Upišite "ls" za ispis trenutnih datoteka, vaša kalibracijska datoteka trebala bi biti tamo, ako ne znate koja je vaša, otvorite svaku (koristeći "nano your_file_name") i pronađite onu koja ima odjeljak koji ima "Identifier … hvatanje ekrana osjetljivog na dodir ". Najvjerovatnije će to biti ili onaj koji u naslovu ima "evdev" ili "libinput". Kada ga pronađete, učinite "sudo nano your_file_name" da biste dobili pristup pisanju i uredili datoteku.

Idite na svoj odjeljak i dodajte ispravnu "opciju" pri dnu "odjeljka".

Svi su iz perspektive kazaljke na satu:

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

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

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

Korak 4: To je to

Nadajmo se da će ovo mnogo pomoći početnicima Raspberry Pi entuzijasta! Vidim da se ljudi stalno bore s ovim problemom, pa ako slučajno naiđete na nekoga na forumu kome je potrebna pomoć, jednostavno im pošaljite link ovdje. Sretno što sam izmislio prijatelje!

Preporučuje se: