Передача данных из множества ATtiny13A в один ATmega328P

Обсуждаем контроллеры компании Atmel.
Ответить
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

[uquote="akl",url="/forum/viewtopic.php?p=3573912#p3573912"]Напрямую нельзя. Вы же ставите резисторы последовательно со светиками, здесь тоже самое. Можно, поставить "цифровые". К слову, BCX53 это PNP и стрелку эмиттера нужно нарисовать как у транзистора TxD.[/uquote]
Да, с эмиттером ошибся, но это машинально, а не по незнанию.. А насчет отсутствия резисторов в базах для упрощения схемы исходил из того, что питание тиньки всего 2,5В и выходной ток портов там аппаратно ограничен на уровне 10 мА вроде бы.
Реклама
Мудрый кот
Аватара пользователя
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Сообщение Kavka »

Схема TinyBMS.JPG
Ммм... Постоянно включенные резисторный делитель и "стабилитрон"!? Ладно еще, делитель. Но зачем стабилизировать питание?
IMHO лишние потребители электичества ни к чему на аккумуляторном питании.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Реклама
OKF
Это не хвост, это антенна
Сообщения: 1407
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Да, стабилизатор не нужен. Делитель к пину 13, что бы отключать. Подтяжка 470 не нужна.
Видно что ТС не знает как делать софтовый TX, вот и будет тулить 24 оптрона одной кучей.(
И я бы спал всю дорогу, а просыпался бы от мастера. А значит INT нужно к оптрону, а ни что попало.
Мудрый кот
Аватара пользователя
Сообщения: 1810
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Сообщение Kavka »

[uquote="Combatos",url="/forum/viewtopic.php?p=3574036#p3574036"]выходной ток портов там аппаратно ограничен на уровне 10 мА[/uquote]Такого в спецификации на тиньку нет.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

[uquote="OKF",url="/forum/viewtopic.php?p=3574058#p3574058"]Да, стабилизатор не нужен. Делитель к пину 13, что бы отключать. Подтяжка 470 не нужна.
Видно что ТС не знает как делать софтовый TX, вот и будет тулить 24 оптрона одной кучей.(
И я бы спал всю дорогу, а просыпался бы от мастера. А значит INT нужно к оптрону, а ни что попало.[/uquote]

UART то программный! Кварца нет, внутренний RC-генератор в тиньке весьма нестабильный, питание понизится - частота уплывет, и попрут ошибки. У тиньки ИОН 1,1В, поэтому делитель рассчитан на макс. измеряемое напряжение 4,3В (чтобы можно было использовать на батареях не только LiFePO4, а и LiIon, LiPo). Что за пин 13 (8 ног всего)? Почему подтяжка 470 не нужна? Что, хватит мол, внутреннего 100 кОм? Ведь чем ниже сопротивление резистора подтяжки, тем большей скорости UART можно добиться, нет? Насчет INT согласен, разумно.
Реклама
OKF
Это не хвост, это антенна
Сообщения: 1407
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Программный на МАСТЕРЕ! Тут то само собой. Кто мешает подстраиваться по скорости, если напряжение гуляет!
Пин ТИНИ13! И что 9600 мало, 115200 нужно или у нас объёмы? И почему 100к, а не 200!(((
Реклама
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

[uquote="OKF",url="/forum/viewtopic.php?p=3574103#p3574103"]Программный на МАСТЕРЕ! Тут то само собой. Кто мешает подстраиваться по скорости, если напряжение гуляет!
Пин ТИНИ13! И что 9600 мало, 115200 нужно или у нас объёмы? И почему 100к, а не 200!((([/uquote]

Зачем программный на мастере, если там аппаратный присутствует? Как подстраиваться по скорости от напряжения, практическая реализация? Даже 4800 хватит, но на этих дешевых оптронах боюсь не получится без резисторов подтяжки.
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

[uquote="OKF",url="/forum/viewtopic.php?p=3574058#p3574058"]Подтяжка 470 не нужна... А значит INT нужно к оптрону, а ни что попало.[/uquote]
PCINT - прекрасно справится с выходом из сна. Стабилизатор нужен. Внешний резистор подтяжки на RX 470 нужен.
OKF
Это не хвост, это антенна
Сообщения: 1407
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Затем что бы 24-мя оптронами на мигать одновременно. Это ж какую психику нужно иметь... Прям, цветомузыка. Оптронная.)
Почитайте Lin хотя бы. А вам вообще никто не мешает договориться с мастером и настраиваться по нему. Либо, тупо построить таблицу с коэффициентами для формирования задержки в зависимости от напряжения питания. Либо, тупо подстравивать OSCCAL в зависимости от напряжения...
Конечно на 4800 не получится. Так может попробовать надо?
Ну если PCINT справится - какие вопросы. Делайте!
Тут вообще, если вам не важно потребление, то тогда и дискутировать смысла нет.
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

[uquote="OKF",url="/forum/viewtopic.php?p=3574132#p3574132"]Затем что бы 24-мя оптронами на мигать одновременно.[/uquote]

Как по-другому мастер поймет, от какой именно тиньки ему "телеграмма"?
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

если частота меняется, то тут надо разрабатывать какой-то аналог 1-wire, где длительность может меняться в широких пределах.
конечно, упрощенный аналог, точная копья не нужна.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
OKF
Это не хвост, это антенна
Сообщения: 1407
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Можно и 1-wire. Только для ТС это нереально, потому что нужно запустить оба конца, а не один как с UART.
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

[uquote="OKF",url="/forum/viewtopic.php?p=3574879#p3574879"]Можно и 1-wire. Только для ТС это нереально[/uquote]
Да все реально. ТС вполне подойдет некий аналог LIN. А физический интерфейс можно сделать без оптронов на RS-485/422 трансиверах (типа MAX481)
LIN по стандарту допускает отклонения тактовой частоты ведомого устройства до 14%.
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

Я ищу недорогое решение. MAX481- 8$ за 1 шт., FL817 - 0.06х48=2,9$ за 48 шт. Разница по-моему очевидна. Буду делать тестовый образец для 4 ячеек по этой схеме:
Схема TinyBMS.JPG
(201.62 КБ) 572 скачивания
А стабилизация питания нужна не только для стабилизации частоты, а еще и для адекватной работы АЦП, так что ей быть!
И практика всё мне покажет! :) Опрос тинек будет один раз в секунду, в перерывах они спят. Эта разработка для электротранспорта, не думаю, что потребление схемы будет критично для батареи. Для предотвращения зависания будет использоваться сторожевой таймер. Нашел вроде толковую программную реализацию UART для tiny13:
https://habr.com/ru/post/346980/
Правда я програмлю в CodeVision, а проект для Atmel Studio 7. Что ж, буду осваивать Atmel Studio. Многие хвалят..
Грызет канифоль
Сообщения: 289
Зарегистрирован: Чт ноя 06, 2014 13:09:06

Сообщение viiv »

[uquote="Combatos",url="/forum/viewtopic.php?p=3574984#p3574984"]FL817 - 0.06х48=2,9$ за 48 шт.[/uquote]
А чего не хотите использовать "кольцо"? вместо 48шт нужно "всего" 24 :-)
Друг Кота
Аватара пользователя
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Сообщение Albert_V »

Combatos, Поправьте схему, пока в реальности не стало вышибать порты PB0 или переходы БЭ у BCX53.
Так же, как только напряжение на АСС превысит приблизительно 3.9В, BCX53 откроется независимо от вашего желания.
С питанием, тоже "весело". Почти 40мА при полностью заряженном АСС... :facepalm:
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн дек 29, 2014 21:29:32

Сообщение Combatos »

[uquote="Albert_V",url="/forum/viewtopic.php?p=3575104#p3575104"]Combatos, Поправьте схему, пока в реальности не стало вышибать порты PB0 или переходы БЭ у BCX53.
Так же, как только напряжение на АСС превысит приблизительно 3.9В, BCX53 откроется независимо от вашего желания.
С питанием, тоже "весело". Почти 40мА при полностью заряженном АСС... :facepalm:[/uquote]

В железе проверял, все работает.. Возможно, до поры, до времени. Вы имеете ввиду помимо токоограничивающего еще поставить резистор подтяжки базы к минусу? Какие номиналы посоветуете? 40мА - что имеете ввиду?

Добавлено after 4 minutes 14 seconds:
[uquote="viiv",url="/forum/viewtopic.php?p=3575063#p3575063"][uquote="Combatos",url="/forum/viewtopic.php?p=3574984#p3574984"]FL817 - 0.06х48=2,9$ за 48 шт.[/uquote]
А чего не хотите использовать "кольцо"? вместо 48шт нужно "всего" 24 :-)[/uquote]

Так это ж в 24 раза дольше ждать ответа, и жрать батарею в это время :(
Друг Кота
Аватара пользователя
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Сообщение Albert_V »

Combatos писал(а):В железе проверял, все работает..
Да как же оно работало с транзистором по этой схеме? Если только в симуляторе?...
Нарисуйте защитный диод с вывода порта на VCC контроллера (этот диод есть на кристалле ATtiny) и ещё раз внимательно посмотрите на протекание тока через переход ЭБ BCX53 на 431-ую. Для начала, считайте что вывод PB0 настроен на вход.
Возможно, этот ток вы "не заметили" на фоне общего потребления схемы.
Что касается тока около 40мА - посчитайте разницу между напряжением полностью заряженного АСС и напряжением на 431-ой. Номинал резистор между ними известен, закон Ома - тоже.
Грызет канифоль
Сообщения: 289
Зарегистрирован: Чт ноя 06, 2014 13:09:06

Сообщение viiv »

[uquote="Combatos",url="/forum/viewtopic.php?p=3575118#p3575118"]Так это ж в 24 раза дольше ждать ответа, и жрать батарею в это время :([/uquote]

1) Это зависит от алгоритмов опроса.
Навскидку, не сильно думал (и читал другие протоколы) - первое что пришло :))
Формат фрейма:
<SOF>{SID}{LEN}{CMD}{DATA}{CKS}<EOF>

<SOF> и <EOF> - начало и конец фрейма соответственно, этих символов во фреме быть не может (байт стаффинг).
{SID} - идентификатор отправителя (мастер (328) ставит ноль, слейвы (13a) добавляют единичку).
{LEN} - длина данных
{CMD} - идентификатор команды (можно добавить маску ячеек, которые должны воспринять команду)
{CKS} - контрольная сумма

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


Тем самым, если мастер принял фрейм с верной контрольной суммой, то в нем ответы всех слейвов, которых он хотел опросить.


2) У Вас при заряженной батарее через TL-ку течет 36ma, через диод оптрона в режиме передачи 0-ка, ~3ma. Если через оптрон (и микроконтроллер) ток не течет, то он (ток) течет через TL-ку. Т.е. ток от ячейки зависит только от ее (ячейки) напряжения, а включен/выключен оптрон, спит 13a или "молотит" в полную мощность никакой роли не играет. Или я ошибаюсь?
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

[uquote="Combatos",url="/forum/viewtopic.php?p=3574984#p3574984"]Я ищу недорогое решение. MAX481- 8$ за 1 шт., FL817 - 0.06х48=2,9$ за 48 шт.[/uquote]
Не надо дезинформировать общественность! Вот менее $2 за 50 штук: https://ru.aliexpress.com/item/200PCS-M ... st=ae803_4

И даже в Чип&Дип далеко не $8 https://www.chipdip.ru/product/max485esa-t-maxim

И не забывайте, что трансиверов потребуется в 2 раза меньше, чем оптронов. Они же полудуплексные.
Ответить

Вернуться в «AVR»