Inhoudsopgave:

TTGO (kleuren) display met Micropython (TTGO T-display) - Ajarnpa
TTGO (kleuren) display met Micropython (TTGO T-display) - Ajarnpa

Video: TTGO (kleuren) display met Micropython (TTGO T-display) - Ajarnpa

Video: TTGO (kleuren) display met Micropython (TTGO T-display) - Ajarnpa
Video: How to use DHT11 DHT22 with NodeMCU ESP8266 to read temperature over WiFi - IoT 2024, December
Anonim
TTGO (kleuren) Display Met Micropython (TTGO T-display)
TTGO (kleuren) Display Met Micropython (TTGO T-display)
TTGO (kleuren) Display Met Micropython (TTGO T-display)
TTGO (kleuren) Display Met Micropython (TTGO T-display)

Het TTGO T-Display is een bord gebaseerd op de ESP32 met een 1,14 inch kleurendisplay. Het bord kan worden gekocht voor een prijs van minder dan $ 7 (inclusief verzendkosten, prijs te zien op banggood). Dat is een ongelooflijke prijs voor een ESP32 inclusief display.

Dit kan de perfecte basis zijn voor uw volgende project. Helaas is er alleen officiële ondersteuning voor arduino.

Micropython heeft verschillende voordelen, het maakt het ontwikkelen van een project een stuk makkelijker. Ik ga ze hier niet allemaal uitleggen. Er zijn veel leuke youtube-video's over hoe micropyhton je leven gemakkelijker maakt en de coole dingen die je ermee kunt doen.

Helaas dekt de officiële ondersteuning alleen de "arduino-taal".

In deze tutorial laat ik je zien hoe je het bord met micropython gebruikt.

Stap 1: Installeer Loboris Firmware op het bord

De officiële micropython heeft geen ondersteuning voor dit soort weergave. Je moet loboris micropython installeren. Dit is een zeer coole gemodificeerde micropython met extra bibliotheken.

Om te installeren, volg gewoon mijn (eenvoudige) stap-voor-stap tutorial op

https://www.instructables.com/id/Installing-Loboris-lobo-Micropython-on-ESP32-With-/

Stap 2: Laad de voorbeeldcode

Laad de voorbeeldcode
Laad de voorbeeldcode
Laad de voorbeeldcode
Laad de voorbeeldcode

Verbind je bord met uPyCraft zoals beschreven in de installatiehandleiding. Dus zoals beschreven, wanneer je uPyCraft opstart, klik je op tools->Serial->COM7 (vervang COM7 door de poort die je gevonden hebt tijdens de installatie tutorial). Nu kan er een venster openen met "Flash-firmware" of iets dergelijks. Doe dat niet! Dit is een fout. Sluit eenvoudig het venster "flashfirmware" en maak opnieuw verbinding met tools->Serial->COM7. Nu zou u ">>>" in uw opdrachtvenster moeten zien. Dit betekent dat je succesvol verbinding hebt gemaakt.

Nu open je apparaat (aan de linkerkant) en dubbelklik je op "main.py". Als deze bestanden niet bestaan, maak ze dan aan. Plak de volgende code in het venster:

importeer machine, weergave, tijd, wiskunde, netwerk, utime

tft = display. TFT() tft.init(tft. ST7789, bgr=False, rot=tft. LANDSCAPE, miso=17, backl_pin=4, backl_on=1, mosi=19, clk=18, cs=5, dc =16)

tft.setwin(40, 52, 320, 240)

voor i binnen bereik (0, 241):

kleur=0xFFFFFF-tft.hsb2rgb(i/241*360, 1, 1)

tft.line(i, 0, i, 135, kleur)

tft.set_fg(0x000000)

tft.ellipse(120, 67, 120, 67)

tft.line(0, 0, 240, 135)

text="ST7789 met micropython!"

tft.text(120-int(tft.textWidth(text)/2), 67-int(tft.fontSize()[1]/2), tekst, 0xFFFFFF)

wifi=network. WLAN(network. STA_IF) wifi.active(True) wifi.connect("yourWlan", "yourPassword") utime.sleep_ms(3000) network.telnet.start(user="m", password="m ")

Het is belangrijk om de inspringing voor de twee regels onder de "voor"-instructie te hebben. Controleer de afbeelding om te zien of het er hetzelfde uitziet.

Nu is het tijd om het uit te voeren! Sla het bestand op en druk op F5 (of klik op Extra->downloadAndRun). U zou nu iets op uw display moeten zien. Als het iets vreemds is, moet je op de resetknop aan de zijkant van het bord drukken. Uw display zou er nu uit moeten zien zoals op de afbeelding.

In de volgende stappen zal ik de code uitleggen.

Stap 3: Initialiseren

Oké, je hebt alles al wat je nodig hebt. Nu zal ik stap voor stap de code doornemen en uitleggen.

Kijk ook eens in de zeer mooie documentatie op

github.com/loboris/MicroPython_ESP32_psRAM…

voor extra info

importeer machine, weergave, tijd, wiskunde, netwerk, utime

tft = weergave. TFT()

tft.init(tft. ST7789, bgr=False, rot=tft. LANDSCAPE, miso=17, backl_pin=4, backl_on=1, mosi=19, clk=18, cs=5, dc=16)

tft.setwin(40, 52, 320, 240)

De invoer moet duidelijk zijn. De derde regel initialiseert het display.

Als u het scherm wilt uitschakelen, voert u de tft.init opnieuw uit met backl_on=0

De vierde regel stelt de weergaverand in. Dit is nodig omdat de implementatie niet voor deze exacte weergave is. Doe je dit niet, dan teken je buiten het scherm.

Het gebied dat u kunt gebruiken is (0, 0, 135, 240)

Stap 4: Tekenen en kleuren

Het belangrijkste eerst: de kleuren zijn omgekeerd! Waarschijnlijk ben je nu RGB (hoe kleuren worden uitgedrukt met getallen). Rood zou normaal gesproken 0xFF0000 zijn. Maar hier, voor rood moet je 0x00FFFF gebruiken. Voor blauw moet je 0xFFFF00 etc gebruiken.

Loboris heeft kleurconstanten. Ze zijn ook omgekeerd. Als je ze wilt gebruiken, kun je ze converteren:

tft.set_bg(0xFFFFFF - tft. BLAUW)

tft.clear()

Dit vult het scherm blauw. Door de gewenste kleuren van 0xFFFFFF af te trekken, worden ze geconverteerd en krijgt u de gewenste kleur.

voor i binnen bereik (0, 241): kleur=0xFFFFFF-tft.hsb2rgb(i/241*360, 1, 1)

tft.line(i, 0, i, 135, kleur)

tft.set_fg(0x000000)

tft.ellipse(120, 67, 120, 67)

tft.line(0, 0, 240, 135) text="ST7789 met micropython!" tft.text(120-int(tft.textWidth(text)/2), 67-int(tft.fontSize()[1]/2), tekst, 0xFFFFFF)

De for-loop creëert het kleurverloop van de tint. Vervolgens selecteren we de kleur waarmee we willen tekenen (wit) en tekenen we een ellips, een lijn en een tekst.

Stap 5: Telnet

wifi=netwerk. WLAN(netwerk. STA_IF)wifi.actief(True)

wifi.connect("yourWlan", "yourPassword")

utime.sleep_ms(3000)

netwerk.telnet.start(gebruiker = "m", wachtwoord = "m")

Hiermee wordt de telnet-server gestart. U hebt toegang tot het bord via uw WLAN zonder het via USB aan te sluiten! Dit is erg handig als je een project hebt waarbij je niet gemakkelijk toegang hebt tot je bord.

Om toegang te krijgen via WLAN moet je eerst weten wat het IP-adres van het bord is. Sluit je bord aan via USB. Wijzig "yourWlan" met de naam van uw WLAN en "yourPassword" met uw wachtwoord. Downloaden en uitvoeren. Voer "network.telnet.status()" in het opdrachtvenster in en druk op enter. Het zou het IP van het bord moeten teruggeven.

Ik raad je de tool "Putty" aan voor toegang via telnet. Het is gratis. Download, installeer en open het. Selecteer telnet als verbindingstype, voer het gevonden IP in en klik op openen. Er gaat een raam open. Log in als "m", druk op enter. Hij vroeg om het wachtwoord. Druk op m en voer in. Nu zou je verbonden moeten zijn via telnet.

Stap 6: Doe je eigen geweldige project

Dat is het! Met deze code als basis kun je je eigen geweldige project bouwen.

Een paar dingen om te vermelden:

-Loboris biedt ook de mogelijkheid om een ftp-server op te zetten. Met dit en telnet kun je code uploaden of wijzigen en uitvoeren. Beheer de code volledig vanaf uw buitenweerstation vanaf uw bank zonder enige fysieke verbinding. Verbazingwekkend!

-Loboris heeft een hele mooie Wiki:

github.com/loboris/MicroPython_ESP32_psRAM…

Directe link naar de weergegeven Wiki:

github.com/loboris/MicroPython_ESP32_psRAM…

Directe link naar de telnet Wiki:

github.com/loboris/MicroPython_ESP32_psRAM…

Ik hoop dat je deze tutorial nuttig vond. Laat je reactie achter en laat ons zien wat je hebt gedaan met de TTGO en micropython

Aanbevolen: