Страница 1 из 1

Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Ср июл 31, 2013 15:39:25
NStorm
Добрый день.

Я начинающий, разбираюсь потихоньку.
На Atmega8 собрал свой небольшой проект, всё хорошо, но хочу прикрутить к нему V-USB для передачи данных на комп. Пока используется UART и кабель на PL2303. Но есть свободные ноги, место и т.п., т.е. есть возможность от pl2303 избавиться и сразу гнать CDC по SoftUSB, откуда у меня питание всё берется.
Вроде все понятно, но во всех схемах и вариантах для согласования уровней Data+/Data- предлагается либо запускать контроллер на 3.3В, что для меги8 неподходит, т.к. ей нужно 5В по даташиту (версия без L, а с L не потянет по частоте, для V-USB нужно мин 12 МГц). Другой вариант согласовывать уровни, но везде предлагается только стабилитроны на D+, D-.
Просто у меня под рукой нет стабилитронов на 3.3-3.6В. Можно ли как-нибудь по другому согласовать уровни? Из всяких прочих схем для согласования, например на биполярных или полевых транзисторах (их есть у меня). Еще есть LVDO AMS1117-3.3, если вопрос стоит в получении источника 3.3В.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Ср июл 31, 2013 16:06:35
eess9
Я делал так, как в файле. Извени что каряво, но для себя разводил. Принципиальный момент для этой библиотеки, чтобы сигнал D+ был подан на INT0.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Ср июл 31, 2013 23:12:45
0.4kV
Правильно как тут:http://www.getchip.net/posts/041-uart-t ... ttiny2313/
Я пробовал так как на второй схеме(со стабилитронами). Посмотри на схемы программаторов USBASP там тоже со стабилитронами.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 08:13:32
eess9
По ссылке 2 схемы.

Первая из них. Питание от usb поступает через светодиод. Падение на нем 1,3В (пусть даже на красном меньше чем на остальных). То есть схема питается от 5-1.3=3.7В. С учетом, что сигналы на D+ и D- порядка 3.3-3.6В вполне приемлемо. Но NStorm просил схему с питанием от 5В, а не 3.6В :shock:

Вторая из них. NStorm говорит об физическом отсутствии у него стабилитронов на 3.6В. В таком случае она не подходит.

В схеме предложенной мной, согласование на D- происходит делителем (ибо там всегда 3.3В на usb), а 5В от контроллера понижаются последовательно включенным резистором на 68Ом (75 + 750Ом в параллель).

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 08:24:13
NStorm
eess9, спасибо, но что-то вообще не понял вашу схему. Зачем 2 резитора в параллель стоят на линиях данных? Просто получаем через резистор ток ограничили, там ведь всё-равно будет потенциал высокий, за пределами максимальных 3.6В. Да и зачем-то D- подтянута в плюс и в землю.

0.4kV, я же написал, что такие варианты я знаю. Я рассматриваю варианты согласования уровней без стабилитронов или без понижения питания МК.

Что если такой вариант сделать на полевике?

EDIT: Форум тормозит, что-то не все опубликовалось...
За основу брал вот это: http://we.easyelectronics.ru/Shematech/ ... oystv.html ("Интерфейс с последовательно включенным MOSFET транзистором").

Только пока писал, понял что у меня на схеме сток и исток перепутаны, надо их поменять чтобы потенциал 3.3В был на истоке, а не на стоке.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 08:44:16
eess9
http://we.easyelectronics.ru/electro-an ... v-usb.html
Поверь, стабилитроны можно выбросить.
http://www.obdev.at/products/vusb/index.html
Внизу схема, но в ней перекос по току :))

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 08:59:05
NStorm
eess9, я видел эти статьи. По первой ссылке стоят стабилитроны. А по второй схема с понижением напряжения питания МК (и всей схемы) до ~3.4В через 2 последовательных диода за счет падения напряжения на них. Я понизить напряжение вместо диодов могу поставив более "точный" и стабильный низкодифференциальный линейный регулятор ams1117-3.3. Но вот заведется ли Mega8 хотя бы на 12 Mhz с таким напряжением? По даташиту она вообще работает только в пределах VCC 4.7-5.3V.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 09:40:28
NStorm
Вот, поправил схему, перевернув транзисторы. Ну еще дорисовал сюда регулятор напряжения 3.3В. Вроде такое должно работать, как описано тут: http://we.easyelectronics.ru/Shematech/ ... oystv.html
Мега8 ес-но без какой-либо обвзяки. Возможно стоит еще на линии D+/D- добавить резисторы по 68 Ом как рекомендуют в оригинальной схеме V-USB.
Только мне кажется много излишеств. Тот же регулятор напряжения по сути нужен лишь для получения постоянного потенциала в 3.3В на затворе и подтяжки линий USB. Нужно ли вообще подтягивать D+ и D-? По идее нет, если смотреть на схемы со стабилитронами. Значит по идее можно избавиться от регулятора напряжения, а затвор транзистора просто объединить с истоком (откуда D+, D- приходят) ?

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 10:03:49
eess9
Не хочешь геморойся с полевиками, у меня работает

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 18:38:50
nirq
NStorm писал(а):не потянет по частоте
2486W–AVR–02/10 figure 119.
Обращаем внимание: ступенек нет как на графиках, так и в "реальных" (что бы это ни значило) процессах с соображений здравого смысла.

Первая же страничка документации - скорее максимально общими выражениями блаблабла для презентабельности, чем "а дальше можно и не читать".



В любом случае ради борьбы с ДЕФИЦИТОМ городить ватэтавот... комсомолец должен не бояться маленьких проблем, а решать большие?

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Чт авг 01, 2013 18:50:47
borys
Неужели так трудно найти пару стабилитронов на 3,6 В ?

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Пт авг 02, 2013 09:57:13
NStorm
Народ, давайте без демагогии.
Схему с резисторами понял, принято.
Давайте чисто теоретически посмотрим будет ли работать схема на транзисторах и как её можно упростить. Как я уже спрашивал - нужно ли подтягивать линии D+ D- и нужно ли для этого брать источник 3.3В, или же можно как я сказал на затвор соб-но потенциал самих линий брать.

nirq, это лишь график потребления тока в зависимости от напряжения и частоты. Он не гарантирует работу на этих частотах и напряжениях, более того документ для разных модификаций МК. Atmega8 и 8L - разные вещи. На первой странице четко написано:
•Operating Voltages
– 2.7V - 5.5V (ATmega8L)
– 4.5V - 5.5V (ATmega8)
Может и заведется конечно чисто из здравого смысла исходя. Но я не хочу идти "левым" путем. Да и больше чисто ради обучения и набора знаний хочется сделать иной вариант согласование уровней, т.е. на транзисторах.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Вт авг 06, 2013 14:49:05
NStorm
Что-то так никто и не ответил на счет схемы на полевиках. Сам пока подумал, насколько хватило знаний нарисовал вот так:
Изображение

Смысл светодиода D1 на схеме в том, чтобы обеспечить на затворе потенциал чуть ниже 3.3В, но в пределах открытия транзистора. У меня тут светодиод с Vf=2V стоит. Ну и заодно и индикация работы устройства. )
Ну а дальше вроде как по учебнику - со стороны компьютера (3.3V) линию опустили в 0, на затворе у нас остается 3В и транзистор открывается, тем самым опуская линию в 0 со стороны МК. Если со стороны МК линия уходит в 0, то "через диодный переход исток-подложка транзистора напряжение на истоке снижается до тех пор, пока напряжение на затворе не перейдет пороговый уровень, затем транзистор открывается и вход 3.3В устройства подтягивается к "0" открывшимся транзистором", как написано в статье про согласование уровней (ссылку я давал в одном из прошлых постов). Правда этот момент мне не совсем понятен пока, вроде в общих чертах ясно... но не до конца.

Вроде как в протеусе это дело работает. По параметрам 2N7000 тут должен подходить. Вот добавил в протеусе генератор импульсов 125 Гц, графики с части 3.3В и части 5В:
Изображение

Ну и если добавить два генератора линии D+ и D- в противофазе (USB же вроде так данные передает), получаем с обоих сторон сходный цифровой сигнал:
Изображение

В реале конечно пока не собирал, времени всё нет прошивку допилить даже. В общем имеет ли такая схема право на жизнь? Я повторюсь - я только начинаю разбираться в теме. :beer:

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Вт авг 06, 2013 15:37:37
eess9
Сопутствующий вопрос. У вас в схеме присутствует USBCONN. Вы разобрались как он работает? Я когда-то безуспешно пытался его подружить с V-USB.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Вт авг 06, 2013 15:43:44
NStorm
eess9, честно говоря нет. Я даже не разбирался, оно просто для картинки. К тому же у меня там не совсем USBCONN, а AU-Y1005-R. Этот девайс при старте симуляции совершенно явно говорит о том, что пины D+ и D- у него не смоделены, т.е. просто висят в воздухе. Может у USBCONN что-то есть, но я с ним не заморачивался.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Вт авг 06, 2013 16:40:21
eess9
Спасибо. COM-порт у меня в proteus работает. Дружили когда-то у меня matlab и proteus. А usb так и не смог запустить в proteus. Народ говорит, что работает только с контроллерами, у которых есть аппаратный usb. Вы только подтвердили грустную тенденцию. Еще раз спасибо.

Re: Согласование уровней USB D+/- (V-USB) 3.3V

Добавлено: Вт авг 06, 2013 17:06:37
NStorm
eess9 писал(а):Народ говорит, что работает только с контроллерами, у которых есть аппаратный usb.
Так, бегло покопался, не только народ, но и официальные источники утверждают что этот USBCONN работает только с МК с аппаратным USB. Видимо эмуляция USB слоя не полноценная на электрическом уровне, а лишь на уровне логики эмуляции самого МК с этим самым hardware USB, поэтому с V-USB работать не будет по определению.