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

Atmega2560 и USB сканер ШК

Добавлено: Пн ноя 16, 2015 20:08:55
Dmitriy_A
Доброго времени суток.
Стала задача подключить китайский USB сканер ШК к контроллеру у которого нет на борту аппаратного USB как у AT90USB, mega8U...
Сканер при подключении к компу ведет себя как обычная клавиатура и видится как USB - устройство ввода.
Схема по которой пытаюсь состыковать этого монстра с ATmega2560-16A во вложении
Понимаю, что надо реализовать программно USB HOST но 5 дней читаний разной лит-ры и безуспешных тестов говорят мне, что я не умный. Может как то "ногодрыганьем" можно создать простой хост и заставить эту адскую пищалку отдавать отсканированный им ШК? Может кто сталкивался с подобной задачей?
Среда: CodeVisionAVR

Прошу помощи.

Re: Atmega2560 и USB сканер ШК

Добавлено: Пн ноя 16, 2015 20:44:33
uk8amk
Атмегу на device с большим трудом хватает. Для host устройства вычислений на порядок больше.
С тем что есть прямая дорога к расковыриванию сканера на предмет поиска микросхемы USB-UART моста. Вдруг повезёт.
...
Хотя нет, мосты обычно через CDC работают.

Re: Atmega2560 и USB сканер ШК

Добавлено: Пн ноя 16, 2015 20:47:41
Шурики
Может быть сканер всё-таки с интерфейсом RS232 или UART, а внутри или корпуса или в коробке на шнуре стоит преобразователь в USB, а в компе идет программное перенаправление потока ввода?

Посмотрите сначала в диспетчере устройств, какое именно устройство появляется при подключении сканера.

Re: Atmega2560 и USB сканер ШК

Добавлено: Пн ноя 16, 2015 22:31:00
Dmitriy_A
Разбор сканера - не вариант, их 500 шт придётся расковырять. Но у него в настройках есть Serial mode со стоп битами и прочей uartовской настройкой, с установкой скорости от 1200 до 38600. Завтра утром выложу документацию, может она завесу приоткроет.

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 08:02:03
uk8amk
В любом случае инструмент вы выбрали не под задачу. Обычной атмегой здесь никак не обойтись.

Расскажите лучше что в итоге получить хотите. Ведь нормальная СУБД на атмегу тоже не сядет.

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 09:56:56
Z_h_e
Есть прога "Device Monitoring Studio", собственно и другие наверное есть. Показывает трафик обмена между хостом и девайсом. Можно попробовать проанализировать.
Dmitriy_A писал(а):...что я не умный...
Надо быть обязательно умным, чтобы получилось. Вообще без вариантов. Ну или нужно использовать девайс с интерфейсом попроще.

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 10:20:04
igor-x
попробовать использовать переходник USB->PS/2 , а с PS2 уже на МК работать , он несложный.
переходник типа такого
http://www.chipdip.ru/product/cw088/

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 12:07:06
Шурики
igor-x писал(а):попробовать использовать переходник USB->PS/2 , а с PS2 уже на МК работать , он несложный.
переходник типа такого
а Вы разбирали такой переходник, или сами пробовали, чтобы такое советовать? там внутри только провода и предназначен он для специальных USB/PS2 устройств (клав-мышей). И всё.

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 12:37:04
BOB51
Обычно сканер имеет возможность переключения интерфейсов.
Однако при RS232 потребуется внешний источник питания и программное переключение по листочкам с сервис-штрихкодами в прилагаемом книжуле (возможно в электронной форме - тогда распечатать надо).
А кабло с разъёмами в большинстве моделей съемное - но не всегда полный комплект всех возможных вариантов в поставке.
Заглянь в ближайший сервис-центр по кассовым аппаратам(РРО) - там побольше инфы на те сканеры (а возможно и вариант шнурка/обмена будет).
:beer:

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 12:40:30
igor-x
а возможно и вариант шнурка/обмена будет
да просто купить сканер в нужной комплектации - дл COM порта, я не думаю что уже закуплено 500 сканеров без проведения испытаний на одном комплекте

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 13:05:31
Dmitriy_A
Во вложении описание на сканер. Я так понял, что он и работает как PS/2 в режиме Keyboard wedge mode. Сейчас буду пробовать. Но поднять host для низко скоростных устройств типа мышь/клавиатура/джойстик - как я понял из https://courses.cit.cornell.edu/ee476/F ... l28_dct23/ вполне реальная задача. Но в любом случае всем спасибо. Если решение найду то исходниками поделюсь.

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 13:12:46
igor-x
Я так понял, что он и работает как PS/2 в режиме Keyboard wedge mode
ну вот и переходник пригодится, а используя этот режим , можно и более дешовый МК использовать - например Atmega8/
а благодаря информации Шурики , можно не покупать переходник а включить сканер напрямую к МК по проводкам, работая по протоколу интерфейса PS2,
а подскажите что за сканер такой?

Re: Atmega2560 и USB сканер ШК

Добавлено: Вт ноя 17, 2015 13:27:07
Dmitriy_A
Нашел старую PS/2 клавиатуру, сейчас под неё код запилю. А сканер по ссылочке можно посмотреть http://www.alibaba.com/product-detail/1 ... ezsYv4&s=p

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 06:37:38
igor-x
этот сканер может сканировать только по кнопке , или как то программно может запускаться?

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 13:31:43
Dmitriy_A
Программно не проверял. По кнопке, автоматически (мигалка), включатся при поднесении ШК, гореть постоянно - это всё может точно.
Результат по проверке работы сканера через PS/2 - не увенчался успехом. Хост поднять не удалось. Буду искать другой сканер или применять контроллер с аппаратным USB на борту.

Всем спасибо за помощь.

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 14:00:34
eess9
Dmitriy_A писал(а):Буду искать другой сканер или применять контроллер с аппаратным USB на борту.
Только тогда сразу выбирайте такой МК, чтобы не было проблем с подъемом хоста на нем.
Например, можете посмотреть на это:
http://www.st.com/st-web-ui/static/acti ... 105256.pdf

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 14:03:18
igor-x
а зачем USB хост для приема данных по PS2 ?
там предельно простой обмен данными( программное ногодрыганье и скорость обмена не имеет значения),
попробуйте всетаки с переходником - воткнуть его в комп PS\2 разьем и понажимать кнопку?
если это заработает, то обмен с МК займет всего десяток строк на С.

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 14:39:06
Dmitriy_A
Именно так и сделал. Купил переходник за 50 центов, втыкнул в него сканер, вставил в ПС/2 и ничего не произошло. И таки да, ПС/2 клавиатура на атмеге отлично работает.
А про хост я имел ввиду, что не разобрался как его реализовать программно. За основу брал ребят которые делали хост на меге32 https://courses.cit.cornell.edu/ee476/F ... l28_dct23/ заменил только их буфер SN74126 на тот который был у меня 74HC125D. В итоге не смог адаптировать их библиотеки и код под CVAVR как и не понял их алгоритм. Жаль конечно.

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 15:32:53
eess9
Dmitriy_A писал(а):Именно так и сделал. Купил переходник за 50 центов, втыкнул в него сканер, вставил в ПС/2 и ничего не произошло.
Какая цена, такое и качество. Выше вам уже писали, что там могут быть только провода внутри. За 50 центов преобразователя USB<->PS/2 внутри переходника может не оказаться.

Re: Atmega2560 и USB сканер ШК

Добавлено: Ср ноя 18, 2015 23:42:02
Шурики
igor-x писал(а):а зачем USB хост для приема данных по PS2 ?
там предельно простой обмен данными( программное ногодрыганье и скорость обмена не имеет значения)
А чем может принципиально отличаться UART от PS/2 - правильно, один будет передавать ASCII-код, а другой скан-код клавиатуры. Но usb здесь пока ни при чём.

Был дельный совет:
uk8amk писал(а):С тем что есть прямая дорога к расковыриванию сканера на предмет поиска микросхемы USB-UART моста. Вдруг повезёт.
Сканер на фото состоит из 3-х плат: плата сканирующей линейки (1), платы обработки с МК (2), платы интерфейса (куда втыкается разъём) (3). Названия плат от балды, нумерация условная.
(1) припаяна на (2), (2) соединяется шлейфом с (3).

Фото неудачные в плане того, что из-за шлейфа не видно часть деталей, но зная современную тенденцию к удешевлению и универсальности, можно предположить следующее:
1. плата (3) под все типы интерфейсов.
2. для каждого интерфейса меняется только шнурок для USB/ PS/ RS-232
3. посадочное место U1 на плате (3), возможно, преобразователь UART-RS232

А раз разобрали сканер, можно глянуть шлейф (2)-(3) на предмет что куда идет. Наверняка, питание, кнопка, буззер и ещё что-то нужное. Всё это смотрим вкупе с вышенаписанным и доком на МК (только цоколёвка ног).
К чему это все? - на разъёме на интерфейсный шнурок на комп я насчитал 6 контактов (остальное закрыто шлейфом). Возможно, все интерфейсы выведены на одни контакты.
Но кто сказал, что подойдет цоколёвка переходника usb-ps/2? Может быть, вопрос и можно решить только проводами, а не закупкой других сканеров или вскрытием всей этой партии. Во всяком случае это займёт максимум пол дня и ни один кот не пострадает.

Ладно, сел клавиатуру проверить и чё-то заснул...