Re: ESP32 domácí automatizace
Pavel Brychta
pavel.brychta na duhasys.eu
Pondělí Srpen 2 11:59:16 CEST 2021
Taky si myslím. Na výrobu monostablu ideální a bez zbytečných paměťových
nároků na task stack...
P.B.
Dne 02. 08. 21 v 11:51 Petr Zapadlo napsal(a):
>
> Nestačil by třeba Ticker?
>
> používám ho i k multiplexu displeje a nevšiml jsem si nějaké jitteru v
> časování.
>
> Petr
>
> Dne 02. 08. 21 v 10:35 Jaroslav Buchta napsal(a):
>> To jako opravdu vTaskDelay muze fungovat nespolehlive, teda jeste k
>> tomu se zkratit?
>> To snad primo pocita systemova preruseni od casovace (default tusim
>> 100Hz), ze by se nejaky nestihly bych jeste pochopil...
>>
>> Dne 02.08.2021 v 9:49 as5s napsal(a):
>>>
>>> Dobry den,
>>>
>>> skuste pozriet na vTaskDelayUntil()
>>>
>>> https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/freertos.html#_CPPv415vTaskDelayUntilPC10TickType_tK10TickType_t
>>>
>>> mozno vam to bude stacit.
>>>
>>> Myre
>>>
>>> On 2. 8. 2021 9:45, Jan Půhoný wrote:
>>>> Dobrý den,
>>>>
>>>> mám tady další zádrhel - mějme funkci, která ovládá výstupní piny,
>>>> potřebuji po nastavení udžet cca 20 sekund v HIGH a pak vrátit vše
>>>> do low. Jedná se o otevítání a zavírání ventilu. Přidal jsem tedy
>>>> mezi to vTaskDelay(20000 / portTICK_PERIOD_MS); , problém je v tom,
>>>> že někdy se to zpoždění značně zkrátí a ventil zůstane napolo
>>>> otevřený. Jak se toto dá ošetřit aby se vTaskDelay(20000 /
>>>> portTICK_PERIOD_MS); nikdy nemohlo zkrátit a bylo dodrženo.
>>>>
>>>> Volám to pak standardně přes xTaskCreatePinnedToCore() ....
>>>>
>>>> void vent1On(void * parameter){
>>>> for(;;){ // infinite loop
>>>> button1.update(1);
>>>> digitalWrite(ventMain1, HIGH);
>>>> digitalWrite(ventOn1, HIGH);
>>>> digitalWrite(ledPinRed, HIGH);
>>>> // Pause the task fo 20s
>>>> vTaskDelay(20000 / portTICK_PERIOD_MS);
>>>> digitalWrite(ventMain1, LOW);
>>>> digitalWrite(ventOn1, LOW);
>>>> digitalWrite(ledPinRed, LOW);
>>>> vTaskDelete(NULL); //spustí se jen jednou
>>>> }
>>>> }
>>>>
>>>>
>>>> xTaskCreatePinnedToCore(
>>>> vent1On, // Function that should be called
>>>> "vent1On", // Name of the task (for debugging)
>>>> 1000, // Stack size (bytes)
>>>> NULL, // Parameter to pass
>>>> 1, // Task priority
>>>> NULL, // Task handle
>>>> 0 // Core 1/0
>>>> );
>>>>
>>>> HP
>>>>
>>>>
>>>> so 31. 7. 2021 v 8:27 odesílatel Jan Půhoný <konference na puhy.cz
>>>> <mailto:konference na puhy.cz>> napsal:
>>>>
>>>> Díky, zkusil jsem jak 2000 tak 4000 ale stále stejné. Resetuje
>>>> se to pořád dokola s tímto:
>>>>
>>>> rst:0x1 (POWERON_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
>>>> configsip: 0, SPIWP:0xee
>>>> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
>>>> mode:DIO, clock div:2
>>>> load:0x3fff0018,len:4
>>>> load:0x3fff001c,len:1044
>>>> load:0x40078000,len:10124
>>>> load:0x40080400,len:5828
>>>> entry 0x400806a8
>>>>
>>>> *Ale zjistil jsem, že to dělá jen pokud to napájím z USB. Když
>>>> to dám přímo do svého zapojení, kde je pořádná kapacita na Vin,
>>>> tak to drží. Takže skutečně jen problém s napájením.*
>>>>
>>>> Teď už to budu programovat jen přes OTA, takže vyřešeno.
>>>>
>>>> HP
>>>>
>>>>
>>>> so 31. 7. 2021 v 6:44 odesílatel Jaroslav Buchta
>>>> <jaroslav.buchta na hascomp.cz
>>>> <mailto:jaroslav.buchta na hascomp.cz>> napsal:
>>>>
>>>> kod jsem nezkoumal ale na prvni pohled mi prijde maly
>>>> zasobnik pro
>>>> vlakno, tady je to tusim v btech. dal bych 2 nebo 4K na zkousku
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored by www.HW.cz
>>>> <http://www.HW.cz>
>>>> Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>> <http://list.hw.cz/mailman/listinfo/hw-list>
>>>>
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored bywww.HW.cz
>>>> Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>> _______________________________________________
>>> HW-list mailing list - sponsored bywww.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>>
>> _______________________________________________
>> HW-list mailing list - sponsored bywww.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20210802/ca26582c/attachment.html>
Další informace o konferenci Hw-list