UART-skjermer: Gjør utvikling av håndholdte enheter enklere

Dec 08, 2025

Legg igjen en beskjed

Hei alle sammen, jeg ville dele denne lille historien om hvordan jeg snublet over å bruke UART-skjermer for håndholdte dingser, og det har forandret spillet for meg. For et par dager siden så jeg dette barnas vitenskapsmesseprosjektet på nettet: en ESP8266 koblet til en UART-skjerm, pluss RFID og en app laget med Mixly. Det så så greit og kult ut. Jeg hoppet på Taobao (det er som Kinas eBay) og søkte etter "UART-skjermvisning", og wow, disse tingene er skittbillige nå sammenlignet med for noen år tilbake. De har i utgangspunktet samme pris som de grunnleggende SPI-drevne LCD-skjermene. Jeg kunne ikke motstå – bestilte en med en gang å rote med.

 

UART-skjermvisning og LCD-skjerm

 

La meg sikkerhetskopiere litt og forklare hva jeg mener med UART-skjermvisning versus en bar LCD-skjerm, for hvis du er ny på dette som jeg var i begynnelsen, kan det hende at det ikke klikker med en gang. En UART-skjerm er i utgangspunktet en LCD-modul som er forhånds-pakket med alle driverne på lavt-nivå. Den kommer med sin egen UI-redigeringsprogramvare fra produsenten. Du bare drar og slipper komponenter som tekstbokser, knapper, tidtakere og etiketter, og skriver deretter noen enkel hendelseslogikk. Det hele snakker med mikrokontrolleren (MCU) over en seriell UART-tilkobling – derav navnet UART-skjermvisning. Du definerer en tilpasset protokoll for datautveksling, og boom, du har et fancy grensesnitt uten å svette detaljene. Mange av disse kommer til og med med innebygd berøringsskjerm-, noe som er fantastisk for håndholdte ting.

 

På baksiden er en bare skjerm din standard LCD-skjerm – tenk på de som trenger I2C, SPI, eller til og med en full 20--pinners parallell 8080-grensesnitt eller RGB-oppsett. Du må håndtere alt selv: følg driver-ICens protokoll for å kontrollere pikslene, design brukergrensesnittet fra bunnen av i kode, og administrer all timing og oppdateringer med MCU. Det er massevis av arbeid, krever solide programmeringsferdigheter og trekker ut utviklingstiden. Jeg har vært der og trukket håret ut over pikselperfekte justeringer og minnebegrensninger.

info-1067-599

For å gi deg et ekte-eksempel, bygde jeg nylig denne håndholdte terminalen med en MCU og en bar LCD-skjerm. Det tok evigheter – vi snakker uker med justeringer. Koden endte opp med å være over 800 linjer, og den gjorde ikke engang noe superfantastisk. Innretningen var i utgangspunktet en fjernkontroll for trafikklys på avstand: du kunne stille inn røde/grønne varigheter, blinkintervaller, gule lystider, gule blinkperioder, sanntidsstatusvisninger, klokkeinnstillinger og all den jazzen. Kommunikasjonen foregikk via en LoRa-modul med lang rekkevidde, som ga sin egen hodepine.

 

Se for meg dette: jeg bøyd over skrivebordet mitt, kobler opp den nakne skjermen til MCU, skriver tilpassede drivere for å tegne knapper og tekst. Jeg måtte håndtere tastetrykk for navigering, debounce dem i programvare og sørge for at skjermen ikke flimret under oppdateringer. Minne var et mareritt – spesielt med kinesiske fonter, siden 51 MCU jeg brukte hadde liten RAM. Det fungerte til slutt, men det føltes som å finne opp hjulet på nytt hvert trinn. Jeg måtte til og med redesigne PCB-oppsettet senere for å gjøre det mer kompakt for håndholdt bruk. Misforstå meg rett, det var tilfredsstillende når det lyste opp, men mann, tidssynken var ekte.

 

Prøver UART DISPLAY

Spol frem til i dag – min nye UART-skjerm kom! Det er en 2,8-tommers berøringsskjerm LCD fra dette Shenzhen-selskapet som heterMINGHUA.Jeg lastet ned UI-redigeringsprogramvaren deres, skummet gjennom bruksanvisningen og hoppet rett i. Det minnet meg om de gamle dagene å fikle med Visual Basic eller Delphi for desktop-apper – dra, slipp, koble til hendelser, ferdig.

 

Jeg brukte kanskje en halv dag på å bygge grensesnittet: knapper for innstillinger, tekstfelt for visning av statuser, tidtakere for lyssekvensene. Lastet den opp via seriell til UART-skjermen, og hellig, den replikerte det som tok meg evigheter med bare skjermen. Ikke mer å bekymre deg for pikselpushing på lavt-nivå; skjermen håndterer alt dette internt. Og siden det er UART-basert, var integrasjon med MCU-en min en lek – bare send kommandoer som "oppdater tekstboks med verdi X" og få svar tilbake. Berøringsinngangen? Sømløs. Jeg testet det med LoRa-oppsettet mitt, og alt synkroniserte uten problemer.

 

La meg beskrive hvorfor denne UART-skjermvisningstilnærmingen er en slik gevinst for utvikling av håndholdte terminaler. For det første, tidsbesparelser: I stedet for å kode hvert UI-element fra grunnen av, bruker du forhåndsbygde widgets. Vil du ha en glidebryter for å justere lysets varighet? Dra den inn, koble den til en variabel og definer hva som skjer ved endring – som å sende en UART-pakke til MCU. Programvaren genererer til og med protokollstubbene for deg noen ganger.

uart display

For det andre stabilitet: Disse UART-skjermene er -fabrikktestede moduler. Ikke mer å jage obskure driverfeil eller håndtere EMI-støy som ødelegger SPI-linjene dine. Seriekommunikasjonene er robuste, spesielt hvis du legger til noen grunnleggende feilkontroller som sjekksummer. I mitt bare skjermprosjekt hadde jeg periodiske feil fra strømsvingninger; med UART-skjermen er alt innkapslet, så mindre hodepine.

 

For det tredje, maskinvareenkelhet: Færre pinner! UART er bare TX, RX og jord (pluss strøm, åpenbart). Det frigjør MCU-pinner for andre ting som sensorer eller LoRa-radioen. I håndholdte enheter, hvor det er trangt om plass, er dette enormt. Min gamle prototype hadde et rottereir av ledninger; den nye med UART-skjermen er ren og kompakt.

 

Kostnadsmessig-, som jeg sa, er disse UART-skjermene nå på nivå med de bare. For noen år siden hadde de satt deg tilbake dobbelt eller mer, men masseproduksjonen har falt prisene. Jada, du er ganske låst til produsentens økosystem for brukergrensesnittprogramvaren og -komponentene, noe som kan begrense bargai

Når vi tenker tilbake på det vitenskapsprosjektet til gutten, gir det helt mening. Sammenkobling av en UART-skjerm med noe sånt som en ESP8266 betyr at du kan fokusere på de morsomme delene: logikken, den trådløse kommunikasjonen, appintegrasjonen. Du trenger ikke å være en grafikkveiviser. Jeg har allerede ideer for den neste håndholdte enheten min – kanskje en bærbar miljømonitor med sensorer som mater data til UART-skjermen i sanntid.-

kraft hvis du skalerer opp produksjonen. Men for prototyper, hobbyprosjekter eller små serier, er det ingen{1}}brainer.

 

Når vi tenker tilbake på det vitenskapsprosjektet til gutten, gir det helt mening. Sammenkobling av en UART-skjerm med noe sånt som en ESP8266 betyr at du kan fokusere på de morsomme delene: logikken, den trådløse kommunikasjonen, appintegrasjonen. Du trenger ikke å være en grafikkveiviser. Jeg har allerede ideer for den neste håndholdte enheten min – kanskje en bærbar miljømonitor med sensorer som mater data til UART-skjermen i sanntid.-

 

Hvordan velge den rette

 

Hvis du diskuterer mellom en bar skjerm og en UART-skjermvisning, vil jeg si gå til UART med mindre du har super-spesifikke krav som krever full kontroll. Det gjør det som pleide å være en grind til noe nesten hyggelig. Utviklingstid? Kutt. Stabilitet? Opped. Generelle problemer? Helt nede.

 

En ting jeg bør nevne: når du først starter med en UART-skjermvisning, les dokumentene nøye. Hver produsent har sine særheter – som spesifikke overføringshastigheter (jeg satte min til 115200 for hastighet), kommandoformater eller hvordan man håndterer berøringshendelser. Men når du først er inne, går det jevnt.

I omstillingen av trafikklyskontrolleren min la jeg til mer avanserte elementer: fremdriftslinjer for tidtakere, ikoner for statuser, til og med en enkel graf for signalhistorikk – ting som ville ha vært vondt på den blotte skjermen. UART-skjermens innebygde-fontstøtte gjorde kinesisk tekst til en lek, ikke flere hacking bitmap-fonter.

 

Avslutt dette, hvis du er interessert i innebygde ting eller bare tukler med håndholdte enheter, gi en UART-skjermvisning et skudd. Det har gjort livet mitt lettere, og jeg vedder på at det vil gjøre det samme for deg. Slå meg opp i kommentarfeltet hvis du har spørsmål – hva gjør du-til UART-skjermoppsettet?

 

 

Sende bookingforespørsel