I2C - просто!

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

Выкладываем наработки по I2C.
Мои пробы.
Блоки чтения здесь, Алексея, ([ref=#ff8000]pan[/ref])
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C

Сообщение ZeRG »

а можно с ардуино сделать слейф?

Отправлено спустя 26 секунд:
ну только принимать данные от мастера и все
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

ZeRG писал(а): 30 апр 2018, 00:30а можно с ардуино сделать слейф?
Можно, не сложно, но доступ делать сразу ко всем, т.е с начала и до конца, без произвольного. Вопрос только один, даже не вопрос, а требование - тип и количество данных.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C

Сообщение ZeRG »

нужно чтоб ардуино принимала 1 интержер от 0 до 255 все.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C

Сообщение Sancho »

[ref]ZeRG[/ref], Пробуй. 0-255 - байт. Если очень надо инт - умнож на константу 1 типа integer.

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

Отправлено спустя 8 минут 3 секунды:
Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C

Сообщение ZeRG »

[ref=#ff8000]Sancho[/ref], а какой блок должен быть у мастера?

Отправлено спустя 49 секунд:
Sancho писал(а): 30 апр 2018, 14:45Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.
не совсем понял как?
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

ZeRG писал(а): 30 апр 2018, 15:17[ref=#ff8000]Sancho[/ref], а какой блок должен быть у мастера?

Отправлено спустя 49 секунд:
Sancho писал(а): 30 апр 2018, 14:45Не забудь два резистора подтяжек по шине и питанию, если только две ардуинки.
не совсем понял как?
Для отправки - Пробуй блоки Алексея ([ref=#ff8000]pan[/ref] ).
Два резистора от SDA и SCL к питанию. 4,7к - в пределах 50 см хватит(должно).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C

Сообщение ZeRG »

спасибо все работает но теперь возникла другая проблема преобразование инт в байт умножением и блоком преобразования не получается выводит какие то непонятные символы
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C

Сообщение Sancho »

инт в байт
ZeRG писал(а): 30 апр 2018, 16:51спасибо все работает но теперь возникла другая проблема преобразование инт в байт
твой младший
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C

Сообщение ZeRG »

спасибо [ref=#ff8000]Sancho[/ref],

Отправлено спустя 2 часа 17 минут 30 секунд:
I2C - просто!
а можно еще последний вопрос по этой теме :rolleyes: а если данные с мастера не 1 а несколько идущих на 1 ардуино как это сделать?)
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

ZeRG писал(а): 30 апр 2018, 20:51а если данные с мастера не 1 а несколько идущих на 1 ардуино как это сделать?)
Или использовать предыдущий блок, но с разными константами адреса, при настройке блока(параметры).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C - просто!

Сообщение ZeRG »

Sancho писал(а): 01 май 2018, 09:21но с разными константами адреса
я думаю не с константами адреса а нужен регистр
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

ZeRG писал(а): 01 май 2018, 13:20я думаю не с константами адреса а нужен регистр
Понял, что не правильно понял. Но написано было тоже не особо понятно...
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28 май 2017, 00:28

I2C - просто!

Сообщение ZeRG »

и снова спасибо :yahoo:

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

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

Отправлено спустя 1 минуту 25 секунд:
//Wire.setClock(400000);
по идее должен быть гдето такой код
Последний раз редактировалось ZeRG 01 май 2018, 18:24, всего редактировалось 1 раз.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

100 кГц. Стоит по умолчанию в Wire.h
Можно поднять до 400...

Отправлено спустя 3 минуты 27 секунд:
ZeRG писал(а): 01 май 2018, 18:22//Wire.setClock(400000);
Только без слэшей - иначе не сработает, будет как комментарий, после
Wire.begin
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
seri0shka
Лейтенант
Сообщения: 391
Зарегистрирован: 09 апр 2016, 12:17
Откуда: Кременчуг
Имя: Сергей

I2C - просто!

Сообщение seri0shka »

Не подскажете, программную реализацию I2C на форуме обсуждали (не аппаратный I2C)? Поиск выдаёт полфорума сразу.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

seri0shka писал(а): 02 май 2018, 22:46программную реализацию I2C на форуме обсуждали (не аппаратный I2C)? Поиск выдаёт полфорума сразу.
Серёжка, не понял вопроса, честно. Конкретно - о чём именно речь? и причина поиска?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
kulibinsvv
Лейтенант
Сообщения: 487
Зарегистрирован: 18 сен 2015, 10:04
Откуда: Омск
Благодарил (а): 3 раза
Поблагодарили: 5 раз

I2C - просто!

Сообщение kulibinsvv »

Sancho писал(а): 03 май 2018, 08:27 не понял вопроса
В FLProg`e реализован способ обмена по I2C с использованием аппаратного модуля микроконтроллера. Существует также способ эмулирующий работу данного модуля программно. Если аппаратный модуль жёстко привязан к выводам контроллера, то программному - можно назначить любые выводы.
Это, примерно, как с UART.
Мой змей, этот ползучий соблазн сомнения,всё шевелится, побуждая «искать концы»... (Станислав Ермаков)
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

I2C - просто!

Сообщение Sancho »

А смысл, аргументы?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
kulibinsvv
Лейтенант
Сообщения: 487
Зарегистрирован: 18 сен 2015, 10:04
Откуда: Омск
Благодарил (а): 3 раза
Поблагодарили: 5 раз

I2C - просто!

Сообщение kulibinsvv »

Sancho писал(а): 03 май 2018, 08:49А смысл, аргументы?
Это пусть [ref]seri0shka[/ref] объясняет.
Мой змей, этот ползучий соблазн сомнения,всё шевелится, побуждая «искать концы»... (Станислав Ермаков)
Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя