реклама на сайте
подробности

 
 
> Самопальный CAN драйвер, на транзисторах
Brain13
сообщение Aug 28 2011, 01:17
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 28-08-09
Пользователь №: 52 078



Есть счетчики Меркурий, у них используется CAN драйвер на линии USART. Необходимо с ним связаться.
Собрал схему с драйвером sn65hvd1040-q1. Но у него есть логика против "закусывания" линии(timeout). Это означает, что если предать по USART'у 0x00 на скорости 9600, срабатывает защита и передача прерывается.

Нашел драйвер без защиты - SI9200EY фирмы VISHAY. Но дорстать его - проблема.

Появилась идея собрать драйвер самому. Во первых - драйвер будет без защиты, во вторых - можно сделать дешевле покупного. Покопавшись по форуму увидел следующие схемы:
Схема1
Схема2
Как работает 2-я схема вообще не понял.

Необходимо обеспечить скорость 19200 и совместимость по уровням сигналов.

Подскажите, пожалуйста, насколько работоспособны данные схемы?
Может у кого-нибудь есть рабочие схемы?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Brain13
сообщение Aug 29 2011, 17:26
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 28-08-09
Пользователь №: 52 078



Цитата
Ну, для этого ставиться не только CAN трансивер, но и CAN контроллер.
И вообще существуют готовые схемные решения для контроля таких коллизий в RS-485.

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

Цитата
Откройте структурную схема любого CAN трансивера из его даташита - многое станет ясно.

А Вы думаете я их ни разу не видел?

Цитата
Вообще очень странно, что производитель не дает всей необходимой информации о своем изделии.
Может у них самих и запросить то, что вам нужно - схему интерфейсной части?

Далеко не все производители охотно делятся информацией о решениях, примененных в своем изделии.
Схема интерфейсной части проста и понятна: подаем линии USART на CAN драйвер(почему у меня так не получилось см. первый пост).

Цитата
может просто логику LIN используют, а физический уровень от CAN взяли! Можно коллизии детектить.

Используют логику USART, физику CAN.

Третий раз задаю вопрос: Так кто-нибудь расскажет про работоспособность приведенных схем? Или, может, есть свои, рабочие?

P.S.: Извините пожалуйста, но можно ли услышать что-нибудь по поводу темы "как сделать драйвер?", а не обсуждения по поводу "а зачем козе баян?" и "чем думали разработчики?"(собственно, дабы этого не было, я и расписал все в первом абзаце).
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 12:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01376 секунд с 7
ELECTRONIX ©2004-2016