Obsah:

Bezdrátový sériový (UART) pro Arduino/STM32/atd .: 3 kroky (s obrázky)
Bezdrátový sériový (UART) pro Arduino/STM32/atd .: 3 kroky (s obrázky)

Video: Bezdrátový sériový (UART) pro Arduino/STM32/atd .: 3 kroky (s obrázky)

Video: Bezdrátový sériový (UART) pro Arduino/STM32/atd .: 3 kroky (s obrázky)
Video: MKS Robin Nano v2.0 - motherboard basics for 3d Printing 2024, Červenec
Anonim
Bezdrátový sériový (UART) pro Arduino/STM32/atd
Bezdrátový sériový (UART) pro Arduino/STM32/atd
Bezdrátový sériový (UART) pro Arduino/STM32/atd
Bezdrátový sériový (UART) pro Arduino/STM32/atd

Snad se mnou všichni budou souhlasit, že Arduino Serial je skvělý nástroj pro ladění vašich projektů. Je to v podstatě jediná možnost ladění Arduina. Někdy však není možné ani praktické spustit kabel USB z Arduina nebo jiného mikrokontroléru do počítače.

Vyrobil jsem tedy tuto desku UART-WiFi na základě ESP8266-01, která je v dnešní době velmi levná. Desky jsou malé, můžete je zapojit do prkénka, připojit napájení, RX, TX a uzemnění a vše, co přijme z UART, vám do počítače přenese přes WiFi a naopak.

Funkce:

  • přenosová rychlost až 115200 (teoreticky dokonce až 921600, ale toto není testováno)
  • přijímá/odesílá data z UART a odesílá/přijímá data přes WiFi přímo do vašeho počítače pomocí portu 23 (Telnet)
  • 18 součástek, díly stojí asi 3,50 USD
  • Oboustranná deska plošných spojů 20 x 45 mm, kompatibilní s deskou
  • Kolík RX s tolerancí 5 V.
  • napěťový vstup od 12 V do 3,3 V, odběr proudu v průměru asi 80 mA

Tyto desky používám už asi půl roku a shledal jsem je nesmírně užitečné. Dokonce je upřednostňuji před USB-UART můstky, protože s mojí deskou stačí jeden z nich zapojit do prkénka a nemusím si dělat starosti s kabely po celém stole. Rovněž nemáte žádný jiný hardware, žádné volné USB porty a tyto desky poskytují úplnou galvanickou izolaci od vašeho počítače, což je dobré bezpečnostní opatření a nemusíte si dělat starosti s různými potenciály země.

Krok 1: Jak to funguje

Jak to funguje
Jak to funguje
Jak to funguje
Jak to funguje

Jakmile je modul připojen k napájení, začne se pokoušet připojit k předdefinovanému WiFi. Během této fáze bliká žlutá LED. Jakmile se připojí, žlutá LED zůstane rozsvícená. Poté modul čeká na připojení od klienta Telnet (viz další krok) a zelená LED bliká. Po úspěšném navázání připojení vám terminál Telnet zobrazí výzvu s dotazem na požadovanou přenosovou rychlost. Vložíte přenosovou rychlost do terminálu a jste hotovi! Nyní cokoli, co zadáte do terminálu, bude odesláno přes WiFi a poté bude vyvedeno z TX pinu ESP8266. Podobně cokoli, co se objeví na pinu RX, je odesláno do terminálu. V zásadě nepoznáte rozdíl mezi sériovou a telnetovou konzolí.

LED diody:

  • žlutá (úplně vlevo) - stav Wifi, bliká - pokouší se připojit, svítí - připojeno
  • zelená (druhá zleva) - stav Telnetu. bliká - čeká na připojení, zelená - připojeno
  • modrá (dvě úplně vpravo) - RX a TX

Krok 2: Jak to nastavit

Jak to nastavit
Jak to nastavit
Jak to nastavit
Jak to nastavit
Jak to nastavit
Jak to nastavit
Jak to nastavit
Jak to nastavit

Spojení

Jedinou mírnou komplikací je, že potřebujete jakýkoli identifikátor pro každé zařízení Telnet (podobné každému sériovému portu s číslem). V mém projektu jsem použil Static IP. Za normálních okolností, jakmile se zařízení připojí k WiFi, automaticky obdrží IP adresu ze serveru DHCP. Toto se nazývá dynamické IP adresování, ale problém je v tom, že se IP adresa může změnit. Desku jsem tedy naprogramoval tak, aby vždy přijímala předdefinovanou IP adresu, v mém případě 192.168.2.20x, kde x je číslo desky. Toto se nazývá statické IP adresování. Poté stačí připojit konzolu Telnet k 192.168.2.20x: 23 a jste připraveni jít.

Jako konzolu můžete používat celou řadu aplikací, dvě nejznámější jsou pravděpodobně PuTTY nebo YAT (Yet Another Terminal). Používám to druhé a v sekci obrázku vidíte, jak to nastavit - stačí znát dříve zmíněnou statickou IP adresu.

Firmware

Firmware je napsán v Arduino IDE a najdete ho na mém GitHubu. Pokud chcete naprogramovat svůj ESP8266, musíte se podívat do záhlaví a upravit tam některé proměnné, konkrétně:

  • ssid - název WiFi, ke kterému chcete desku připojit
  • pass - heslo k té WiFi
  • ip - statická IP, kterou chcete, aby deska měla; vyberte něco mimo skupinu DHCP (nebo vyberte něco mezi 200 - 250, což je obvykle zdarma)
  • brána - IP vašeho routeru
  • podsíť

Poslední dvě informace můžete získat z příkazového řádku stisknutím kláves Win + R, zadáním „cmd“a poté zadáním „ipconfig“. Viz obrázky.

Samozřejmě potřebujete Arduino IDE, nástrojový řetězec esp8266 atd., Ale o tom existuje mnoho dalších návodů.

Prkno

Musíte také vyrobit desku plošných spojů. I když to není složité a teoreticky byste si to mohli vyrobit i doma, doporučuji použít nějakého čínského výrobce PCB. Je to levné a funguje to dobře. Použil jsem ALLPCB a byl jsem spokojen.

Napájení

Na desce musíte zajistit napájení. Můžete jej buď přímo napájet 3,3 V (propojka JP1 v poloze 3,3 V), nebo napájet napětí regulátorem 3,3 V (propojka v druhé poloze). Regulátor může přijímat napětí až 12 V. Všechny kondenzátory jsou již integrovány na desce.

Krok 3: Závěr

Závěr
Závěr

Jak jsem již řekl, shledal jsem tyto desky velmi užitečné pro prototypování, nejen s Arduinem, ale s jakýmkoli MCU obecně. A používám je už asi půl roku a neměl jsem s nimi problém.

Zdrojový kód, soubory Eagle a některé obrázky najdete buď na mém GitHubu, nebo v zip souboru níže. Doporučuji však GitHub, protože může existovat novější verze.

Pokud máte nějaké dotazy, komentáře nebo návrhy, neváhejte je zanechat níže.

Doporučuje: