Obsah:
- Krok 1: Součásti
- Krok 2: Připojte dotykový displejový štít ILI9341 TFT k Arduinu
- Krok 3: Spusťte Visuino a přidejte TFT Display Shield
- Krok 4: Ve Visuinu: Přidejte nakreslený textový prvek pro textový stín
- Krok 5: Ve Visuinu: Přidejte kreslený textový prvek do popředí textu
- Krok 6: Ve Visuinu: Přidejte prvek kreslení bitmapy pro animaci
- Krok 7: Ve Visuinu: Přidejte piny pro vlastnosti X a Y prvku Kreslení bitmapy
- Krok 8: Ve Visuinu: Přidejte 2 celočíselné sinusové generátory a nakonfigurujte první
- Krok 9: Ve Visuinu: Konfigurujte druhý generátor sinusů a připojte generátory sinus k souřadnicovým pinům X a Y bitmapy
- Krok 10: Ve Visuinu: Přidejte a připojte Start a Clock Multi Source komponenty
- Krok 11: Generujte, kompilujte a nahrajte kód Arduino
- Krok 12: A hrajte…
Video: Arduino Uno: Bitmapová animace na ILI9341 TFT dotykový displej štít s Visuino: 12 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:24
Štíty dotykových displejů TFT založené na ILI9341 jsou velmi oblíbené levné štíty displeje pro Arduino. Visuino pro ně má podporu už nějakou dobu, ale nikdy jsem neměl šanci napsat návod, jak je používat. Nedávno se však málo lidí ptalo na používání displejů s Visuinem, a tak jsem se rozhodl udělat tutoriál.
V tomto tutoriálu vám ukážu, jak snadné je připojit Shield k Arduinu a naprogramovat jej pomocí Visuina k animaci bitmapy pro pohyb po displeji.
Krok 1: Součásti
- Jedna deska kompatibilní s Arduino Uno (Může fungovat i s Mega, ale štít jsem s ní zatím netestoval)
- Jeden 2,4palcový dotykový štít TFT ILI9341 pro Arduino
Krok 2: Připojte dotykový displejový štít ILI9341 TFT k Arduinu
Připojte TFT štít na horní část Arduino Uno, jak je znázorněno na obrázcích
Krok 3: Spusťte Visuino a přidejte TFT Display Shield
Chcete -li začít programovat Arduino, musíte mít nainstalované Arduino IDE zde:
Ujistěte se, že instalujete 1.6.7 nebo vyšší, jinak tento Instructable nebude fungovat
Je také třeba nainstalovat Visuino:
- Spusťte Visuino, jak je znázorněno na prvním obrázku
- Kliknutím na tlačítko „Šipka dolů“na komponentě Arduino otevřete rozbalovací nabídku (obrázek 1)
- V nabídce vyberte „Přidat štíty…“(obrázek 1)
- V dialogu "Štíty" rozbalte kategorii "Displeje" a vyberte "TFT barevný dotykový displej ILI9341 štít", poté jej přidejte kliknutím na tlačítko "+" (obrázek 2)
Krok 4: Ve Visuinu: Přidejte nakreslený textový prvek pro textový stín
Dále musíme přidat grafické prvky k vykreslení textu a bitmapy. Nejprve přidáme grafický prvek k vykreslení stínu textu:
- V inspektoru objektů klikněte na tlačítko „…“vedle hodnoty vlastnosti „Prvky“prvku „Zobrazení TFT“(obrázek 1)
- V editoru Prvky vyberte „Nakreslit text“a poté klikněte na tlačítko „+“(obrázek 2) a jeden přidejte (obrázek 3)
- V Object Inspector nastavte hodnotu vlastnosti „Color“prvku „Draw Text1“na „aclSilver“(obrázek 3)
- V inspektoru objektů nastavte hodnotu vlastnosti „Velikost“prvku „Nakreslit text1“na „4“(obrázek 4). Tím je text větší
- V Object Inspector nastavte hodnotu vlastnosti „Text“prvku „Draw Text1“na „Visuino“(obrázek 5)
- V inspektoru objektů nastavte hodnotu vlastnosti „X“prvku „Draw Text1“na „43“(obrázek 6)
- V inspektoru objektů nastavte hodnotu vlastnosti „Y“prvku „Draw Text1“na „278“(obrázek 6)
Krok 5: Ve Visuinu: Přidejte kreslený textový prvek do popředí textu
Nyní přidáme grafický prvek k vykreslení textu:
- V editoru prvků vyberte „Nakreslit text“a poté kliknutím na tlačítko „+“(obrázek 1) přidejte druhý (obrázek 2)
- V inspektoru objektů nastavte hodnotu vlastnosti „Velikost“prvku „Nakreslit text1“na „4“(obrázek 2)
- V Object Inspector nastavte hodnotu vlastnosti „Text“prvku „Draw Text1“na „Visuino“(obrázek 3)
- V inspektoru objektů nastavte hodnotu vlastnosti „X“prvku „Draw Text1“na „40“(obrázek 4)
- V inspektoru objektů nastavte hodnotu vlastnosti „Y“prvku „Draw Text1“na „275“(obrázek 4)
Krok 6: Ve Visuinu: Přidejte prvek kreslení bitmapy pro animaci
Dále přidáme grafický prvek k vykreslení bitmapy:
- V editoru Prvky vyberte „Nakreslit bitmapu“a poté klikněte na tlačítko „+“(obrázek 1) a přidejte jej (obrázek 2)
- V inspektoru objektů kliknutím na tlačítko „…“vedle hodnoty vlastnosti „Bitmap“prvku „Draw Bitmap1“(obrázek 2) otevřete „Bitmap Editor“(obrázek 3)
- V „Bitmap Editor“klikněte na tlačítko „Načíst…“(obrázek 3) a otevřete dialogové okno Otevřít soubor (obrázek 4)
- V dialogu Otevřít soubor vyberte bitmapu, kterou chcete nakreslit, a klikněte na tlačítko „Otevřít“(obrázek 4). Pokud je soubor příliš velký, nemusí se vejít do paměti Arduina. Pokud během kompilace dojde k chybě paměti, možná budete muset vybrat menší bitmapu
- V „Editoru bitmap“klikněte na „OK“. tlačítko (Obrázek 5) zavřete dialog
Krok 7: Ve Visuinu: Přidejte piny pro vlastnosti X a Y prvku Kreslení bitmapy
Abychom mohli animovat bitmapu, musíme ovládat její polohu X a Y. Za tímto účelem přidáme piny pro vlastnosti X a Y:
- V inspektoru objektů klikněte na tlačítko „Pin“před vlastností „X“prvku „Draw Bitmap1“(obrázek 1) a vyberte „Integer SinkPin“(obrázek 2)
- V inspektoru objektů klikněte na tlačítko „Pin“před vlastností „Y“prvku „Draw Bitmap1“(obrázek 3) a vyberte „Integer SinkPin“(obrázek 4)
Krok 8: Ve Visuinu: Přidejte 2 celočíselné sinusové generátory a nakonfigurujte první
K animaci pohybu bitmapy použijeme 2 celočíselné sinusové generátory:
- Do pole Filtr nástroje Component Toolbox zadejte „sine“, poté vyberte komponentu „Sine Integer Generator“(obrázek 1) a dva z nich vložte do oblasti návrhu
- V inspektoru objektů nastavte hodnotu vlastnosti „Amplitude“komponenty SineIntegerGenerator1 na „96“(obrázek 2)
- V Object Inspector nastavte hodnotu vlastnosti „Offset“komponenty SineIntegerGenerator1 na „96“(obrázek 3)
- V inspektoru objektů nastavte hodnotu vlastnosti „Frekvence“komponenty SineIntegerGenerator1 na „0,2“(obrázek 4)
Krok 9: Ve Visuinu: Konfigurujte druhý generátor sinusů a připojte generátory sinus k souřadnicovým pinům X a Y bitmapy
- V inspektoru objektů nastavte hodnotu vlastnosti „Amplitude“komponenty SineIntegerGenerator2 na „120“(obrázek 1)
- V Object Inspector nastavte hodnotu vlastnosti „Offset“komponenty SineIntegerGenerator2 na „120“(obrázek 2)
- V inspektoru objektů nastavte hodnotu vlastnosti „Frekvence“komponenty SineIntegerGenerator2 na „0,03“(obrázek 3)
- Připojte výstupní pin „Out“komponenty SineIntegerGenerator1 ke vstupnímu kolíku „X“prvku „Shields. TFT Sisplay. Elements. Draw Bitmap1“komponenty Arduino (obrázek 4)
- Připojte výstupní pin „Out“komponenty SineIntegerGenerator2 ke vstupnímu kolíku „Y“prvku „Shields. TFT Display. Elements. Draw Bitmap1“komponenty Arduino (obrázek 5)
Krok 10: Ve Visuinu: Přidejte a připojte Start a Clock Multi Source komponenty
Abychom vykreslili bitmapu pokaždé, když se aktualizují pozice X a Y, musíme poslat hodinový signál do prvku „Draw Bitmap1“. K odeslání příkazu po změně pozic potřebujeme způsob, jak synchronizovat události. K tomu použijeme komponentu Repeat k neustálému generování událostí a Clock Multi Source pro generování 2 událostí v pořadí. První událost bude taktovat generátory sinusů, aby aktualizovaly pozice X a Y, a druhá bude taktovat „Draw Bitmap1“:
- Do pole Filtr v Component Toolboxu zadejte „opakovat“, poté vyberte komponentu „Opakovat“(obrázek 1) a umístěte jej do oblasti návrhu (obrázek 2)
- Do pole Filtr nástroje Component Toolbox zadejte „multi“, poté vyberte komponentu „Clock Multi Source“(obrázek 2) a umístěte jej do oblasti návrhu (obrázek 3)
- Připojte výstupní kolík „Out“komponenty Repeat1 ke vstupnímu pinu „In“komponenty ClockMultiSource1 (obrázek 3)
- Připojte výstupní kolík „Pin [0]“pinů „Out“komponenty ClockMultiSource1 ke vstupnímu pinu „In“komponenty SineIntegerGenerator1 (obrázek 4)
- Připojte výstupní kolík „Pin [0]“kolíků „Out“komponenty ClockMultiSource2 ke vstupnímu pinu „In“komponenty SineIntegerGenerator1 (obrázek 5)
- Připojte výstupní pin „Pin [1]“vstupního pinu „Clock“prvku „Shields. TFT Display. Elements. Draw Bitmap1“komponenty Arduino (obrázek 6)
Krok 11: Generujte, kompilujte a nahrajte kód Arduino
- Ve Visuinu vygenerujte kód Arduino stisknutím klávesy F9 nebo kliknutím na tlačítko zobrazené na obrázku 1 a otevřete Arduino IDE
- V Arduino IDE klikněte na tlačítko Nahrát pro kompilaci a nahrání kódu (obrázek 2)
Krok 12: A hrajte…
Gratulujeme! Dokončili jste projekt.
Obrázky 2, 3, 4 a 5 a video ukazují připojený a napájený projekt. Uvidíte bitmapu pohybující se kolem dotykového displeje TFT s dotykovým displejem založeného na ILI9341, jak je vidět na videu.
Na obrázku 1 můžete vidět kompletní diagram Visuino. Připojen je také projekt Visuino, který jsem vytvořil pro tento Instructable, a bitmapa s logem Visuino. Můžete si jej stáhnout a otevřít ve Visuinu:
Doporučuje:
Bitmapová animace na OLED displeji SSD1331 (SPI) s Visuino: 8 kroků
Bitmapová animace na OLED displeji SSD1331 (SPI) s Visuinem: V tomto tutoriálu zobrazíme a přesuneme bitmapový obrázek v jednoduché formě animace na OLED displeji SSD1331 (SPI) s Visuinem. Podívejte se na video
Minimalistický indikátor jízdního kola, dotykový displej!: 10 kroků (s obrázky)
Minimalistický indikátor jízdních kol, dotykový displej!: Dobrý den! Toto je můj první Instructable. Vždy jsem chtěl dělat věci od nuly, abych viděl, jak to funguje a kdo nemá rád věci typu DIY (udělej si sám), když můžeš něco upravit podle svých potřeb, že? Zajímavé jako kutilství
Tlačítko Arduino LED, které ovládá animace zpracování: 36 kroků (s obrázky)
Arduino LED Button Pad, který pohání animace zpracování: WhatTato tlačítková podložka je vyrobena pomocí PCB a dalších komponent vyráběných společností Sparkfun. Je poháněn Arduino Mega. Každé tlačítko je hezké, jemné a uspokojivé při stisknutí a má uvnitř RGB LED! Používal jsem ho k ovládání animací
DOTYKOVÝ SPÍNAČ - Jak vytvořit dotykový přepínač pomocí tranzistoru a Breadboardu: 4 kroky
DOTYKOVÝ SPÍNAČ | Jak vytvořit dotykový spínač pomocí tranzistoru a Breadboardu: Dotykový přepínač je velmi jednoduchý projekt založený na aplikaci tranzistorů. V tomto projektu je použit tranzistor BC547, který funguje jako dotykový spínač. ZAJIŠTĚTE SE NA VIDEO, KTERÉ VÁM DÁ ÚPLNÉ PODROBNOSTI O PROJEKTU
Grafický test Displej ILI9341 TFT LCD SPI: 6 kroků
Grafický test ILI9341 TFT LCD SPI displej: Rozhraní 2,8 palcového SPI TFT, který má čip ILI9341, na Arduino Uno