Re: ESP32 domácí automatizace
Petr Zapadlo
zapik na email.cz
Pondělí Srpen 2 11:51:19 CEST 2021
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 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/1e93d21f/attachment.html>
Další informace o konferenci Hw-list