Jump to content

    

Привести CAN сигнал 100 мВ к уровню 0-5 или 0-3.3 вольт

Ради спортивного интереса решил сделать эмулятор CD чейнджера для своей старенькой магнитолы Pioneer 88. Посмотрел обмен на шине. Там похоже CAN шина:

 

post-51457-1436457620_thumb.jpg

 

Амплитуда сигнала 100 мВ. Как этот сигнал привести к уровню 0-5 или 0-3.3 вольта?

 

Т.е. вот тут амплитуда 1 вольт:

post-51457-1436457401_thumb.png

А у меня 100 мВ.

 

Пробовал трансивер TJA1050, но он на выходе дает TTL сигнал амплитудой 200 мВ. Естественно ни логический анализатор ни контроллер не воспринимает этот уровень. Как получить 0-5 В ?

Share this post


Link to post
Share on other sites

MAX4445. Думаю, хорошо подойдет в качестве усилителя.

Share this post


Link to post
Share on other sites
Там похоже CAN шина

Не очень-то и похоже на CAN, скорее RS485: наблюдается четкое разделение на байтовые интервалы со стартовым битом.

Не совсем очевидны земли у A и B. Могли бы их указать на осциллограмме?

Если это CAN, то он выдает >6 доминантных бит, а это "активная ошибка".

Причем, начала передачи не видно, и не понятна причина выставления на шине "активной ошибки".

По идее счетчик ошибок должен был бы переполниться и контроллер сначала перешел бы в режим "пассивной ошибки",

а затем вообще случился бы "bus_off".

Скорее всего UART с CAN-физикой (может даже с инвертированными RXD и TXD).

Share this post


Link to post
Share on other sites

post-51457-1436765827_thumb.jpg

 

В магнитоле для этого используется микросхема HA12241FP. Даташита на неё не нашел, нашел только на HA12240FP. Разница только в одной цифре, но смысл думаю тот же:

 

post-51457-1436765922_thumb.png

 

datasheet_HA12240FP.pdf

 

Это драйвер шины с токовым выходом! Какой современный аналог взять? Не могу найти.

 

P.S. В 2003 году такой CD эмулятор собирали, но там использовали схему на компараторе для чтения данных. Я её тоже навесным монтажом собрал, подключил и вот:

 

post-51457-1436766585_thumb.jpg

 

Но хочется принимать и передавать через одну микросхему. Подскажите какую взять?

Edited by mr_smit

Share this post


Link to post
Share on other sites
Подскажите какую взять?

Точно не драйвер CAN, т.к. там дельта должна быть больше 0.7В.

Даже драйвер RS485 не подойдет, т.к. там меньше -0.2В и больше +0.2В дифсигнал переключает состояние приемника.

Скорее всего какой-нить аналоговый компаратор/операционный усилитель.

Вам ведь только прием нужен?

Share this post


Link to post
Share on other sites
Вам ведь только прием нужен?

Нет. Нужна и передача.

 

Припаялся к ножкам Tx и Rx микросхемы HA12241FP внутри магнитолы. На выходе прекрасный сигнал 0-5 В.

 

post-51457-1436777706_thumb.jpg

 

post-51457-1436778075_thumb.jpg

 

Пока вижу 2 варианта:

 

1. Выпаять трансивер из чейнджера. Чейнджер в мусор.

2. Найти аналог HA12241FP. Уж за 12 лет должны были что то подобное придумать. Хотя кто знает.

Share this post


Link to post
Share on other sites

Существуют в природе так называемые LVDS трансиверы. Например, SN65LVDM176.

Может быть такая микросхема подойдет под Ваши задачи?

Share this post


Link to post
Share on other sites
Например, SN65LVDM176.

Фраза из даташита: "Valid Output With as Little as 50 mV Input Voltage Difference".

 

Только боюсь уровни у неё не те.

Edited by mr_smit

Share this post


Link to post
Share on other sites
Ради спортивного интереса решил сделать эмулятор CD чейнджера для своей старенькой магнитолы Pioneer 88. Посмотрел обмен на шине. Там похоже CAN шина:

 

post-51457-1436457620_thumb.jpg

 

Амплитуда сигнала 100 мВ. Как этот сигнал привести к уровню 0-5 или 0-3.3 вольта?

 

Т.е. вот тут амплитуда 1 вольт:

post-51457-1436457401_thumb.png

А у меня 100 мВ.

 

Пробовал трансивер TJA1050, но он на выходе дает TTL сигнал амплитудой 200 мВ. Естественно ни логический анализатор ни контроллер не воспринимает этот уровень. Как получить 0-5 В ?

 

Это LVDS. Для преобразования лучше использовать микросхему что-то вроде DS90C032

Share this post


Link to post
Share on other sites

DS90C032 - это приемник. А ТС просит приемо-передатчик с напряжением питания 5В, как я понял.

Edited by artkam

Share this post


Link to post
Share on other sites
Это LVDS. Для преобразования лучше использовать микросхему что-то вроде DS90C032

Разве? Посмотрите внимательнее на уровни. Тут два состояния:

- одна линия в VCC/2 + 100 мВ, вторая в VCC/2 - 100 мВ (разность 200 мВ);

- обе линии в VCC/2 (разность 0 мВ).

 

В LVDS разность либо +VCC, либо -VCC.

Share this post


Link to post
Share on other sites
поверьте

VID ≤ −0.1V только в этом случае L на выходе.

При > +0.1V или когда входы в воздухе на выходе H.

 

Есть мнение, что L наблюдаться на выходе не будет.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this