Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: Конструктор кода в конструкторе прошивки ESP8266

Конструктор кода в конструкторе прошивки ESP8266 23 Март 2017 16:17 #17861

  • tolyan23
  • tolyan23 аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 84
  • Спасибо получено: 6
  • Репутация: 0
Писал в конструкторе весь день решил что какой то конфликт образовался, да действительно web key была включена, сейчас отключу проверю. И еще одна проблема, таймер неверно отсчитывает задаю 5мс он срабатывает через 11 задаю 1 срабатывает через 6. Учитывая что он у меня отвечает за переключение с передачи на прием это очень плохо, можно ему как то приоритет повыше задать?
Администратор запретил публиковать записи гостям.

Конструктор кода в конструкторе прошивки ESP8266 23 Март 2017 16:20 #17862

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
что за таймер имеется ввиду ?

софтовый таймер в мс , он достаточно точный. В прошивке он часто используется.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Конструктор кода в конструкторе прошивки ESP8266 23 Март 2017 16:30 #17863

  • tolyan23
  • tolyan23 аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 84
  • Спасибо получено: 6
  • Репутация: 0
static os_timer_t esp_timout,esp_timout_rx; // глобально объявим таймер esp_timer
таймер esp_timout
небольшой кусочек где он запускается
//***************************-=Переключение RS485 на прием=-**************************
void switchBackDir() // switches direction back to receiving
{
digitalWrite(13,0);
}
//***************************-=Запустить таймер переключения напрвыления приема-передачи=-**************************
void set_timeout(char Nb) // switches direction back to receiving
{
//data_len=(Nb*10000)/baudrate;
// запуск таймера:
os_timer_disarm(&esp_timout);
os_timer_setfn(&esp_timout, (os_timer_func_t *)switchBackDir, NULL); // switchBackDir -функцию, которую нужно вызвать по таймеру.
os_timer_arm(&esp_timout,Nb, 0); // 1000 миллисекунд. 1 - многократно. 0 -однократно.
}


код в файле поскольку уже разросся изрядно

Вложенный файл:

Имя файла: код6.txt
Размер файла:9 KB
Последнее редактирование: 23 Март 2017 16:34 от tolyan23.
Администратор запретил публиковать записи гостям.

Конструктор кода в конструкторе прошивки ESP8266 23 Март 2017 16:40 #17865

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
Ну, тут в миллисекундах отчет получается, я не знаю насколько там кратность, возможно есть какое-то округление по кратности тиков..

Я такие мелкие паузы не использовал через таймеры, только если delay в некоторых случаях применял.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Конструктор кода в конструкторе прошивки ESP8266 24 Март 2017 07:25 #17869

  • spectrekr
  • spectrekr аватар
  • Не в сети
  • Новый участник
  • Сообщений: 4
  • Репутация: 0
Так всетаки как использовать функции GPIO_ALL_M и PWM_ALL_SET_M? Так GPIO_ALL_M; вы сказали не правильно, так GPIO_ALL_M(gpio); компилятор ошибку дает.
Администратор запретил публиковать записи гостям.

Конструктор кода в конструкторе прошивки ESP8266 24 Март 2017 07:36 #17870

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
GPIO_ALL_M имеет 2 параметра как и GPIO_ALL , а PWM_ALL_SET_M как аналогврайт аналогично так же 2 параметра
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.144 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.