Библиотеки для разных контроллеров
Сейчас в отъезде и стенда хорошего под руками нет.
Сейчас в отъезде и стенда хорошего под руками нет.
Важная информация.Qwert855 писал(а): ↑29.09.2021{, 11:55}ecoins, огромное спасибо за поддержку.
попытаюсь сформулировать кратко суть вопроса с которым я столкнулся.
в мое случае при использовании последнего вашего примера "FLProg_Test08_DS1820_Lcd_mcp23017_ESP8266_v02.zip" и библиотеки "RT_00_HW_BASE_v6.71"
- при загрузке примера "FLProg_Test08_DS1820_Lcd_mcp23017_ESP8266_v02.zip" в МК без изменений как есть - все отлично работает, бегут сигналы по МСР.
- если изменить один регистр с выхода на вход и загрузить его в таком виде в МК (ничего больше не меняя), МСР не подает признаков активности.
- Если вернуть обратно регистр на выход и загрузить в МК - сновав МСР работает.
для наглядности
Генератор с такими возможностями не реализовывался.
Было бы круто, чтобы был многофункциональный блок работы с временем, иногда нужен суточный таймер с определенными интервалами работы, ну и многое другое.
жаль конечно, благодарю за ответ.
Возьмите блок работы с часами и оттуда берите все данные. Так будет точнее, чем импульсы с генератора считать.
он не очень удобен,попробуйте сделать на не реле времени, и сами поймете, при пропадании питания это все слети и работать уже правильно не будет, да и городить много логики нужно
ecoins писал(а): ↑08.10.2021{, 19:13}Генератор с такими возможностями не реализовывался.
Во многом из-за того, что такие режимы вполне удобно реализованы в стандартном таймере.
Многофункциональный генератор больше планировался для планирования задач и других сервисных функций. В качестве входа используются переменные int16_t.
Такой режим реализовать возможно, но вроде незачем.
Может быть будет к делителю фронтов со временем добавим делитель импульсов - тогда возможно будет реализовать каскадное деление импульсов.
Был не прав по стандартному генератором - внешние входы там только int.
Программно.
millis()>=id.time - очень неправильная вещь.
Это из-за 1024 us/msНу и советую не забывать, что штатная функция от Wiring() - millis() считает время "скачками" по 42 миллисекунды и оно плавает на плюс-минус 1 миллисекунду с этим периодом. Из-за этого, не бывает 42, 84 .. и т.д. "миллисекунд". После 41 всегда идет 43.
Спасибо. Подкорректирую в библиотеке.Sancho писал(а): ↑11.10.2021{, 09:26}millis()>=id.time - очень неправильная вещь.
При сравнении, в отличии вычитания, использование "невидимого" старшего разряда не работает.
Т.е. в момент времени, когда значение, возвращаемое функцией millis() изменит своё значение
с 0xFFFFFFFF на 0х00000000, придёт не совсем ожидаемый результат.
Очень интересный проект.o615ye161 писал(а): ↑16.10.2021{, 23:23}Сообщение o615ye161 » Вчера{, 20:23}
Здрастуйте ecoins, возникла проблема, болк DHT22 в вашем исполнении почему то отказывается работать, хотя штатный Flp работает на том же пине не пойму почему ваш не хочет, брал из системы 1,28 соответственно с теми же библиотеками.