Страница 1 из 2

I2C - просто!

Добавлено: 01.10.2017{, 03:44}
Sancho
Выкладываем наработки по I2C.
Мои пробы.
Блоки чтения здесь, Алексея, (pan)

I2C

Добавлено: 30.04.2018{, 00:30}
ZeRG
а можно с ардуино сделать слейф?

Отправлено спустя 26 секунд:
ну только принимать данные от мастера и все

I2C - просто!

Добавлено: 30.04.2018{, 08:48}
Sancho
ZeRG писал(а):
30.04.2018{, 00:30}
а можно с ардуино сделать слейф?
Можно, не сложно, но доступ делать сразу ко всем, т.е с начала и до конца, без произвольного. Вопрос только один, даже не вопрос, а требование - тип и количество данных.

I2C

Добавлено: 30.04.2018{, 13:03}
ZeRG
нужно чтоб ардуино принимала 1 интержер от 0 до 255 все.

I2C

Добавлено: 30.04.2018{, 14:32}
Sancho
ZeRG, Пробуй. 0-255 - байт. Если очень надо инт - умнож на константу 1 типа integer.

Отправлено спустя 5 минут 16 секунд:
Адрес в настройках блока. По умолчанию 11.

Отправлено спустя 8 минут 3 секунды:
Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.

I2C

Добавлено: 30.04.2018{, 15:16}
ZeRG
Sancho, а какой блок должен быть у мастера?

Отправлено спустя 49 секунд:
Sancho писал(а):
30.04.2018{, 14:45}
Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.
не совсем понял как?

I2C - просто!

Добавлено: 30.04.2018{, 15:23}
Sancho
ZeRG писал(а):
30.04.2018{, 15:17}
Sancho, а какой блок должен быть у мастера?

Отправлено спустя 49 секунд:
Sancho писал(а):
30.04.2018{, 14:45}
Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.
не совсем понял как?
Для отправки - Пробуй блоки Алексея (pan ).
Два резистора от SDA и SCL к питанию. 4,7к - в пределах 50 см хватит(должно).

I2C

Добавлено: 30.04.2018{, 16:51}
ZeRG
спасибо все работает но теперь возникла другая проблема преобразование инт в байт умножением и блоком преобразования не получается выводит какие то непонятные символы

I2C

Добавлено: 30.04.2018{, 17:43}
Sancho
инт в байт
ZeRG писал(а):
30.04.2018{, 16:51}
спасибо все работает но теперь возникла другая проблема преобразование инт в байт
твой младший

I2C

Добавлено: 30.04.2018{, 18:34}
ZeRG
спасибо Sancho,

Отправлено спустя 2 часа 17 минут 30 секунд:
I2C - просто!
а можно еще последний вопрос по этой теме :rolleyes: а если данные с мастера не 1 а несколько идущих на 1 ардуино как это сделать?)

I2C - просто!

Добавлено: 01.05.2018{, 09:21}
Sancho
ZeRG писал(а):
30.04.2018{, 20:51}
а если данные с мастера не 1 а несколько идущих на 1 ардуино как это сделать?)
Или использовать предыдущий блок, но с разными константами адреса, при настройке блока(параметры).

I2C - просто!

Добавлено: 01.05.2018{, 13:20}
ZeRG
Sancho писал(а):
01.05.2018{, 09:21}
но с разными константами адреса
я думаю не с константами адреса а нужен регистр

I2C - просто!

Добавлено: 01.05.2018{, 13:52}
Sancho
ZeRG писал(а):
01.05.2018{, 13:20}
я думаю не с константами адреса а нужен регистр
Понял, что не правильно понял. Но написано было тоже не особо понятно...

I2C - просто!

Добавлено: 01.05.2018{, 14:44}
ZeRG
и снова спасибо :yahoo:

Отправлено спустя 3 часа 35 минут 54 секунды:
скорость передачи данных в данном блоке максимальная?

Отправлено спустя 47 секунд:
или же какая то определенная и возможно ли ее повысить?

Отправлено спустя 1 минуту 25 секунд:
//Wire.setClock(400000);
по идее должен быть гдето такой код

I2C - просто!

Добавлено: 01.05.2018{, 18:23}
Sancho
100 кГц. Стоит по умолчанию в Wire.h
Можно поднять до 400...

Отправлено спустя 3 минуты 27 секунд:
ZeRG писал(а):
01.05.2018{, 18:22}
//Wire.setClock(400000);
Только без слэшей - иначе не сработает, будет как комментарий, после
Wire.begin

I2C - просто!

Добавлено: 02.05.2018{, 22:46}
seri0shka
Не подскажете, программную реализацию I2C на форуме обсуждали (не аппаратный I2C)? Поиск выдаёт полфорума сразу.

I2C - просто!

Добавлено: 03.05.2018{, 08:27}
Sancho
seri0shka писал(а):
02.05.2018{, 22:46}
программную реализацию I2C на форуме обсуждали (не аппаратный I2C)? Поиск выдаёт полфорума сразу.
Серёжка, не понял вопроса, честно. Конкретно - о чём именно речь? и причина поиска?

I2C - просто!

Добавлено: 03.05.2018{, 08:46}
kulibinsvv
Sancho писал(а):
03.05.2018{, 08:27}
не понял вопроса
В FLProg`e реализован способ обмена по I2C с использованием аппаратного модуля микроконтроллера. Существует также способ эмулирующий работу данного модуля программно. Если аппаратный модуль жёстко привязан к выводам контроллера, то программному - можно назначить любые выводы.
Это, примерно, как с UART.

I2C - просто!

Добавлено: 03.05.2018{, 08:49}
Sancho
А смысл, аргументы?

I2C - просто!

Добавлено: 03.05.2018{, 09:12}
kulibinsvv
Sancho писал(а):
03.05.2018{, 08:49}
А смысл, аргументы?
Это пусть seri0shka объясняет.