Innholdsfortegnelse:

Trådløs serie (UART) for Arduino/STM32/etc .: 3 trinn (med bilder)
Trådløs serie (UART) for Arduino/STM32/etc .: 3 trinn (med bilder)

Video: Trådløs serie (UART) for Arduino/STM32/etc .: 3 trinn (med bilder)

Video: Trådløs serie (UART) for Arduino/STM32/etc .: 3 trinn (med bilder)
Video: Understanding UART 2024, Juli
Anonim
Trådløs seriell (UART) for Arduino/STM32/etc
Trådløs seriell (UART) for Arduino/STM32/etc
Trådløs seriell (UART) for Arduino/STM32/etc
Trådløs seriell (UART) for Arduino/STM32/etc

Forhåpentligvis er alle enige med meg om at Arduino Serial er et flott verktøy for feilsøking av prosjektene dine. Vel, det er i utgangspunktet det eneste alternativet for feilsøking av en Arduino. Men noen ganger er det ikke mulig eller praktisk å kjøre en USB -kabel fra Arduino eller en annen mikrokontroller til datamaskinen.

Så jeg laget dette UART-WiFi-kortet, basert på ESP8266-01, som er skitt billig i disse dager. Brettene er små, du kan koble den til et brødbrett, koble til strøm, RX, TX og bakken, og den vil overføre alt den mottar fra UART til datamaskinen din via WiFi og omvendt.

Funksjoner:

  • baudrates opp til 115200 (teoretisk sett til og med 921600, men dette er ikke testet)
  • mottar/sender data fra UART og sender/mottar data via WiFi direkte til datamaskinen din ved hjelp av port 23 (Telnet)
  • 18 komponenter, deler koster omtrent USD 3,50
  • 20 x 45 mm dobbeltsidig PCB, brødbrett kompatibel
  • 5 V tolerant RX -pinne
  • spenningsinngang fra 12 V til 3,3 V, strømtrekk ca 80 mA i gjennomsnitt

Jeg har brukt disse brettene i omtrent et halvt år nå, og jeg syntes de var ekstremt nyttige. Jeg foretrekker dem til og med USB-UART-broer, for med brettet mitt kobler jeg bare en av dem til et brødbrett, og jeg trenger ikke å bekymre deg for å kjøre kabler over hele skrivebordet mitt. Du har heller ingen annen maskinvare, ingen ledige USB -porter og disse kortene gir full galvanisk isolasjon fra datamaskinen din, noe som er en god sikkerhetsforanstaltning, og du trenger ikke å bekymre deg for forskjellige bakkepotensialer.

Trinn 1: Slik fungerer det

Hvordan det fungerer
Hvordan det fungerer
Hvordan det fungerer
Hvordan det fungerer

Når modulen er påført strøm, begynner den å prøve å koble til den forhåndsdefinerte WiFi. I denne fasen blinker den gule LED -en. Når den er koblet til, forblir den gule LED -lampen tent. Etter det venter modulen på en tilkobling fra en Telnet -klient (se neste trinn) og grønn LED blinker. Etter at forbindelsen er opprettet, viser Telnet -terminalen deg en melding der du spør om ønsket baudrate. Du legger inn baudrate i terminalen og du er ferdig! Nå blir alt du skriver inn i terminalen sendt over WiFi, og så sendes det ut fra TX -pinnen til ESP8266. På samme måte sendes alt som vises på RX -pinnen til terminalen. I utgangspunktet kan du ikke se forskjellen mellom en serie- og telnetkonsoll.

Lysdioder:

  • gul (lengst til venstre) - Wifi -status, blinker - prøver å koble til, lyser - tilkoblet
  • grønn (andre fra venstre) - Telnet -status. blinker - venter på tilkobling, grønt - tilkoblet
  • blå (to til høyre) - RX og TX

Trinn 2: Hvordan sette det opp

Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp
Hvordan sette det opp

Forbindelse

Den eneste lille komplikasjonen er at du trenger en slags identifikator for hver Telnet -enhet (lik hver seriell port som har et nummer). I prosjektet mitt brukte jeg Statisk IP. Normalt, når en enhet kobler seg til WiFi, mottar den automatisk en IP -adresse fra DHCP -serveren. Dette kalles dynamisk IP -adressering, men problemet her er at IP -adressen kan endres. Så jeg programmerte brettet på en slik måte at det alltid mottar en forhåndsdefinert IP -adresse, i mitt tilfelle 192.168.2.20x, hvor x er brettnummeret. Dette kalles statisk IP -adressering. Da er det bare å koble en Telnet -konsoll til 192.168.2.20x: 23, og du er klar til å gå.

Som konsoll kan du bruke en rekke apper, de to mest kjente er sannsynligvis PuTTY eller YAT (Yet Another Terminal). Jeg bruker sistnevnte, og i bildedelen kan du se hvordan du konfigurerer den - du trenger bare å vite den tidligere nevnte statiske IP -adressen.

Fastvare

Fastvaren er skrevet i Arduino IDE, og du finner den på min GitHub. Hvis du ønsker å programmere ESP8266, må du se på overskriften og endre noen variabler der, nemlig:

  • ssid - navnet på WiFi -en du vil at kortet skal koble til
  • pass - passord for den WiFi
  • ip - den statiske IP -en du ønsker at brettet skal ha; velg noe utenfor DHCP -bassenget (eller bare velg noe mellom 200 - 250, som vanligvis er gratis)
  • gateway - IP -en til ruteren din
  • delnett

Du kan få de to siste informasjonene fra kommandolinjen, ved å trykke Win + R, skrive inn "cmd" og deretter skrive inn "ipconfig". Se bilder.

Selvfølgelig trenger du Arduino IDE, esp8266 verktøykjede etc., men det er mange andre opplæringsprogrammer om det.

Borde

Du må også produsere kretskortet. Selv om det ikke er komplisert og du teoretisk sett kan gjøre det hjemme, anbefaler jeg at du bruker en kinesisk PCB -produsent. Det er billig og fungerer fint. Jeg brukte ALLPCB og var fornøyd.

Makt

Du må gi styret strøm. Du kan enten slå den på direkte med 3,3 V (jumper JP1 i 3,3 V -stillingen) eller mate spenningen gjennom en 3,3 V regulator (jumper i den andre stillingen). Regulatoren kan godta spenninger opptil 12 V. Alle kondensatorer er allerede integrert ombord.

Trinn 3: Konklusjon

Konklusjon
Konklusjon

Som jeg sa før, fant jeg disse brettene veldig nyttige for prototyping, ikke bare med en Arduino, men med hvilken som helst MCU generelt. Og jeg har brukt dem i omtrent et halvt år nå, og jeg hadde ikke noe problem med dem.

Kildekode, Eagle -filer og noen bilder finnes enten på min GitHub eller i zip -filen nedenfor. Men jeg anbefaler GitHub, siden det kan være en nyere versjon.

Hvis du har spørsmål, kommentarer eller forslag, kan du la dem stå nedenfor.

Anbefalt: