работают с физической шиной.
блоки записи

----------------------------------------------------------------------------------------------------------
блоки чтения

---------------------------------------------------------------------------------------------------------
с буквой а:

в блоке задается адрес устройства (1) и номер регистра (2) в который нужно записать наши значения (3).
запись происходит при каждом изменении значения на входе "data"

с буквой b:

настройка аналогична предыдущему, только запись происходит при подаче "1" на вход "write". вход работает по фронту сигнала.
с буквой с:

все значения вынесены на входы. меняя значения на входах можно обращаться к разным устройствам и записывать в разные регистры.
___________________________________________________________________________________
на всех блоках имеется выход error значения на нем могут быть следующие
0: передача успешна
1: объем данных слишком велик для буфера передачи
2: получен NACK при передаче адреса
3: получен NACK при передаче данных
4: другая ошибка
если на нем "0" то все в порядке. использовать в программе этот выход не обязательно.
____________________________________________________________________________________
[spoiler=как это выглядит]

адреса устройств и регистров задаются в десятичной системе.
если адрес указан шестнадцатиричный , конвертируем в десятичный.
[spoiler=например в калькуляторе. ]

например в даташите адрес 0х2С соответствует 44 десятичному[/spoiler]
------------------------------------------------------------------------------------------
блоки чтения настраиваются аналогично блокам записи.
------------------------------------------------------------------------------------------