Цей програмний модуль дозволяє реалізувати функцію визначення високосного року лише вбудованими засобами плати і прошивки NodeMCU/Lua без будь-яких додаткових технічних засобів чи доповнень. Продукт, після запуску у середовищі Lua, може «фоново» працювати як глобальна (за замовчуванням) чи локальна функція. Функція може викликатися як процедура, так як і звичайна функція у стилі callback.
Цей програмний модуль реалізує мінімальний набір інструментів для підключення і перевірки кольорового дисплея з чіпом SSD1351 через інтерфейс SPI у середовищі NodeMCU / Lua на мікроконтролері ESP8266-12 з встановленим C-модулем графічної бібліотеки UCG. Продукт ucg_ssd1351rgb , після запуску у середовищі Lua, виконує ініціалізацію всіх необхідних інтерфейсів і бібліотек з рівня мови Lua, а також виводить на дисплей тестові графічні прімітиви. У…
Цей програмний модуль дозволяє конвертувати десяткове число, що отримане, наприклад, з інших функціональних компонентів програми, у текстовий рядок з двійковим значенням результату конвертування. Це потрібний і зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, тощо. На наш погляд, продукт, що пропонується, буде зручним для початківців, які ще не розібралися досконально з двійковою системою числення, або ж…
Розумний модуль керування виходом із збереженням конфігурації на внутрішню флеш-пам'ять, дозволяє реалізувати збереження та відновлення конфігурації і стану виходу керування виконавчим механізмом у разі раптового знеструмлення / відновлення живлення, або через зависання і перезавантаження головного контролера. Продукт, після запуску у середовищі Lua, працює як повноцінний модуль зі своїми публічними методами, що інтегровано до системного оточення і котрі можливо викликати з…
Цей програмний модуль дозволяє реалізувати функцію багатофункціональної кнопки з індикацією. Багатофункціональна кнопка дозволяє спростити локальний інтерфейс користувача, заощадити піни контролера, реалізувати різноманітні сценарії роботи єдиної кнопки щонайменше для одинарного, подвійного, потрійного та тривалого натискання кнопки користувачем. Також для тривалого натискання реалізовано фіксацію стану. Підхід застосування однієї кнопки для усіх завдань взаємодії користувача з розумним пристроєм також у рази спрощує задачу…
Цей програмний модуль дозволяє реалізувати функцію визначення кількості днів до Нового року лише вбудованими засобами плати і прошивки NodeMCU/Lua без будь-яких додаткових технічних засобів чи доповнень, без підключення до мережі Інтернет. Для певних параметрів року, місяця і дня, функція повертає відповідь: скільки днів залишилося до кінця календарного року. Як опції, можливо вказати додаткові параметри такі як години, хвилини та секунди.…
Цей програмний модуль дозволяє змінити значення «встановлених» чи «вимкнутих» бітів у отриманому на вхід десятковому числі. Це потрібний і зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, UART, тощо. Цей модуль дозволяє реалізувати задачі запису значущих даних у двійкові регістри, лише вбудованими засобами плати і прошивки NodeMCU/Lua, без будь-яких додаткових технічних засобів чи доповнень. Наш програмний…
Цей програмний модуль дозволяє конвертувати десяткове число, що отримане, наприклад, з інших функціональних компонентів програми, у побітовий двійковий масив. Це потрібний і зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, тощо. На наш погляд, продукт, що пропонується, буде зручним для початківців, які ще не розібралися досконально з двійковою системою числення, або ж для тих розробників, які…
Програмний модуль драйвера розширювача портів дозволяє реалізувати повний набір можливостей апаратної інтегральної схеми розширювача портів PCA9538 і підключити до контролера NodeMCU через шину I2C ще вісім додаткових портів вводу-виводу, причому з обробкою переривань. Застосування послідовної шини заощаджує/вивільняє порти контролера — цей підхід потребує лише три GPIO контролера, а надає натомість аж вісім додаткових портів. Продукт pca9538-ext-drv, після запуску у середовищі…
Модуль лічильника імпульсів реалізує розрахунок рівня еквівалентної потужності фонового gamma-випромінювання за імпульсами, що надходять на вхід GPIO з реєстратора з встановленою трубкою Гейгера-Мюллера типу СБМ-20, або аналогічною. Після запуску у середовищі Lua продукт radCounter «фоново» працює як повноцінний модуль зі своїми публічними методами, що зареєстровано у системному оточенні і котрі можливо викликати з рівня мови Lua. У модулі реалізовано методи:…
Цей програмний модуль дозволяє реалізувати функцію перевірки наявності доступу до Інтернет лише вбудованими C-модулями прошивки NodeMCU/Lua (не забудьте включити їх у свою прошивку) без будь-яких додаткових технічних засобів чи доповнень. Перевірка наявності доступу до інтернет є ключовою, якщо Ви розробляєте програмно-технічне рішення, що не може працювати без доступу до мережі Інтернет.
Програмний модуль драйвера сенсора еквівалентних рівнів CO2 та TVOC реалізує набір інструментів апаратної інтегральної схеми сенсора CCS811. В драйвері ми вирішили програмно опитувати сенсор і обробляти події на стороні головного контролера. Застосування послідовної шини, заощаджує/вивільняє порт контролера під сигнал INT. До програмної обробки подій на стороні контролера нас підштовхнула відсутність апаратної реалізації обробки подій за порогами по TVOC (сенсор підтримує…
Цей програмний модуль драйвера сенсора освітленості реалізує повний набір інструментів в обхід деяких незручних можливостей апаратної інтегральної схеми MAX44009. Через “дивну” реалізацію виробником мікросхеми режиму обробки переривань “віконного компаратора” з двома порогами, ми прийшли до рішення, що набагато ефективніше буде програмно опитувати сенсор і обробляти події на стороні головного контролера. Застосування лише послідовної шини, заощаджує/вивільняє порт контролера під сигнал INT.…
Програмний модуль для інтеграції апаратного модуля інтерфейсів користувача I2CUI1, дозволяє побудувати повноцінний інтерфейс взаємодії користувача з розумним пристроєм. Широкий набір функцій інтерфейсу користувача реалізується завдяки інтегральної схемі розширювача портів PCA9538, джойстика на 5 позицій, RGB- світлодіода та базера. Програмний продукт дозволяє підключити I2CUI1 до контролера NodeMCU через шину I2C з обробкою переривань через окремий GPIO. Застосування у даному програмно-апаратному рішенні…
Цей програмний модуль дозволяє реалізувати функцію визначення «встановлених» чи «вимкнутих» бітів у отриманому на вхід числі. Це дуже зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, UART, тощо. Також цей продукт дозволяє реалізувати задачі читання значущих даних у двійкових регістрах, лише вбудованими засобами плати і прошивки NodeMCU/Lua, без будь-яких додаткових технічних засобів чи доповнень. Наш програмний…
Увага: оскільки Lua, у прошивці NodeMCU, має вбудовану функцію tonumber(‘1010’,2), цей продукт є навчальним та показує альтернативний спосіб перетворення заданого текстовим рядком двійкового значення числа у десяткове. Також слід зазначити, що вбудованої функції для зворотного перетворення, тобто десяткового числа у текстове двійкове, за нашими даними на даний час немає. Цей програмний модуль дозволяє конвертувати «текстове» двійкове число типу ‘10…000101’ у…
Цей програмний модуль дозволяє конвертувати двійкове число типу {b0,b1,b2,…,Bn} у десяткове. Це потрібний і зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, UART, тощо. На наш погляд, цей продукт буде зручним для початківців, які ще не розібралися досконально з двійковою системою числення, або ж для тих розробників, які мають специфічну задачу щодо перетворення саме заданого масивом…
Цей програмний модуль дозволяє конвертувати число отримане, наприклад, з регістрів сенсора у звичайне десяткове значення. Це потрібний і зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, тощо. На наш погляд, цей продукт буде зручним для початківців, які ще не розібралися досконально з двійковою системою числення, або ж для тих розробників, які мають специфічну задачу щодо перетворення…