ESP 32
Nejsem odborník, ale ESP32 nemá žádný 5v tolerantní pin, bohužel, jsou tedy nějaké informace, že to funguje https://hackaday.com/2016/07/28/ask-hac ... -tolerant/, ale není to oficiální
Osobne bych to nedelal. Pokud je to na nejakou hracku pro decka, bude te to stat jen trochu nervu, kdyz se zrovna trefis do situace kdy to vadit bude a ty budes pul dne hledat chybu v kodu. V profi nasazeni by mi ty 2 usetrene odpory za to nestaly uz tim tuplem. Krome nejakych specifickych zalezitosti typu I2C nebudes muset nejaky sofistikovanejsi level shifter pouzivat vubec, staci jen delic.
Tak jsem si prostudoval něco manuálů. Sice pár lidí prohlašuje, že 5V procesor dá, ale výrobce před tím varuje docela výrazně. Po rozkreslení celého zařízení mě korektní napětí na pinech vyjde cca na 30 korun. Pár odporů na děliče a jeden 8x převodník úrovní s tranzistory.
Tak nakonec reálná realizace.
Zase to není tak jednoduché. Na instalaci Blue pill a podobných STM jsem proprndal cca týden času, než jsem mohl začít testovat soft, který jsem si připravil. Výpočty s plovoucí čárkou jsou zde o něco (cca 5-10%) rychlejší než u AVR328 . Některé piny tolerují 5V, a ty nejjednodušší desky jsou levnější než arduino.
ESP jsem rozchodil rychleji, ale pár chybiček se taky vloudilo a nakonec jsem musel reinstalovat arduino IDE. Používám knihovny 2.xx, ty novější 3.xx nefungují úplně korektně. Na druhou stranu jsem zde s minimálními úpravami spustil docela složitý projekt 500 řádky kódu. Při použití stejného kódu jako u STM byly výpočty ještě rychlejší (o dalších cca 5%). Bohužel piny opravdu netolerují 5V, cca po 10 minutách odešel pin, který četl výstup z 74LS14. Na druhou stranu existují obousměrné převodníky za opravdu pár korun a ty fungujou. Velmi jednoduše se dá ESP32 zakomponovat do 5V logiky, kdy napájecímu pinu 5V vyhovuje. Druhý PWR pin je výstup 3,3V a ten připojíme na převodník a to vše.
Tak ESP32 se ve výsledku chová výrazně lépe než STM32. Knihovny desek ESP jsou kompatibilnější než u STM. Jestliže jsem měl problém použít knihovnu LCD I2C u STM, tak u ESP chodí na první dobrou. Zase to není tak jednoduché. Na instalaci Blue pill a podobných STM jsem proprndal cca týden času, než jsem mohl začít testovat soft, který jsem si připravil. Výpočty s plovoucí čárkou jsou zde o něco (cca 5-10%) rychlejší než u AVR328 . Některé piny tolerují 5V, a ty nejjednodušší desky jsou levnější než arduino.
ESP jsem rozchodil rychleji, ale pár chybiček se taky vloudilo a nakonec jsem musel reinstalovat arduino IDE. Používám knihovny 2.xx, ty novější 3.xx nefungují úplně korektně. Na druhou stranu jsem zde s minimálními úpravami spustil docela složitý projekt 500 řádky kódu. Při použití stejného kódu jako u STM byly výpočty ještě rychlejší (o dalších cca 5%). Bohužel piny opravdu netolerují 5V, cca po 10 minutách odešel pin, který četl výstup z 74LS14. Na druhou stranu existují obousměrné převodníky za opravdu pár korun a ty fungujou. Velmi jednoduše se dá ESP32 zakomponovat do 5V logiky, kdy napájecímu pinu 5V vyhovuje. Druhý PWR pin je výstup 3,3V a ten připojíme na převodník a to vše.
Když jsem dělal projekt s ESP32, tak jsem ve výsledku skončil u toho, že jsem 5V nakonec nepotřeboval. Nepoužíval jsem celý modul, ale jen WROOM-32. Ostatní komponenty měli zvlášť napajení "power" a signálovou logiku, které stačili 3,3V, taky zvlášť. Bylo to napájené z baterky, takže i z důvodu energetické úspornosti jsem se vyhl napetovym prevodníkům. Bohužel na většině Arduino modulech je napájení power a logika propojené. Ovšem já si dělal plošňáky vlastní, takže mi to nevadilo.
LinuxCNC - MESA 7i96
zz912.webnode.cz
zz912.webnode.cz
Jen poznamka s krizkem po funuse.
ESP8266 neni ESP32.
Puvodni IO ESP8266EX (ty co se davaly m.j. na moduly ESP-01) byly robustni a da se rict ze byly 5V tolerantni. Na gpio nebyly schotky jako clamp k 3V3 railu, ktere by ho zvedly a odpravily. Byly tam ale jako esd ochrana uvnitr tvs otvirajici cca na 5.8V a to byl tvrdy limit napeti. Delal jsem s nima hodne diy projektu s 5V logikou a vetsina zije doted, nejakych skoro 10let.
ESP8266 neni ESP32.
Puvodni IO ESP8266EX (ty co se davaly m.j. na moduly ESP-01) byly robustni a da se rict ze byly 5V tolerantni. Na gpio nebyly schotky jako clamp k 3V3 railu, ktere by ho zvedly a odpravily. Byly tam ale jako esd ochrana uvnitr tvs otvirajici cca na 5.8V a to byl tvrdy limit napeti. Delal jsem s nima hodne diy projektu s 5V logikou a vetsina zije doted, nejakych skoro 10let.
TOS S28, DIY CNC, Holzmann ZS-40HS, Prusa Mk3s+MMU2s, Bambu X1C Combo
Spoléhat na cizí kód je cesta do pekla a je jedno jestli s STM nebo ESP :-/
Poslední ryze vlastní kód jsem měl u 6502 a X51. Programování v assembleru byla vcelku pohoda, pokud měl listing víc řádků 1000+ tak už to bylo nepřehledné. V současné době je používání cizích skriptů (knihoven) naprosto normální, ve většině firem spíš žádoucí. Jistě, jsou výjimky ale to se mě jako hobíka netýká. Neumím si představit, že budu ke každé použité součástce psát vlastní rutinu. I obyčejnej LCD displej nebo Dallas teplotní čidlo potřebují pěknejch pár řádků kódu a studování dokumentace. Mluvím o jednoduchém 8bitu.
Další postřehy z programování. Oproti STM32 je ESP32 "kompatibilnější" s wiringem na arduinu, ale i tady jsou drobné zádrhele. Překvapivě nejdou použít všechny "volné" GPIO piny a příprava složitějšího projektu bude chtít více času na odzkoušení jednotlivých procesů. 3,3V nedělá žádné problémy, přes to, že ve svýyh projektech používám výhradně 5V logiku. Napájení je 5V ale je zde i výstup 3,3V. Převodníků 3,3/5V je hafo a já jsem použil 8 násobný s max. kmitočtem 1 MHz. Struktura psaní programu je trochu odlišná od klasického arduina a není to nikde až tak moc popsané.