PWM na ESP8266
David Obdrzalek
David.Obdrzalek na mff.cuni.cz
Čtvrtek Březen 29 12:01:22 CEST 2018
Já jsem tím nemyslel, že _Vy_ jste mimo, ale to, že když to nefunguje, tak je ta
požadovaná kombinace frekvence a střídy asi mimo možnosti Arduina na ESP8266 a že
nezbyde, než prozkoumat zdrojáky.
Vidím to tak, že pokud chcete využít tenhle hardware a zároveň chcete, aby to
fungovalo, musíte si to buď udělat sám, anebo si musíte zjistit, za jakých okolností
to vůbec s Arduinem v principu může fungovat, a pak nesmíte v aplikaci z těchto
okolností vybočit.
Pokud vím, tak ESP8266 hardwarové PWM nemá (resp. nikdo v anglicky mluvícím svěště
neví o tom, že by to bylo zdokumentované a to pak vyjde nastejno). Proto se řeší
softwarově. V případě Arduina to je řešené obecněji, než by bylo pro potřeby
nějakého konkrétního použití nutné, ale to je v souladu s Arduinovskými postupy a je
to daň za univerzálnost (a ostatní vlastnosti Arduino světa).
D.O.
On 29 Mar 2018 at 8:17, Petr Zapadlo wrote:
> Dle datasheetu jsem chápal, že esp8266 má 4 hw pwm a na zbytku pinů lze
> realizovat SW PWM. A větu že rozsah je od 1000us do 10000us jsem chápal
> vztaženou k SW implementaci.
>
> Nicméně DS je v tomto ohledu poměrně dost informačně skoupý, alespoň mám ten
> pocit.
>
> V Arduino Core je zřejmě využívána jen SW implementace. Je to tak?
>
> Z odkazovaného souboru bohužel nejsem schopen pochopit proč jsem mimo -
> nějak je to mimo mé chápání.
>
>
> Pro mé potřeby, nepotřebuji vysoké rozlišení na PWM, spíše tu větší
> rychlost. Nejvíc mi vadí, že když se střídou přelezu rozumné hranice,
> tak je pin v dost nedefinovaném stavu - občas v nule, občas v jedničce,
> což otevírá pwm tranzistor, přes který pak teče zbytečně proud.
>
>
> Díky
>
> Petr
>
>
>
>
>
> Dne 29. 03. 18 v 7:38 David Obdrzalek napsal(a):
> > On 28 Mar 2018 at 22:35, Petr Zapadlo wrote:
> >> void setup() {
> >> void loop() {
> > aha ...
> >
> >> Netuší někdo jak z toho ven?
> > Obecná rada když je problém s něčím na Arduinu: Buď nepoužít mašinérii
> > Arduino (já vím, to slyšet nechcete...), anebo se podívejte, jak to je
> > naimplementované a zjistěte si z toho skutečné možnosti.
> >
> > https://github.com/esp8266/Arduino/blob/master/cores/esp8266/core_esp8266_wiring_pw
> > m. c z toho by možnosti, maximální frekvence vůbec i maximální rozlišení
> > při dané frekvenci měly vyplynout (střída 7.8% při 30kHz je zdá se mimo).
> >
> > D.O.
Další informace o konferenci Hw-list