Ну мысль у меня такая имеем сеть из arduin slave 1 - slave n. протокол обмена у нас модбас по rs485 роутер у нас мастер сети на котором стоит веб серв. У нас всего 20 регистров этого более чем достаточно для любых задач если использовать биты этих регистров как это и делается в промышленности, 16 битный регистр * 20 регистров = 320 переменных ввода / вывода. В первой ардуине может использоваться всего 10 переменных и они могут быть из разных регистров. Во второй другое количество переменных и все те же 20 регистров. Да биты которые извлекаем из регистров превратим в те же байтовые переменные зато сеть не будет нагружена посылками в 100-300 регистров которые несут в себе всего одну переменную если эта переменная передает значения вкл выкл а не какое то цифровое температуру или еще что. Решил дописать на php чуть и html поправить в ардуине тоже немного поправлю добавлю пару функций. Сам сервер трогать не надо он прекрасно работает и 20 регистров нам хватит если ими правильно воспользоваться. И так что я тут на ваял собственно вот:
PHP код:
<?php
//чтение битов из регистра
$input = 15; //входная переменная (регистр)
$lamp_array = array();
for ($i=0;$i<16;$i++){
$lamp_array[$i] = ($input >> $i) & 0x01;
}
var_dump($lamp_array);//выводим на экран содержимое массива
?>
Собственно мы прочитали содержимое регистра и теперь можем обращаясь к элементам массива узнать состояние битов с 1 по 16.
Сейчас разбираюсь с записью бит в регистр.