Реализация TWI slave на базе USI

Oct 31, 2024 03:05

Сегодня я закончил бета версию драйвера TWI(I2C) для семейства ATtiny45/85.
Можно посмотреть здесь: https://github.com/w5277c/core5277/blob/devel/core/drivers/i2c_su.inc


Read more... )

usi, slave, i2c, attiny, twi

Leave a comment

Comments 11

dp_3lo October 30 2024, 17:36:45 UTC

О ! :)
Я почти тем же самым занят.
Только не аквариум у меня - а котел отопления.
И вместо I2C - разбираюсь вот с RS485.
Провода длинные...
а некоторые сенсоры - аж на потолке второго этажа.
Решил все свести к единому стандарту связи - и "вышла мне дорога" - в RS485.
тем более электрический счетчик у меня в доме стоит - очень удобно им контролировать ток и напряжение по всем трем фазам - а там как раз RS485.

Reply

5277 October 31 2024, 01:26:20 UTC
Да, RS485 то что нужно, если использовать проводное решение.
Modbus тоже хорошо, но я использую свой протокол, он более компактный и более функциональный.
Если есть вопросы, спрашивайте, может быть что-нибудь подскажу. Так как есть не иллюзорный опыт работы с ним.

Вот, к примеру, у меня несколько реализаций UART в каталоге https://github.com/w5277c/core5277/tree/master/core/drivers (аппаратный, программный и программный быстрый)
Свой протокол я не распространяю, это часть SDK(не намного меньше размера ОС) моих устройств.

Да и вообще, предлагаю следить за моими постами. Так как планирую описывать весь процесс реализации автоматизации аквариумов.

P.S. если используете свои устройства на MAX485, то предлагаю посмотреть в сторону MAX487.

Reply

dp_3lo October 31 2024, 05:57:15 UTC

Да и вообще, предлагаю следить за моими постами.

Слежу. :)
Все коллеги коих в ЖЖ встретил - во френдах у меня. :)

Если есть вопросы, спрашивайте, может быть что-нибудь подскажу. Так как есть не иллюзорный опыт работы с ним.

Вопрос пока один - придумать структуру - которая подойдет для всех устройств что сидят на RS485.
Чтоб и хватило и лишнего не гонять по шине....

Хотелось бы унифицировать обмен, а то сам же путаться буду ....
А там пока зверинец.
ВОт сижу и чиркаю на бумаге - где float надо, а где и byte хватит.

первое поле - понятно - байт с адресом устройства, дальше черти что... :)

Например на котел - передаются только три сигнала - включение-выключение ТЭНов, а возвращает он кучу - напряжение на ТЭН (контроль исправности реле), ток через ТЭН (контроль исправности ТЭНа) температура корпуса котла (там NTC стоит следит), температура дымовых газов (там РТ100 к дымоходу прикручен) - потому что котел еще и на твердом топливе в морозы работает и голосовой извещатель орет когда дрова прогорели, или температура превысила верхнюю границу - ( ... )

Reply

5277 October 31 2024, 07:06:26 UTC
Я в свое время курил Меркурий-230, есть старая реализация Java библиотеки ( ... )

Reply


Leave a comment

Up