Obsah:

Otočení displeje a dotykové obrazovky Raspberry Pi: 4 kroky
Otočení displeje a dotykové obrazovky Raspberry Pi: 4 kroky

Video: Otočení displeje a dotykové obrazovky Raspberry Pi: 4 kroky

Video: Otočení displeje a dotykové obrazovky Raspberry Pi: 4 kroky
Video: Leap Motion SDK 2024, Listopad
Anonim
Otočte displej a dotykovou obrazovku Raspberry Pi
Otočte displej a dotykovou obrazovku Raspberry Pi
Otočte displej a dotykovou obrazovku Raspberry Pi
Otočte displej a dotykovou obrazovku Raspberry Pi

Toto je základní instruktáž, která vám ukáže, jak otočit vstup displeje a dotykové obrazovky pro jakýkoli Raspberry Pi s operačním systémem Buster Raspbian, ale tuto metodu používám od Jessie. Obrázky zde použité jsou z Raspberry Pi 3 B+ se systémem Raspbian Buster s 3,5 dotykovým TFT LCD displejem.

Použitá dotyková obrazovka je fantastická, pokud ji chcete, najdete ji na tomto odkazu z amazonu:

www.amazon.com/Raspberry-35 = c & hvdvcmdl = & hvlocint = & hvlocphy = 9027898 & hvtargid = pla-667157280173 & psc = 1

Krok 1: Otočení displeje

Otočení displeje
Otočení displeje
Otočení displeje
Otočení displeje
Otočení displeje
Otočení displeje

Malinový pi displej lze velmi snadno otáčet, protože existuje možnost, kterou můžete vložit do /boot/config.txt, která vám umožní otočit obrazovku o jeden řádek.

Chcete -li otočit, jednoduše otevřete terminál (ctrl + alt + t) a zadejte „sudo nano /boot/config.txt“

Přejděte do spodní části souboru a zadejte, co potřebujete k otočení obrazovky, jak chcete:

# Výchozí orientace

display_rotate = 0

# Otočit o 90 ° ve směru hodinových ručiček

display_rotate = 3

# Otočit o 180 °

display_rotate = 2

# Otočit o 270 ° ve směru hodinových ručiček

display_rotate = 1

Krok 2: Proč dotyková obrazovka potřebuje otáčení

Proč dotykový displej potřebuje otáčení
Proč dotykový displej potřebuje otáčení
Proč dotykový displej potřebuje otáčení
Proč dotykový displej potřebuje otáčení

Dotyková obrazovka je trochu komplikovanější, spoléhá na matici, která přijímá vstupy a mapuje je na novou pozici. To se provádí pomocí 3 -dimenzionální transformační matice, která je v robotice a vesmírné fyzice velmi běžná pro popis pohybu objektu ve 3D prostoru. Možná si říkáte, proč můj 2D kurzor potřebuje 3D matici? Ale váš kurzor má ve skutečnosti třetí dimenzi, která je nevyužita. Podívejte se na matematiku níže:

Ve výchozím nastavení je matice nastavena na matici identity a matici, což znamená mapování jeden na jednoho: (Tečky jsou zástupné symboly, které pomáhají uspořádat věci, představte si, že tam nejsou, Inscrutables odstraní mezery)

……| 1 0 0 |

Já = | 0 1 0 |

……| 0 0 1 |

Když se tato matice vynásobí vstupním vektorem daným vaší dotykovou obrazovkou, stane se toto:

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

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

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

Jak vidíte výše, matice identity nemá vliv na výstup. Účelem této instrukce nyní není naučit vás násobení matic, ale pokud vás to zajímá, existuje spousta online návodů. Ukážu vám matematickou stránku, jen abyste viděli důkaz, jak a proč se to děje.

Pokud bychom chtěli otočit touschscreen o 90 ° (ve směru hodinových ručiček), použili bychom tuto matici:

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

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

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

Takže jak vidíte, hodnoty x a y se nyní změnily, ale nová hodnota x je také záporná. Je trochu obtížné si to představit, takže se podívejte na můj příklad na obrázcích. Linka je sledována od středu doprava, nyní, když je otočena o 90 ° (ve směru hodinových ručiček), si všimnete, že trasovaná čára jde od středu -> doprava (+x) do středu -> dolů (-y), a proto je vstupní vektor je třeba jako takový změnit. Zbytek rotačních matic je uveden v dalším kroku, ale nyní víte trochu více o tom, co se děje!

Krok 3: Otáčení dotykové obrazovky

Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky
Otáčení dotykové obrazovky

Znovu přejděte ke svému terminálu a zadejte „cd /usr/share/X11/xorg.conf.d/“, pokud váš dotykový displej alespoň detekuje dotyky, měl by zde být konfigurační soubor.

Chcete -li zobrazit aktuální soubory, zadejte „ls“, měl by tam být váš kalibrační soubor, pokud nevíte, který je váš, otevřete každý (pomocí „nano your_file_name“) a najděte soubor, který má sekci s „Identifikátorem… dotyková obrazovka catchall “. S největší pravděpodobností to bude buď ten, který má v názvu „evdev“nebo „libinput“. Jakmile to najdete, udělejte „sudo nano your_file_name“, abyste získali přístup pro zápis a soubor upravili.

Přejděte do své sekce a do spodní části „Sekce“přidejte správnou „Možnost“.

Všechny jsou ve směru hodinových ručiček:

90 ° = Možnost "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"

180 ° = Možnost "TransformationMatrix" "-1 0 1 0 -1 1 0 0 1"

270 ° = Možnost "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"

Krok 4: To je ono

Naštěstí to pomůže spoustě začínajících nadšenců Raspberry Pi! Vidím lidi, kteří s tímto problémem neustále bojují, takže pokud náhodou narazíte na někoho ve fóru, kdo potřebuje pomoc, pošlete mu odkaz sem. Šťastné vymýšlení mých přátel!

Doporučuje: