Технический форум по робототехнике.
Aseris » 10 ноя 2010, 18:33
Намучаетесь с уартом одно проводным, стандарты стандартами но как показывает практика многие разработчики микросхем тактирование уартов по своему делают, и расхождения клоков девайсов создает проблемы, было что вроде и одна и другая микросхема тактирует уарт одной и той же чатстотой, а пакеты бьются на высоких скоростях в схеме 1-2, в тоже время при варианте 1-1, 2-2 все отлично бегает.
А 1-Wire использует принцип подсчета импульсов за отрезок времени, менее требовательное к тактированию ИМХО, а проц оно грузить будет только при приеме, если начало приема вылавливать прерыванием, у нас ведь в серве слейв стоит.
Michael_K » 10 ноя 2010, 19:28
Проблемы надуманы.
Софтовый уарт даже полнодуплексный вполне себе работает - вешается на тайиер...
по скоростям уарт допускает разбег в 5% (ну это крайний случай - обычно говорят про 2.5 - 3). Такой точности на АВРках легко можно добиться даже без кварцев, особенно если смотреть на последние тиньки-межки (у стареньких встроенный генер был гораздо менее стабильным).
Я делал неоднократно и конфигурации один мастер - много слейвов, и с многими мастерами на шине - это проблема арбитража, а не скоростей. Другое дело, что на высоких скоростяк в куче проводов фронты ведут себя мерзко... но это уже чисто электрические проблемы.
boez » 10 ноя 2010, 19:37
Вообще конечно приятнее был бы протокол с битовой синхронизацией, он надежнее при отсутствии кварцев. А в частности 1-wire хорош тем, что кроме побитовой синхронизации в нем сразу заложена возможность ответа нескольких устройств одновременно и основанная на этом модель автодетекта адресов устройств. И уникальные адреса. Если делать свой протокол - то адреса наверное тоже желательны уникальные, хотя можно и какой-нить протокол раздачи адресов намутить. Или просто сделать команду "записать в еепром сетевой адрес", тогда перед началом работы каждую серву подключаем к контроллеру по одной штуке и задаем ей адрес, который затем пишем гвоздиком фломастером на боку сервы.
Michael_K » 10 ноя 2010, 20:27
Фичи-то у 1-wire хорошие, но реализация уж очень специфичная...
Vooon » 11 ноя 2010, 01:09
DeaD, для этого проекта я бы попробовал STM8S105K4 (LQFP32 7x7 mm, 16 K Flash, 2 K RAM, 1 K EEPROM) ~50 руб.
Жаль пока еще нет бесплатных компилеров, но можно купить STM8S-Discovery ~330 руб. с ним идет отладчик и софт.
Главное - LIN Slave и комплиментарные выходы ШИМа.
Вообще сначала хотел 103 с SSOP20, но там только LIN Master.
И я пожалуй бы реализовал бы стандарт LIN полностью, не хочу велосипедировать
Добавлено спустя 1 минуту 44 секунды:Вообще периферия STM8 почти такая же, как в STM32.
А у него она мне весьма нравится, еще бы качество доков повыше...
=DeaD= » 11 ноя 2010, 08:48
LQFP32 - это аут. Пока 8 ног будет для начала и родной AVR
.
=DeaD= » 13 ноя 2010, 15:43
Закупил 100шт ATTiny45 в SO8Wide, отрезаю пути к отступлению
А то как обычно - всё доделаю, а МК пропали
avr123.nm.ru » 13 ноя 2010, 21:32
почем ?
=DeaD= » 13 ноя 2010, 21:33
Так и знал
ладно, напишу здесь, а то замучают
по 43.65
Zeus » 16 ноя 2010, 10:02
Какая скорость передачи планируется?
Если каждый байт синхронизируется, то между ними нада вроде задержки делать?
Проверку CRC-16 планируете делать?
Интересно сколько времени займет опрос/установка 32 серв?
=DeaD= » 16 ноя 2010, 10:11
Сколько вопросов
Задержку между байтами конечно надо. Скорость пока планирую 28800. Если по 16 бит на байт (включая задержку) - это 1800 байт в секунду будет.
Опрос-установка 32 серв - а зачем каждый раз опрос?
Реальная задача - шестиног, у него 18 серв. Это надо передать 36 байт. Можно с частотой 50Гц вещать. А чаще и не надо - серва всё равно на входе имеет сигнал с частотой 50Гц.
=DeaD= » 23 ноя 2010, 16:58
Информация о состоянии:
* К проекту подключился тов. Nikitoz
HarryStar » 19 фев 2015, 12:39
Немножко некропостинга
Чем закончился проект? Сейчас пытаюсь найти нормальную реализацию 1wire slave на Си на авр с целью подключить 1-8 серв (по возможности) и другую свою периферию. Компактностью и ценой я правда не ограничен.
Очень был бы интересен ваш опыт, т.к. задачи близкие. Заранее спасибо.
Madf » 19 фев 2015, 17:27
HarryStar писал(а):Компактностью и ценой я правда не ограничен.
Если так, то вас этот проект не должен волновать.
Проще использовать
Dynamixel.
HarryStar » 25 фев 2015, 22:39
Не настолько не ограничен по цене. Я имел в виду что терзания ТС 40 руб или 60 мне без разницы, хоть 100, хоть 200, даже больше.
В принципе сейчас пишу свою реализацию Slave 1-wire на Си, существующие в инете не понравились совсем...