Модуль повертає значення певного біту у десятковому, цілому, додатному вхідному числі

3045

Цей програмний модуль дозволяє реалізувати функцію визначення «встановлених» чи «вимкнутих» бітів у отриманому на вхід числі. Це дуже зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, UART, тощо. Також цей продукт дозволяє реалізувати задачі читання значущих даних у двійкових регістрах, лише вбудованими засобами плати і прошивки NodeMCU/Lua, без будь-яких додаткових технічних засобів чи доповнень.

Наш програмний продукт стане у пригоді, якщо ви проектуєте будь-який пристрій де знадобиться робота з підпорядкованими периферійними пристроями, їх протоколами передачі даних та регістрами стану і конфігурації.

Очистити
Артикул: Невідомо Категорії: , Позначок: , , , ,

Опис

Цей програмний модуль розроблявся і тестувався для роботи з

  • Прошивкою NodeMCU custom build by frightanic.com branch: master
  • build created on 2019-01-08
  • powered by Lua 5.1.4 on SDK 2.2.1(6ab97e9)
  • жодного додаткового обладнання чи обов’язкового C-модуля не вимагається

Продукт, після запуску у середовищі Lua, може «фоново» працювати(викликатися) як глобальна (за замовчуванням) чи локальна функція. Функція може викликатися як процедура, так як і звичайна функція у стилі callback. Тобто, розробник може застосовувати будь-який зручний варіант виклику:

Наприклад, 

function(params); 
print(function(params)); 
if function(params)==x then …. end;

Розробник може отримати від функції значення певного біту для десяткового числа. Функція повертає значення у десятковому форматі: 0 або 1, або ж, якщо параметри виклику функції вказано з помилками, на вихід буде повернуто строкове ‘error’. Валідацію вхідних параметрів вбудовано у тіло функції.

Продукт є одним з серії продуктів з перетворення двійкових, текстових та десяткових даних:

bitget4dec – читає і повертає значення певного біта у десятковому вхідному числі. Посилання на продукт .

bitset4dec – встановлює у вхідному числі певний біт у вказаний стан та повертає оновлене число. Посилання на продукт .

abin2dec – перетворює вхідне двійкове число (у форматі масив/таблиця) у десяткове число і повертає його. Посилання на продукт .

tbin2dec – перетворює вхідне двійкове число (у форматі текстового рядка) у десяткове число і повертає його. Посилання на продукт .

dec2abin – перетворює вхідне десяткове число у двійкове число і повертає його  у форматі масиву/таблиці. Посилання на продукт .

dec2tbin – перетворює вхідне десяткове число у двійкове число і повертає його у форматі текстового рядка. Посилання на продукт .

 twosc2dec – конвертує задане у доповненому до 2ки форматі десяткове число у звичайне десяткове число з урахуванням знаку та десяткової фракції після коми. Посилання на  продукт .

Для кого цей продукт

Кожен наш програмний продукт розроблено із застосуванням безмежного розмаїття можливостей простих і доступних контролерів, сенсорів та інших електронних компонентів, які можна знайти у будь-якому магазині. Головна наша мета – надати прості і недорогі інструменти швидкого вирішення задуманих проектів.

Цей програмний модуль дозволяє реалізувати функцію визначення «встановлених» чи «вимкнутих» бітів у отриманому на вхід числі. Це дуже зручний модуль, коли необхідно працювати регістрами пристроїв на шинах типу SPI, I2C, UART, тощо. Також цей продукт дозволяє реалізувати задачі читання значущих даних у двійкових регістрах, лише вбудованими засобами плати і прошивки NodeMCU/Lua, без будь-яких додаткових технічних засобів чи доповнень. Наприклад, у прошивці NodeMCU є окремий, спеціальний C-модуль bit., що також реалізує аналогічну функціональність, але вимагає додаткової пам’яті при прошивці контролера і не завжди може бути розміщений у прошивці саме через брак пам’яті у двійковому образі. 

Наш програмний продукт стане у пригоді, якщо ви проектуєте будь-який пристрій де знадобиться робота з підпорядкованими периферійними пристроями, їх протоколами передачі даних та регістрами стану і конфігурації. Зокрема, це можуть бути різноманітні сенсори та інші цифрові пристрої, що потребують перетворення даних вимірювань та/чи встановлення певних режимів роботи шляхом зчитування та настроювання спеціальних двійкових регістрів.

Ми будемо раді, якщо нашими продуктами скористаються:

  • Діти та їх батьки;
  • Учні та їх вчителі;
  • Студенти та їх лабораторні роботи;
  • Новачки у технологіях Інтернету речей;
  • Лаборанти та їх експерименти;
  • Аматори-електронщики-не-програмісти;
  • Аматори-програмісти-не-електронщики;
  • Професійні інженери та їх поважні замовники;

Можливості сучасних обчислювальних систем настільки потужні і всеосяжні, що дані програмні компоненти однаково добре згодяться як для домашньої автоматизації і факультативного навчання, так і комерційного впровадження, або швидкого розгортання окремих сегментів комерційних систем та виконання їх пілотних випробовувань.

Необхідні навички та інструменти

Всі програмні продукти на нашому сайті розраховано на користувачів, які вже вміють самостійно підключати, прошивати та програмувати контролер ESP8266 з прошивкою NodeMCU і мовою програмування Lua.

Таким чином, застосування даного комерційного-придбаного програмного модуля Клієнтом полягає у тому, щоб:

  • завантажити (download) lua-код у середовище розробника на комп’ютер,
  • ознайомитися з кодом і супутніми матеріалами пакету постачання,
  • адаптувати код за необхідності під свої задачі,
  • вивантажити (upload) програмний код у контролер та запустити на виконання;
  • після тестування придбаного коду, користувач може інтегрувати його до своїх власних програмних розробок.

Проте, Ви можете ознайомитися з інструкцією на нашому сайті, як швидко почати програмувати на Lua з контролером NodeMCU/ESP8266 за цим посиланням  “Як швидко почати працювати з контролером”.

Додаткова інформація

Інтерфейсна шина

Debug-консоль

Рівень складності

Простий

Передача даних назовні

Немає

Тип виконання

Як окрема функція, Як процедура

Локальний Web-сервер

Немає

Журналювання

Немає

Енергоспоживання

Звичайне

Композиція скриптів

Один скрипт

Статистична обробка даних

Проста обробка

Перевірена версія прошивки

2.2.1-master_20181207

Отримання точного часу

Немає

Інтерфейс користувача

Вивід на UART консоль

Виробники апаратного забезпечення

Espressif Systems, TI

Необхідні модулі прошивки

Немає

Мінімальна сумісна версія прошивки

1.5.4.1-master_20161201