
Нештатная информация на штатный дисплей
#52
Отправлено 29 October 2014 - 10:53
1. про "схему шины" - согласен, попробую, должно заработать (тем более, что вчера я уже разок увидел нужное сообщение на дисплее)
2. про арбитраж - это реализуется на аппаратном уровне, насколько я понял - нельзя сказать конкретному устройству "заткнись". Здесь просто на шине устраняется "балаган", когда все одновременно орут и толком никто ничего не слышит - просто наводится порядок в сообщениях и сообщения начинают доходить до адресатов - не более того
3. про "слушать коды" и отправлять в дисплй - с этого я и начал.. но вот представь себе стиуацию (штатная балалайка есть):
- балалайка флудит вывод на дисплей примерно раз в 150мс
- платка что-то там приняла (пусть для определенности это будет средний расход)
- платка отправила дисплею команду - "нарисуй расход"
- дисплей это принял и исполнил
- балалайка в очередной раз отправила команду - напиши название станциии
и... наше сообщение перетерто..
именно с этой проблемой "перетирания" я и борюсь.
4. документик хороший - он рассказывает об основах (аппаратный уровень, разрешение коллизий, коррекция ошибок и т.п.).. но в нашем случае это не так интересно, поскольку мы саму шину не реализуем - она у нас уже есть как данность (в машине), а за "низкоуровневую" реализацию отвечает MCP2515 и MCP2551 (а вот разработчики этих микросхем собаку съели на подобных документах). В своем устройстве я могу оперировать только адресами устройств, длинной пакета и его содержимым.. могу читать (фильтровать, преобразовывать и т.п.), могу передавать.... но при этом совершенно не заморачаваясь на тему "как оно там коллизии обходит".
#53
Отправлено 29 October 2014 - 12:53


И еще вопрос, программно можно нажать на кнопку?
#54
Отправлено 29 October 2014 - 13:17

Про программное нажатие кнопок - тут надо пробовать... вроде как нажатие кнопок на руле - должно транслироваться в CAN-шину (что подтверждается тут:
Аналогично, думаю, можно "слушать" сообщения о нажатии кнопок и эту информацию использовать для управлению разрабатываемым устройством (к примеру - переключиться в режим AUX - это можно отловить по сообщению для отображения на дисплее) и дальше слушать нажатие кнопки "mode" на руле (в этом режиме она не используется, но, надеюсь, информация о ее нажатии будет в шине). Аналогично с другими кнопками на руле - тогда можно будет и дату-время подстраивать и переключаться между режимами отображения информации и проч.).
Кстати, для тех, у кого нет штатной балалайки я уже готов сделать девайс по отображению информации маршутного компа (ну и даты-времени, если надо). Есть желающие?
перед запуском мелкого производства нужен хотя бы один "подопытный" - чтобы я подключил свой прототип к диагностическому разъему и проверил, что все работает (заодно и "подопытный" сможет подтвердить, что это не просто разговоры

#56
Отправлено 29 October 2014 - 16:26

#57
Отправлено 29 October 2014 - 20:06
1 Если врезаться между КАН шиной и дисплеем, нужно писать много коду, и следить за всеми сообщениями, но, есть преимущество, минимум переделок при подключении.
2 Если, смириться с некоторой доделкой, то по мне, проще врезаться между штатной балалайкой, и контролировать только ее сообщения, и уже будет по барабану, штатная голова стоит или нет. Глушить по необходимости ненужные на текущий момент сообщения, и выводить свои.
#58
Отправлено 30 October 2014 - 00:08


_Michail_, тут как посмотреть.. про "много кода" - ну да, на пару-тройку строк больше.. зато гибкость и можно реализовать максимально похоже на "штатное" (к примеру - отображается какое-то "нештатное" сообщение, а ты нажимаешь кнопку увеличения громкости - это отражается на дисплее (как и при штатном варианте), а потом все возвращается в исходное состояние)...
Кстати, можно схему с двумя интерфейсами (тот вариант, что я прорабатываю) подключить и между магнитолой и шиной - и тоже можно реализовать максимально похожее на штатное поведение.
В принципе, есть вариант поступить "по тупому" - поставить релюху между шиной и магнитолой, которая будет банально отрубать магнитолу от шины (соответственно, "глушить" ее сообщения в шину). Примерно так:

Но я все-таки хочу сделать "полную версию". Тем более, что сегодня все-таки победил "лабораторную" шину и у меня дома на столе система уже заработала.
Проблем в моем "стенде" оказалось две:
1. Нужен был "терминатор" (хватило одного резистора на 120Ом) - поставил у дисплея
2. По каким-то непонятным мне причинам подохла одна микросхема MCP2551 (сравнивал сигналы осциллографом на двух интерфейсах своего устройства). Заменил ее и все заработало.
Сейчас "лабораторный" стенд работает в полном объеме. Тестовая прошивка на один интерфейс выводит "Hello car", на другой "Hello disp". Теперь уже можно писать полный код для вывода полезной информации.
P.S. кстати, если оставить у дисплея подключение только к MS_CAN - не работает блок отображения климата.
P.P.S. вообще круто сделать три CAN-интерфейса: первый смотрит на высокоскоростную шину (там много чего о моторе можно узнать), второй - на среднескоростную (магнитола, управление климатом?, маршрутник и т.п.).. а третий - на дисплей, чтобы можно было все отображать как хочется
Сообщение отредактировал ustas: 30 October 2014 - 00:22
#60
Отправлено 30 October 2014 - 09:29
#61
Отправлено 30 October 2014 - 11:40
+1
С не меньшим удовольствием. По той же причине не вмешиваюсь

Единственное, что могу добавить - ГУ Phantom, вроде как нештатное ГУ, но на дисплей "флудит" как штатное (радио - диапазон, частота радиостанции; DVD (MP3) - номер трека, время).
Был бы проект жив - просто купил бы и не парился.. но тот проект умер - пришлось все изучать самостоятельно.
Проект, возможно, умер. Но действующий экземпляр катается недалеко от меня

#62
Отправлено 30 October 2014 - 13:30
Ну, тут я образно


Не не не, это не наш метод, нужно еще и кнопку вкл реле делать

А вот в этом что-то есть, тут уже будет полная информация, еще привязать всю эту песню к кнопкам на руле или еще куда... может своих пару тройку кнопок, которыми можно листать параметры. Типа назад в перед стоп, показывай с балалайки

#63
Отправлено 31 October 2014 - 15:41
По финансам тоже поддержу.
#64
Отправлено 31 October 2014 - 20:47

Сейчас пока пытаюсь прикинуть, сколько будут стоить комплектующие для первой партии.
Пока помогите определиться с составом "модулей" на плате.
Видится следующий список:
1. МК - atmega328 (с минимальным обвесом, но с тактированием от кварцевого резонатора на 16МГц - чтобы не снижать быстродействие)
2. контроллер CAN-шины на базе MCP2551+MCP2515 (минимальный необходимый обвес)
3. "пищалка" (для организации функции парктроника)
4. разъемы на плату и для кабелей + miniUSB-разъем (чтобы запитывать девайс от автомобильной зарядки или чего-то подобного)
этот вариант - "минимум". На базе этого можно сделать "маршрутный комп" для машин с нештатной головой и подключить парктроник.
5. модуль часов реального времени - "часы и календарь" (только нужно придумать, какую резервную батарейку на 3В использовать, которая бы была долгоиграющей и не боялась морозов)
6. второй контролер CAN - "для машин со штатной балалайкой"
7. DC-DC преобразователь ("блок питания" - проще говоря - т.е. все подключения можно будет сделать за торпедо)
Все компоненты (в т.ч. "полный набор") можно сделать на двусторонней плате размером где-то 10х6 см (примерно размеры моего прототипа). Платы такого размера (10 штук) китайцы изготовят за 25 долларов, доставка еще долларов 7-10.
Поскольку я в таком вопросе - "максималист" - я бы все включил в проект. В принципе, можно сделать "полную" версию платы, но дальше по желанию распаивать те или иные "модули" в зависимости от конкретной машины и желания. Правда, это усложнит процесс разработки прошивки (придется разработать несколько версий ПО под различные наборы железа).
И еще помогите придумать способ поблагодарить тех, кто сможет материально поддержать проект?
P.S. Парктроник - то, с чего все начиналось. На текущий момент понятен протокол Parkmaster 4-DJ-06 (только задний бампер, 4 датчика), вероятно, заработает большая часть и остальных парктроников этого производителя (надеюсь, они не нагородили различных протоколов для каждой модели).
Чтобы добавить поддержку других пакрктроников - нужно будет получить "добавляемую" модель (на пару-тройку дней).
Что скажете? Включайтесь в проект

#65
Отправлено 04 November 2014 - 10:40
П.С. Если лишнее, то можно удалить.
Прикрепленные файлы
-
20141104_101441_1_.jpg (246.88К)
Количество загрузок:: 66 -
20141104_101841_1_.jpg (325.28К)
Количество загрузок:: 59 -
20141104_101555_1_.jpg (205.3К)
Количество загрузок:: 51 -
20141104_101533_1_.jpg (187.28К)
Количество загрузок:: 39 -
20141104_101522_1_.jpg (210.87К)
Количество загрузок:: 35
#66
Отправлено 04 January 2015 - 13:27
Появилось свободное время - вернулся к проекту.
Сейчас пока "на столе" сделал:
Завтра-послезавтра в машину перенесу разработку.
Сообщение отредактировал ustas: 04 January 2015 - 13:31
#68
Отправлено 04 January 2015 - 15:23
В машине надо отладить получение информации с парктроника (он еще осенью был установлен, основные вещи уже были опробованы и расшифрован его протокол). Еще в планах отловить и расшифровать информацию о нажатии кнопок на руле и магнитоле (если эта информация присутствует в шине) - для расширения функционала.
измерение напряжения бортовой сети, думаю, тоже реализую...