Size: a a a

ESP8266 & ESP32 [RU]

2021 March 01

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
где то ввеху объявление структуры
const esp_timer_create_args_t periodic_timer_args = {
           .callback = &timer_30sec_callback,
           /* name is optional, but may help identify the timer when debugging */
           .name = "timer_30sec"
   };

этот кусок запускаеися 1 раз при запуске (окончание)
   esp_timer_handle_t timer_30sec;    // название таймера
   ESP_ERROR_CHECK(esp_timer_create(&periodic_timer_args, &timer_30sec));  // структура , название таймера

}

//**основной код
void timerfunc(uint32_t  timersrc) {
 if (mode_prev!=mode)
 {if (mode==3)
   {
   ESP_ERROR_CHECK(esp_timer_start_periodic(timer_30sec, 30000000));  // 30 секунд  
   }
источник

SZ

Slava Zagaynov in ESP8266 & ESP32 [RU]
О, круто, это в ардуино иде на языке си? Наверно ты это откуда-то позаимствовал? А в оригинале это работало?
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Slava Zagaynov
О, круто, это в ардуино иде на языке си? Наверно ты это откуда-то позаимствовал? А в оригинале это работало?
это конструктор кода в проекте wifi iot. Полагаю си, точно не ардуино. Плюс в том что мне не нужно возится с базовыми блоками, веб интерфейсом, wifi/ Работает на esp-idf что бы это не значило. Прмер брал тут https://github.com/espressif/esp-idf/blob/73db142403c6e5b763a0e1c07312200e9b622673/examples/system/esp_timer/main/esp_timer_example_main.c
источник

SZ

Slava Zagaynov in ESP8266 & ESP32 [RU]
Понял, вот оказывается где настоящие пацаны пишут, а я всё по старинке в ide через millis(). Спать пошли, всё равно все спят и никто не ответит.
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Slava Zagaynov
Понял, вот оказывается где настоящие пацаны пишут, а я всё по старинке в ide через millis(). Спать пошли, всё равно все спят и никто не ответит.
Только что проснулся. я уже разобрался) нашел что esp_timer_handle_t timer_30sec; это объявление таймера и следовательно нужно его вынести в начало
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Анатолий Шириев
Только что проснулся. я уже разобрался) нашел что esp_timer_handle_t timer_30sec; это объявление таймера и следовательно нужно его вынести в начало
Объявление хендла таймера только. Это просто 32 битное значение. Оно вроде тут voidptr, но это реализация конкретная. Может и не указателей в теории быть, просто уникальный индефикатор сущности в системе. А вы объявили переменную его хранящую.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Slava Zagaynov
О, круто, это в ардуино иде на языке си? Наверно ты это откуда-то позаимствовал? А в оригинале это работало?
Ардуино это обычная библиотека для плюсов
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
И соответственно там плюсы и/или с код
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Aleksander Mironov
И соответственно там плюсы и/или с код
а MCPWM модуль запускал?
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Мета вопросы опять. Нет не запускал, но опишите проблему мб моможем
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Aleksander Mironov
Мета вопросы опять. Нет не запускал, но опишите проблему мб моможем
глючит на частоте менее 15герц. Оно в общем то не требуется но как то странно
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Как поступать с таймерами? похоже если пытаюсь остановить и удалить несуществующий таймер чип перезагружается, как проверить существование таймера я не нашел
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Как глючит?
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Чекали его минимальную частоту? Мб там в счётчике ограничение
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Aleksander Mironov
Как глючит?
генерирует другие частоты
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
Aleksander Mironov
Чекали его минимальную частоту? Мб там в счётчике ограничение
в документации что я использую таких ограничений не указано
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Короч если меньше 15 не надо считайте 15 ограничением
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
програмисты петухи, либо в документации надо писать либо высчитывать другой предделитель автоматически...
я подозревал что то такое
источник

АШ

Анатолий Шириев... in ESP8266 & ESP32 [RU]
как все-таки быть со счетчиками, если пытаюсь остановить несуществующий счетчик получаю перезагрузку
источник