Inhoudsopgave:

TFT-geanimeerde ogen: 3 stappen
TFT-geanimeerde ogen: 3 stappen

Video: TFT-geanimeerde ogen: 3 stappen

Video: TFT-geanimeerde ogen: 3 stappen
Video: Prachtig opgemaakte ogen in een handomdraai 2024, November
Anonim
TFT-geanimeerde ogen
TFT-geanimeerde ogen

Dit project maakt gebruik van goedkope onderdelen om een paar geanimeerde ogen op TFT-schermen te creëren. Het project is gebaseerd op het Adafruit "Uncanny Eyes"-project.

De twee ST7735 128x128 pixeldisplays en het ESP32-bord kunnen meestal online worden gekocht voor ongeveer $ 10 in totaal.

De software die op de ESP32 draait, is een Arduino-schets, deze wordt ondersteund door de grafische bibliotheek TFT_eSPI. De schets is een voorbeeld in de TFT_eSPI-bibliotheek.

Er kunnen ook andere processors worden gebruikt, zoals ESP8266- en STM32-kaarten. De ESP32- en STM32-processors kunnen "Direct Memory Access" gebruiken om de beelden naar het scherm over te brengen, dit verbetert de prestaties (ook wel framerate genoemd). De schets gebruikt een aanzienlijke hoeveelheid RAM en FLASH-programmageheugen, dus houd hier rekening mee bij het kiezen van een processor.

Benodigdheden

Het project, zoals beschreven, maakt gebruik van:

  • Twee ST7735 1.4" 128x128 TFT-schermen met 4-draads SPI-interface
  • Eén ESP32-processorkaart
  • Breadboard en draden
  • Arduino IDE
  • TFT_eSPI bibliotheek versie 2.3.4 of hoger

Stap 1: Prestaties

Uitvoering
Uitvoering

Kies welke processor je gaat gebruiken.

Typische weergaveprestaties (fps = frames per seconde) voor een oog zijn afhankelijk van de processor, de SPI-kloksnelheid en of DMA wordt gebruikt. De ESP8266 geeft de laagste framerate, maar de oogbeweging is nog steeds vrij vloeiend.

De displays van het type ST7735 kunnen doorgaans betrouwbaar werken met SPI-kloksnelheden tot 27 MHz. Andere beeldschermen werken mogelijk met hogere snelheden, maar 27 MHz levert goede prestaties.

Stap 2: Softwareomgeving

Software-omgeving
Software-omgeving

De Arduino IDE wordt gebruikt om de schets te compileren en te uploaden naar de ESP32. Dit is een relatief geavanceerd project, dus het wordt aangeraden om de Arduino IDE in gebruik te nemen met de eenvoudigere voorbeelden om vertrouwd te raken met de omgeving.

Het ESP32-bordpakket moet in de IDE worden geladen als u die processor gebruikt. Gebruik voor STM32-borden het officiële stm32duino-pakket.

De grafische bibliotheek TFT_eSPI kan worden geladen via de bibliotheekmanager van de Arduino IDE.

De TFT_eSPI-bibliotheek biedt 2 voorbeelden voor ooganimatie:

  • Animated_Eyes_1 is een voorbeeld voor een enkel scherm (minimaal 240 x 320 pixels)
  • Animated_Eyes_2 is een voorbeeld voor twee schermen

Dit project gebruikt het tweede schetsvoorbeeld.

Als je al een TFT_eSPI-bibliotheekgebruiker bent en een 240x320 (of groter) scherm hebt dat correct werkt, dan zal de Animated_Eyes_1 zonder aanpassingen draaien en twee geanimeerde ogen op een enkel scherm weergeven.

Stap 3: Display-verbindingen

Display-aansluitingen
Display-aansluitingen

Het prototype is gebouwd door de ESP32 en displays in breadboards aan te sluiten en jumperdraden te gebruiken. Dit is handig voor de eerste experimenten, maar is gevoelig voor een slechte verbinding, vooral als het wordt verplaatst. Als de ogen als onderdeel van een kostuum moeten worden gebruikt, wordt het aanbevolen om alle verbindingen te solderen.

Normaal gesproken wordt de TFT-chipselectielijn voor een enkel scherm gedefinieerd in een user_setup-bestand van de TFT_eSPI-bibliotheek, maar bij gebruik van de bibliotheek met twee schermen moeten de chipselecties worden bestuurd door de schets, dus u mag de TFT_CS-pin NIET definiëren in de TFT_eSPI bibliotheek setup-bestanden. In plaats daarvan moet de chipselectie (CS) worden gedefinieerd in het tabblad "config.h" van de Animated_Eyes_2-schets.

De TFT_eSPI-bibliotheek gebruikt "user_setup"-bestanden om alle parameters voor de weergave, processor en interfaces te definiëren, voor de Animated_Eyes_2-schets werd het bestand "Setup47_ST7735.h" gebruikt met de bedrading zoals hierboven weergegeven.

De beeldschermen die voor het testen werden gebruikt, waren 128x128 ST7735-beeldschermen. Het TFT_eSPI-bibliotheekconfiguratiebestand moet mogelijk worden gewijzigd, aangezien deze beeldschermen in veel configuratievarianten verkrijgbaar zijn.

Wanneer alles is geprogrammeerd en actief is, kan het worden losgekoppeld van een computer en worden gevoed door een batterij op een telefoonoplader met een USB-uitgang.

Aanbevolen: