Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH-2G(i)

Вопросы о SMH-2G(i) Здесь всё, что касается работы контроллера SMH-2G(i).

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.02.2013, 11:41   #1
Varnak
Новичок
 
Регистрация: Jan 2012
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Использование USB-хаба

День добрый!

Имеется 2Gi и UPort 407 (7-портовый USB-хаб).
  • подключаю хаб к единственному разъему USB типа A 2Gi;
  • подключаю флешку1 к разъему (пусть будет третий) USB типа A хаба;
  • через PuTTY вижу содержимое флешки1 в директории /media/u1 , в директории /media/u2 пусто;
  • не извлекая флешку1, подключаю флешку2 к разъему (пусть будет пятый) USB типа A хаба;
  • через PuTTY вижу содержимое флешки2 в директории /media/u1 , в директории /media/u2 пусто.
  1. Возможно ли использование USB-хаба в 2Gi с целью увеличения количества доступных USB Host интерфейсов?
  2. Что мне необходимо предпринять (изучить), чтобы содержимое флешки1 и флешки2 наблюдать одновременно (в разных директориях)?
Varnak вне форума   Ответить с цитированием
Старый 28.02.2013, 12:02   #2
Den
Сотрудник Segnetics
 
Регистрация: Sep 2011
Сообщения: 129
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата
Сообщение от Varnak Посмотреть сообщение
День добрый!

Имеется 2Gi и UPort 407 (7-портовый USB-хаб).
  • подключаю хаб к единственному разъему USB типа A 2Gi;
  • подключаю флешку1 к разъему (пусть будет третий) USB типа A хаба;
  • через PuTTY вижу содержимое флешки1 в директории /media/u1 , в директории /media/u2 пусто;
  • не извлекая флешку1, подключаю флешку2 к разъему (пусть будет пятый) USB типа A хаба;
  • через PuTTY вижу содержимое флешки2 в директории /media/u1 , в директории /media/u2 пусто.
  1. Возможно ли использование USB-хаба в 2Gi с целью увеличения количества доступных USB Host интерфейсов?
  2. Что мне необходимо предпринять (изучить), чтобы содержимое флешки1 и флешки2 наблюдать одновременно (в разных директориях)?
1. Возможно
2. Надо отредактировать файл /etc/mdev.conf как-то так:
sda 1:1 777 @ mount -t vfat /dev/$MDEV /media/u1
sdb 1:1 777 @ mount -t vfat /dev/$MDEV /media/u2

Точный синтаксис подскажет гугл. И возможно будут нюансы с флешками у которых несколько разделов.
Den вне форума   Ответить с цитированием
Старый 28.02.2013, 12:10   #3
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата
Сообщение от Varnak Посмотреть сообщение
День добрый!

Имеется 2Gi и UPort 407 (7-портовый USB-хаб).
  • подключаю хаб к единственному разъему USB типа A 2Gi;
  • подключаю флешку1 к разъему (пусть будет третий) USB типа A хаба;
  • через PuTTY вижу содержимое флешки1 в директории /media/u1 , в директории /media/u2 пусто;
  • не извлекая флешку1, подключаю флешку2 к разъему (пусть будет пятый) USB типа A хаба;
  • через PuTTY вижу содержимое флешки2 в директории /media/u1 , в директории /media/u2 пусто.
  1. Возможно ли использование USB-хаба в 2Gi с целью увеличения количества доступных USB Host интерфейсов?
  2. Что мне необходимо предпринять (изучить), чтобы содержимое флешки1 и флешки2 наблюдать одновременно (в разных директориях)?

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

Порт изначально рассчитан на работу с одиночным устройством, будь то флешка или модем. Соответственно конфиг рассчитан на работу с единственной флешкой, имеющей единственный раздел.

Предостерегаю вас: если вы включите через хаб флешку и модем, то при зависании модема контроллер снимет питание со всего хоста разом. Данные на флешке могут быть потеряны.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 28.02.2013 в 12:30
Arsie вне форума   Ответить с цитированием
Старый 28.02.2013, 12:32   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Использование USB-хаба

Linux и USB-устройства

Виктор Костромин, http://vikos.lrn.ru, email: kos @ rus-linux dot ru

1. Общие сведения о шине USB.

У любого компьютера, выпущенного в последнее время, вы обязательно
обнаружите либо на лицевой панели, либо на задней стенке разъем USB.
Шина USB (Universal Serial Bus) первоначально была разработана для
обеспечения легкого подключения компьютера к телефонным линиям и
расширения числа портов. Первая версия стандарта (версия 1.0) была
выпущена в январе 1996 года. Сейчас в основном используется версия

1.1. Устройства этой версии обычно помечены значком, изображенным на
рис.1. Стандарт USB 1.1 вполне удовлетворяет всем требованиям при
работе с низкоскоростными устройствами, вроде мышей и клавиатур, и
даже с устройствами, работающими на средних скоростях, вроде
Ethernet-адаптеров (10 Mbit/sec) или устройств бытовой электроники
(таких, как цифровые камеры и MP3-плейеры), которые пересылают только
несколько мегабайт данных. Но если на периферийное устройство или в
обратном направлении необходимо пересылать большие объемы информации
(примеры - жесткие диски, видеокамеры высокого разрешения, или
одновременное использование нескольких сетевых адаптеров стандарта
100BaseT), то скорости, обеспечиваемые USB 1.1, уже недостаточны.
Поэтому в 1999 году была разработана версия 2.0 стандарта USB,
обеспечивающая более высокие скорости обмена данными. Значок, которым
помечаются USB-устройства версии 2.0, изображен на рис. 2.

Современные компьютеры обычно имеют контроллер USB-шины, установленный
на материнской плате. Для USB версии 1.1 было разработано два типа
таких контроллеров, отличающихся интерфейсом взаимодействия с
USB-устройствами: OHCI (Open Host Controller Interface) фирмы Compaq и
UHCI (Universal Host Controller Interface) фирмы Intel. Оба типа имеют
примерно одинаковые возможности и USB-устройства работают с обоими
типами контроллеров. Аппаратная часть UHCI-контроллеров проще, а
значит, они дешевле, но зато требуют более сложных драйверов, что
увеличивает нагрузку на процессор. Версия 2.0 стандарта USB использует
улучшенный вариант интерфейса - EHCI (Enhanced Host Controller
Interface).

Стандарт USB предусматривает строгую иерархию устройств, управляемых
основным хостом, и использование протокола master/slave для управления
подключаемыми устройствами. На один USB-разъем могут быть
последовательно подключены до 127 устройств. Но непосредственно
подключать одно устройство к другому нельзя, поскольку питание таких
устройств осуществляется по той же шине. Поэтому для подключения
дополнительных устройств используются специальные хабы, обеспечивающие
снабжение этих устройств необходимой энергией. В результате
USB-устройства образуют как бы дерево, каждая не конечная вершина
которого является хабом. Поскольку любой обмен данными инициируется
только хостом, и периферийные устройства не могут начать
взаимодействие, исключена возможность коллизий, вследствие чего
снижается стоимость устройств. Правда, такое решение приводит к
некоторому снижению производительности. В результате USB-устройства
версии 1.1 могут работать в двух режимах: так называемом low speed,
обеспечивающем скорость передачи данных до 1.5 Mбит/сек, и full speed,
в котором скорость передачи данных может составляьть 12 Мбит/сек. Это
только теоретический предел, а реально производительность шины даже в
идеальных условиях не превышает 8,5 Мбит/сек., а в среднем составляет
около 2 Мбит/сек.

Интерфейс EHCI, используемый в устройствах версии 2, обеспечивает
режим работы high speed, для которого скорость передачи данных может
достигать 480 Мбит/сек. Для того чтобы USB-устройства могли
обмениваться данными с такой скоростью, и хост-контроллер и само
устройство должны соответствовать стандарту USB 2.0 и обеспечивать
работу с интерфейсом EHCI. Однако хост-контроллеры 2.0 успешно
работают с устройствами версии 1.1. И наоборот, вы вполне можете
подключать устройства USB 2.0 к хосту (и к хабам) версии USB 1.1 и они
будут прекрасно работать, но ... со скоростью не более 12, а не 480
Мбит/сек.

В настоящее время разработан широкий спектр устройств, подключаемых по
шине USB. Это клавиатуры, мыши, джойстики, игровые приставки, сканеры,
модемы, принтеры, цифровые камеры, устройства хранения информации -
дисководы гибких и жестких дисков, дисководы Zip, LS120 и CD-ROM.
Очень перспективный и интересный класс таких устройств образуют
накопители на основе Flash-памяти. Объем статьи не позволяет
рассказать о каждом из этих типов устройств, так что ограничимся
рассмотрением USB-накопителей (в частности Flash-дисков и цифровых
фотокамер). Но вначале рассмотрим общие вопросы, что, надеюсь,
позволит вам справиться и с другими типами устройств.

----------------------------------
2. Поддержка USB-устройств в Linux

Для того чтобы работать с USB-устройствами под Linux, должны
выполняться несколько условий. Во-первых, USB-устройства должны
поддерживаться на аппаратном уровне, то есть на материнской плате
должен быть установлен USB-контроллер. Определить его наличие можно по
характерным разъемам, обычно расположенным на задней стенке системного
блока. Тип интерфейса этого контроллера вы можете определить с помощью
команды

[user]$ /sbin/lspci -v

Направьте вывод этой команды в файл и просмотрите результат. Для
каждого из установленных у вас контроллеров вы найдете примерно такие
строки:

00:1f.2 USB Controller: Intel Corp. 82801BA/BAM USB (Hub (rev 05) (prog-if 00 [UHCI])

Subsystem: Intel Corp. 82801BA/BAM USB (Hub

Flags: bus master, medium devsel, latency 0, IRQ 11

I/O ports at d000 [size=32]

Как видите, в моем компьютере стоит USB-контроллер с интерфейсом UHCI,
а следовательно, версии 1.1.

Теперь перейдем к программной части. Как и для любой другой апаратуры,
у вас должна быть реализована поддержка USB в ядре. Если вы
используете ядро, скомпилированное разработчиком, то такая поддержка,
скорее всего, обеспечена. Полноценная поддержка USB версии 1.1
включается в ядро, начиная с версии 2.2.18. Если хост-контроллер
вашего компьютера соответствует версии 2.0 стандарта USB, вы должны
иметь ядро, версия которого не ниже 2.4.19, и использовать драйвер
EHCI.

Если же вы сами компилируете ядро для своей системы, вы должны
включить поддержку USB либо непосредственно в ядро, либо в
подключаемые модули ядра. Для этого при компиляции надо задать
следующие опции в секции поддержки USB (либо подключить
соответствующие модули):

Поддержка USB (CONFIG_USB, usbcore.o)

Подключение USB-драйверов (выберите нужный драйвер из следующего
списка):

ECHI HCD (CONFIG_USB_EHCI_HCD, ehci-hcd.o)
UHCI (CONFIG_USB_UHCI, usb-uhci.o)
OHCI (CONFIG_USB_OHCI, usb-ohci.o)


Поддержка USB-накопителей (CONFIG_USB_STORAGE, usb-storage.o).

Во-вторых, поскольку взаимодействие с USB осуществляется путем
эмуляции SCSI, должны быть включена и поддержка SCSI-устройств, для
чего должны быть включены следующие опции в секции поддержки SCSI
(либо подключены указанные модули):

Поддержка SCSI (CONFIG_SCSI, scsi_mod.o)
Поддержка SCSI-дисков (CONFIG_BLK_DEV_SD, sd_mod.o)
SCSI generic support (CONFIG_CHR_DEV_SG, sg.o)
Включен опрос всех LUN на каждом SCSI-устройстве (CONFIG_SCSI_MULTI_LUN).

В третьих, в секции файловых систем должна быть включена поддержка
файловых систем, используемых USB-устройствами:

DOS FAT (CONFIG_FAT_FS, fat.o)
MSDOS (CONFIG_MSDOS_FS, msdos.o)
VFAT (CONFIG_VFAT_FS, vfat.o)

Ну, и наконец, для конкретных типов устройств должна быть включена
поддержка соответствующих устройств. Например, для клавиатуры, мыши,
джойстика необходимо включить поддержку USB Human Interface Device
(HID), для сканера включить опцию USB Scanner support, для модема -
USB Modem (CDC ACM) support, для принтера - USB Printer support, и так
далее.

Для работы с USB-устройствами динамически генерируется виртуальная
файловая система, являющаяся частью файловой системы /proc, и
располагающаяся в каталоге /proc/bus/usb. Генерация такой системы
выполняется из инициализационных скриптов при загрузке системы. В
дистрибутиве Red Hat версии 9, например, такая генерация происходит
при выполнении скрипта /etc/rc.d/rc.sysinit, в котором имеется
следующая команда:

mount -t usbdevfs none /proc/bus/usb

Одновременно загружаются модули usbcore, usb-uhci, hid и производится
инициализация usb-контроллеров.

В некоторых случаях монтирование может осуществляться путем
прописывания в файле /etc/fstab строки вида:

none /proc/bus/usb usbdevfs defaults 0 0

или же путем выполнения от имени root-а команды:

[root]# mount -t usbdevfs none /proc/bus/usb

и запуска необходимых модулей командой modprobe.

Теперь давайте посмотрим, как в работающей системе проверить,
обеспечена ли поддержка USB. Существует несколько точек, в которых
отображаются такие сведения (я не могу гарантировать, что сумею
перечислить все такие точки, но упомянутых достаточно для того, чтобы
убедиться, что USB работает).

Начнем с файла /var/log/dmesg, содержащего протокол начальной
загрузки. Проведите в нем поиск по шаблону "usb". Я, например, увидел
там строки, говорящие, что загружены драйверы usbdevfs и usb-uhci,
поддерживаются два порта и драйвер hid (хотя у меня и мышь и
клавиатура обычные, не-USB).

Запустив далее команду /sbin/lsmod, я увидел, что загружены модули
usb-storage, usbcore, usb-uhci и hid.

Теперь давайте заглянем в каталог /proc/bus/usb. Его содержимое должно
выглядеть примерно так:

dr-xr-xr-x 1 root root 0 Jan 26 10:40 001
-r--r--r-- 1 root root 0 Jan 26 10:40 devices
-r--r--r-- 1 root root 0 Jan 26 10:40 drivers

Если у вас более одного USB-контроллера, вы увидите соответствующее
число подкаталогов с цифровыми именами 002, 003 и так далее. Если
каталог /proc/bus/usb пуст, это означает, что виртуальная файловая
система поддержки USB не смонтирована или смонтирована не в тот
каталог. В каждом из каталогов 001, 002 и так далее у вас пока (до
подключения к шине каких-то устройств) должно быть всего по одному
файлу, имя которого тоже представлено трехзначным числом. Эти числа
являются уникальными номерами USB-устройств, и пока что задают только
номера контроллеров. Содержимое этих файлов нас пока не интересует.

Файл /proc/bus/usb/drivers содержит список зарегистрированных на
данный момент драйверов (даже если драйвер не используется никаким
устройством). Я у себя увидел в этом файле три строки:

usbdevfs
hub
usb-storage

Прежде чем рассматривать содержимое файла /proc/bus/usb/devices,
давайте посмотрим, что происходит при подключении к USB-шине какого-то
устройства. В Linux имеется программа /sbin/hotplug, основное
назначение которой состоит в том, чтобы уведомлять приложения о
существенных изменениях в системе, в первую очередь - об изменениях в
составе аппаратных средств. Программа эта запускается из
инициализационных скриптов (конкретно, в скрипте /etc/rc.sysinit).

Когда вы подключаете USB-устройство к какому-либо порту, ядро
обнаруживает это событие и изменяет файл /proc/bus/usb/devices.
Соответствено, и при удалении устройства этот файл тоже изменяется.
Следовательно, в нем в каждый момент времени содержится информация о
каждом устройстве, подключенном в текущий момент времени к USB-шине.

Каждому конкретному устройству соответствует группа строк в файле
/proc/bus/usb/devices, начинающаяся со строки, обозначенной буквой T:.
Отдельные строки содержат следующую информацию:

Строка, начинающаяся с буквы T:, задает топологию. Bus указывает, к
какой шине подключено устройство. Lev указывает уровень устройства,
начиная с уровня 00 для корневого хаба (root hub). Уровень 01
соответствует любому устройству, подключенному к корневому хабу,
уровень 02 соответсвует устройствам, подключенным к хабу уровня 01, и
так далее. Prnt указывает на устройство, являющееся родительским по
отношению к данному (всегда 00 для корневого хаба и 01 для устройств,
подключенных к корневому хабу). Port - порт на родительском
устройстве, начиная с 00 для первого порта каждого устройства.

Значения Prnt и Port уникальны в пределах одной шины. Cnt показывает,
какой номер имеет данное устройство на своем уровне в соответствии с
порядком перечисления устройств данного уровня, начиная с номера 01
для первого устройства. Dev# указывает номер устройства
безотносительно к уровню. Этот номер уникален в пределах одной шины.
Spd указывает, с какой скоростью работает устройство в Мбит/сек.
(возможные значения для версии 1.1 USB - 1.5 или 12). MxCh показывает,
сколько устройств может быть подключено к данному устройству; это
число равно 00 для всех устройств, кроме хабов. Driver показывает,
какой драйвер используется для этого устройства - если указано none,
значит никакого драйвера не используется.

Строки, начинающиеся с букв D: и P:, содержат информацию из
спецификации устройства и сведения о производителе.

Самые интересные для нас строки (таких строк может быть несколько)
начинаются с буквы S:. Эти строки содержат наименование известных
системе устройств и имена их производителей.

Другие строки мы здесь подробно разбирать не будем, при желании вы
можете найти такое описание в USB Guide [П12.] либо в файле
linux/Documentation/usb/proc_usb_info.txt.

Для примера приведу вид файла /proc/bus/usb/devices на одном из
компьютеров, у которого имелся один USB-порт, и никаких USB-устройств
подключено не было:

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI Root Hub
S: SerialNumber=e000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms

После подключения flash-диска в этом файле появились следующие
дополнительные строки:

T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 9 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0ea0 ProdID=6803 Rev= 1.00
S: Manufacturer=USB
S: Product=Solid state disk
S: SerialNumber=7777777777777777
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MxPS= 2 Ivl=1ms

Как видите, содержимое файла /proc/bus/usb/devices позволяет
достаточно точно определить, о каких USB-устройствах известно вашей
системе. Однако, понять записи в этом файле без дополнительных
разъяснений довольно сложно. Помочь в их расшифровке вам может
программа usbview (разработчик - Greg Froah-Hartman, сайт программы -
http://usbview.sourceforge.net). На рисунке 3 приведен вид окна этой
программы. Как видите, прочитать информацию о подключенном к системе
flash-диске с ее помощью несколько проще. Причем, устройство
обнаруживается этой программой сразу после его подключения.

На этом изложение общих вопросов закончено, и можно перейти к рассказу
о конкретном опыте работы с некоторыми из USB-устройств. Я расскажу
здесь о своем опыте работы в Linux с тремя типами устройств: мышью,
цифровым фотоаппаратом и накопителем на основе flash-памяти.


-------------------
3. USB-мышь в Linux

После подключения USB-мыши к разъему в файле /proc/bus/usb/devices
появились строки

T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0
D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c002 Rev= 1.20
S: Manufacturer=Logitech
S: Product=USB-PS/2 Mouse M-BA47
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID) Sub=01 Prot=02 Driver=hid
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms

Курсор сразу же начал реагировать как на перемещения основной мыши,
так и дополнительной, подключенной через USB. Никаких дополнительных
усилий для обеспечения работоспособности USB-мыши не потребовалось.
Причем в OpenOffice даже работало колесико, прокручивая страничку. На
случай, если у вас все же возникнут какие-либо сложности, приведу
некоторые дополнительные сведения о настройке USB-мышей,
заимствованные мной из литературных источников.

Во-первых, проверьте, что ссылка с именем /dev/mouse указывает на
правильный порт. Если у вас USB-мышь, то /dev/mouse должна указывать
на /dev/input/mice.

Далее убедитесь, что существует файл /etc/sysconfig/mouse, и что в нем
записано что-то вроде:

MOUSETYPE="Microsoft"
XMOUSETYPE="Microsoft"
XEMU3=yes

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

Протокол -- это чисто программная характеристика мыши. У мышей,
подключаемых через последовательный порт, обычно работает протокол
"Microsoft" а мыши типа PS/2 используют протокол ''PS/2''. Для
USB-мыши в качестве протокола можно тоже указать ''PS/2''.

В последнее время появились мыши с колесиком, которые обеспечивают
скроллинг (прокрутку) при вращении колесика и в силу этого очень
удобны при работе с некоторыми программами (например, с текстовым
редактором из пакета OpenOffice или браузером Mozilla). Колесико мыши
заменяет одновремено 3-ю, 4-ую и 5-ую кнопки мыши (нажатие на колесико
равносильно нажатию 3-ей кнопки, вращение в одном направлении - 4-ая
кнопка, в другом - 5-ая). Использоваться скроллинг может только в
графическом режиме, причем пакет XFree86 должен быть версии не ниже
3.3.2, и то скроллинг будет работать не в каждом приложении. Для
USB-мышей с колесиком надо выбирать протокол "IMPS/2".

Чтобы мышь корректно работала в графическом режиме, необходимо
правильно задать секцию InputDevice в файле XF86Config-4. Вот пример
соответствующей секции для мыши с колесиком, подключаемой через
USB-порт:

Section "InputDevice"
Identifier "mouse2"
Driver "mouse"
Option "Device" "/dev/mouse"
Option "Protocol" "IMPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
EndSection

Отмечу, что для мыши с колесиком последняя строка ("Emulate3Buttons"
"no") является обязательной.

После этого в графических средах KDE и GNOME скроллинг будет работать
по умолчанию в большинстве приложений, например, в браузере Mozilla и
офисном пакете OpenOffice.org. В отдельных приложениях (например, в
текстовом редакторе Nedit) для использования скроллинга требуется
произвести некоторые изменения в конфигурационных файлах приложения.
Подробнее о том, какие дополнения и куда необходимо вписать, вы можете
узнать на страничке Colas Nahaboo - http://koala.ilog.fr/colas/mouse-wheel-scroll/


--------------
4. Flash-диски

Вторым устройством, которое я попытался подключить через USB-разъем,
был накопитель на основе энергонезависимой flash-памяти. Такие
устройства часто называют flash-дисками, что, конечно, не верно, но
думаю, что такое название приживется. Как оказалось, работа с такими
устройствами в Linux осуществляется достаточно просто. После
подключения flash-диска к разъему USB светодиод на нем начинает
периодически мигать. После этого (если поддержка USB ядром имеется)
можно просто смонтировать flash-диск командой:

[root]# mount -t vfat /dev/sda1 /mnt/usb

А если в файле fstab прописать строку вида

/dev/sda1 /mnt/usb vfat users,codepage=866, iocharset=koi8-r 0 0

то монтировать USB-диск смогут все пользователи простой командой

[user]$ mount /mnt/usb

Когда происходит обращение к этому диску, частота мерцания светодиода
на нем повышается.

Внимание! Имейте в виду, что вынимать смонтированный flash-диск из
разъема нельзя - после этого он может сразу перестать читаться.
Необходимо предварительно размонтировать устройство, дождаться, пока
мерцание снова станет более редким, и только после этого flash-диск
можно отключать от разъема. Если вы все же умудрились <<испортить>>
ваш flash-диск некорректным отключением, то имейте в виду, что его
работоспособность можно восстановить с помощью специальных утилит,
поставляемых разработчиком flash-диска (только обычно такие утилиты
предназначены для использования под ОС Windows).


------------------------
5. Цифровые фотоаппараты

Третьим типом USB-устройств, с которыми мне довелось поработать, был
цифровой фотоаппарат Olympus C120. Я полагаю, что на сегодняшний день
цифровые фотоаппараты вообще являются одним из самых распространенных
типов устройств, подключаемых к компьютеру по шине USB. Существует три
типа подключения таких устройств к компьютеру. Некоторые аппараты
имеют кабель, подключаемый к USB-порту компьютера. Второй конец такого
кабеля подключается непосредственно к фотоаппарату посредством
специального разъема. Второй тип фотоаппаратов не имеет на корпусе
разъема для подключения кабеля, зато снабжаются специальным адаптером,
в который вставляется извлеченная из фотоаппарата карта памяти.
Адаптер уже подключается к компьютеру и производится перенос файлов
изображений на жесткий диск (или их отправка по электронной почте и
так далее). И, наконец, третий тип подключения - это PCMCIA-адаптеры,
которые тоже служат для переноса изображений с извлеченной из
фотоаппарата карты памяти. Такие адаптеры обычно применяются только
для работы с лэптопами. Поскольку мне приходилось иметь дело только с
аппаратом, имеющим USB-разъем, то я буду рассматривать только случай
камеры первого типа.

После того, как вы убедитесь, что ваше ядро поддерживает стандарт USB,
подключите камеру к компьютеру через USB-порт (питание аппарата должно
быть включено!) и убедитесь в том, ядро <<видит>> камеру. Судить об
этом можно по тому, что в файле /proc/bus/usb/devices появятся строки,
аналогичные тем, которые вы видите ниже:

T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 7 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=07b4 ProdID=0105 Rev= 1.00
S: Manufacturer=OLYMPUS
S: Product=C-120/D-380
S: SerialNumber=000228214302
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

Если камера не обнаружилась, необходимо проверить настройки
"/proc/bus/usb" и "usbdevfs" (смотри раздел 2 выше). Если же ядро
обнаружило камеру, то ее можно смонтировать точно так же, как
монтировался flash-диск.

Некоторые дополнительные сложности могут возникнуть в том случае, если
вы работаете поперемено с flash-диском и с цифровым фотоаппаратом.
Если вначале была подключена камера, то даже после вполне корректного
ее отключения подключить flash-диск у меня вначале не получалось. Как
ни старался, команда mount выдавала такую ответную реакцию:

mount: /dev/sda1 is not a valid block device

Проблема разрешилась, когда я стал монтировать первое устройство как
/dev/sda1, а второе - как /dev/sdb1. Найти такое решение мне помог
файл /etc/sysconfig/hwconf. Этот файл формируется утилитой kudzu на
этапе загрузки системы и содержит информацию об имеющемся в системе
оборудовании. После одной из очередных перезагрузок я заметил, что
устройство определилось как sdb, после чего мне удалось его
смонтировать (в режиме суперпользователя). Ну а дальше уже нашлись и
способы облегчения процедур монтирования.

В заключение раздела приведу два коротких замечания.

Первое: в состав некоторых дистрибутивов (например, ASPLinux версии
7.3) входит программа gPhoto, которая позволяет организовать работу с
цифровыми фотоаппаратами и теми коллекциями фотографий, которые у вас
накопятся вскоре после приобретения такого аппарата. Но осваивать
работу с этой программой вам придется самостоятельно.

Второе: учитывая, что в имевшемся у меня цифровом фотоаппарате
использовалась съемная карта flash-памяти, я полагаю, что с
подключением к Linux-компьютеру выпускаемых для работы с такими
картами специальных устройств, - картоводов, проблем тоже не
возникнет, ибо подключение таких устройств к компьютеру производится
обычно тоже по шине USB.




--------------------------------------

>Подскажите пожалуйста,как примонтировать usb принтер в linux.Принтер lexmark z600.Заранее спасибо.

копай в USB-to-serial нужный драйвер. И получишь обычный serial порт.
На нем уже принтер сетапиццо без проблем.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 28.02.2013, 12:54   #5
Varnak
Новичок
 
Регистрация: Jan 2012
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Использование USB-хаба

Благодарю, буду копать в указанном Вами направлении!

Цитата:
Сообщение от Arsie Посмотреть сообщение
... если вы включите через хаб флешку и модем ...
Вот как раз для этого я и хочу использовать USB-хаб.
Varnak вне форума   Ответить с цитированием
Старый 28.02.2013, 13:18   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата
Сообщение от Varnak Посмотреть сообщение
Благодарю, буду копать в указанном Вами направлении!


Вот как раз для этого я и хочу использовать USB-хаб.
Тогда переключите управление сбросом на dou2 и молитесь, чтобы модем не зависал


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 28.02.2013, 19:01   #7
SMH
НЕ сотрудник Segnetics
 
Аватара для SMH
 
Регистрация: Feb 2006
Сообщения: 540
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата:
Сообщение от Arsie Посмотреть сообщение
Тогда переключите управление сбросом на dou2 и молитесь, чтобы модем не зависал
А как быть, если dou2 занят?
Меня это, кстати, ещё тут слегка напрягло:
http://forum.segnetics.com/showpost....44&postcount=1
Очень не люблю, когда в моём устройстве что-либо неконтролируемо "резетится" без моего ведома.

Последний раз редактировалось SMH, 28.02.2013 в 19:19
SMH вне форума   Ответить с цитированием
Старый 01.03.2013, 11:11   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата:
Сообщение от SMH Посмотреть сообщение
А как быть, если dou2 занят?
Меня это, кстати, ещё тут слегка напрягло:
http://forum.segnetics.com/showpost....44&postcount=1
Очень не люблю, когда в моём устройстве что-либо неконтролируемо "резетится" без моего ведома.
Вы ещё забыли добавить, что do2 - наихудший вариант из всех DOUT, т.к. разом отнимает два DIN, когда они могут быть очень нужны.

Однако насчёт неконтролируемого резета я с вами не согласен. Условия чётко определены.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 01.03.2013, 12:20   #9
SMH
НЕ сотрудник Segnetics
 
Аватара для SMH
 
Регистрация: Feb 2006
Сообщения: 540
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Использование USB-хаба

Цитата:
Сообщение от Arsie Посмотреть сообщение
Однако насчёт неконтролируемого резета я с вами не согласен. Условия чётко определены.
Я имею ввиду невозможность полного отключения резета в SMConfig. Либо так, либо этак. Разве нельзя было сделать выбор, чтоб ваще не резетилось? Третью "галачку", либо те две сделать снимаемыми?
SMH вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Matrix, Trim5, SMH4 и USB. Решение проблем, если они есть Arsie Библиотека 4 21.09.2021 15:37
Matrix, мигает экран при питании от USB Arsie ЧаВо - Часто задаваемые Вопросы 0 02.10.2019 17:25
Правильный кабель USB Arsie Библиотека 0 29.12.2018 18:46
SMH2G(i). Ошибка проекта, неизвестный оператор сети masterzx SMConnect & SMConfig 8 09.08.2018 12:45
Модули ядра для поддержки внешней USB клавиатуры mikhailov Вопросы о SMH4 4 01.12.2017 10:56


Часовой пояс GMT +4, время: 19:30.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023