Работа с последовательными портами — работа с COM портами. Что такое COM-порт Программирование уровня сигнала com порта материнской платы

Работа с последовательными портами — работа с COM портами. Что такое COM-порт Программирование уровня сигнала com порта материнской платы

Serial port (серийный порт, последовательный порт или COM-порт -, communications port) — это последовательный интерфейс с двойной направленностью.

Почему порт назвается последовательным? Потому, что вся информация по этому порту передается шагом равным одному биту. В нем данные передаются бит за битом, в отличие от параллельного порта.

Несмотря на то, что в некоторых других интерфейсах как, например, в Ethernet , FireWire и USB , применяется последовательный обмен данными, название «последовательный порт» закрепилось за портом, обладающим стандартом RS-232C .

Данный порт, в сравнении с другими "последовательными" технологиями, обладает отличительной особенностью: в нем отсутствует какое-либо временное требование между 2 байтами. Временные требования существуют только между битами одного байта. Величина, обратная временной паузе между битами одного байта, носит название «baud rate» (скорость передачи). Кроме того, в данной технологии нет такого понятия, как "пакет". Другие технологии "последовательной" передачи данных (X.25, USB или Ethernet), используют "пакеты", также в них существуют и жесткие временные требования между битами одного пакета.

В части протоколов связи с индустриальным оборудованием имеются жесткие временные требования между байтами последовательного порта. Реализация в многозадачных операционных системах со слабой поддержкой реального времени этих протоколов очень сложна. К этим системам относятся и Windows. Вот почему для работы с этими протоколами зачастую применяют MS-DOS или более устаревшее программное обеспечение.

Самый распространенный для последовательного порта стандарт - RS-232C. Ранее последовательный порт применялся для подключения терминала, позднее его использовали для подключения модема или мыши. В настоящее время его применяют в качестве средства соединения с источниками бесперебойного питания, а также в качестве средства связи с аппаратными средствами разработки встраиваемых вычислительных систем, спутниковыми ресиверами, кассовыми аппаратами и приборами систем безопасности.

Благодаря COM-порту появляется возможность подключить друг к другу два ПК, применяя так называемый «нуль-модемный кабель». Данный метод использовался со времен MS-DOS в целях перекачки файлов с одного компьютера на другой. В UNIX-системах он использовался для терминального доступа к другой машине, а в операционных системах Windows - для отладчика уровня ядра.

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

Однако имеются специальные стандарты эмуляции последовательного порта над USB и над Bluetooth . Кстати, любопытно, но именно Bluetooth-технология проектировалась разработчиками в качестве беспроводной версии последовательного порта. Программная эмуляция порта широко используется и по сей день. Так, практически все мобильные телефоны сегодня эмулируют внутри себя COM-порт и модем, с целью реализации тетеринга (доступа компьютера к сети Интернет через GPRS/EGDE/3G). А вот непосредственно для физического подключения к компьютеру применяется USB, Bluetooth или Wi-Fi технологии.

Кроме того, программная эмуляция последовательного порта возможна для гостевых пользователей виртуальных машин VMWare и Microsoft Hyper-V. Основной целью данной процедуры является подключение отладчика уровня ядра Windows к гостевому клиенту.

Достоинства COM-порта

Главное преимущество данной технологии состоит в простоте подключения.

Недостатки COM-порта

Главными недостатками данного порта являются его низкая скорость, большие размеры разъемов, а также высокие требования к времени отклика операционной системы. Также, в данном стандарте наблюдается высокое количество прерываний (одно прерывание на каждые 8 байт).

Разъемы

Самыми распространенными разъемами стандарта являются 9-ти и 25-ти контактные (DB-9 и DB-25, соответственно), которые были стандартизированы в 1969 году. Это D-образные разъемы. Помимо них использовались и другие, но из этого же семейства: DB-31 и круглые восьмиконтактные DIN-8.

Максимальная скорость передачи (в обычном исполнении) достигает 115 200 бод.

Аппаратура

Разъем обладает следующими контактами:

  • DTR (Data Terminal Ready) - выход на ПК, вход - на модеме. Отвечает за готовность компьютера к работе с модемом. Сброс вызывает почти полную перезагрузку модема. В случае с мышью, данный провод используется для осуществления питания.
  • DSR (Data Set Ready) - вход на ПК, выход - на модеме. Отвечает за готовность модема. Если линия в нуле, то в некоторых операционных системах невозможно открыть порт в качестве файла.
  • RxD (Receive Data) - вход на ПК, выход - на модеме. Обозначает поток входящих в ПК данных.
  • TxD (Transmit Data) - выход на ПК, вход - на модеме. Обозначает поток исходящих от ПК данных.
  • CTS (Clear to Send) - вход на ПК, выход - на модеме. Компьютер должен приостановить процесс передачи данных, пока данный провод не будет выставлен в единицу. Применяется в аппаратном протоколе управления потоком в целях недопущения переполнения на модеме.
  • RTS (Request to Send) - выход на ПК, вход - на модеме. Модем должен приостановить процесс передачи данных, до тех пор, пока провод не будет выставлен в единицу. Применяется в аппаратном протоколе управления потоком в целях недопущения переполнения в оборудовании/драйвере.
  • DCD (Carrier Detect) - вход на ПК, выход - на модеме. После установления связи с модемом с той стороны возводится в единицу, сбрасывается в ноль, в случае разрыва связи. Аппаратура ПК может производить прерывание, в случае наступления подобного события.
  • RI (Ring Indicator) - вход на ПК, выход - на модеме. После детерминации вызывного сигнала телефонного звонка, возводится модемом в единицу. Аппаратная часть ПК может производить прерывание, в случае наступления подобного события.
  • SG (Signal Ground) - общий сигнальный провод порта. Важно: земля - не общая . Обычно провод имеет изоляцию от корпуса ПК или модема.

В нуль-модемном кабеле применяются две перекрещенные пары: TXD/RXD и RTS/CTS.

UART 16550 - стандартная аппаратура порта. Сегодня включена в SuperIO микросхему на материнской плате. Со времен IBM PC, она оснащена аппаратной очередью байтов. Она существенно снижает число возникающих прерываний.

Приветствую Вас, друзья. Продолжаем изучать системный блок. Сегодня расскажу о компьютерных портах. Что это такое? С бурным развитием интернет-технологий понятие «порт», «сокет» у многих на слуху. Это другая ветвь, и мы сегодня не будем говорить о ней. Тема этой статьи содержит информацию о сугубо «железных», » реальных» разъемах (или портах), которые предназначены для подключения различных устройств к системному блоку.

«Железо» тоже совершенствуется и с каждой генерацией мы обнаруживаем новые виды разъемов (или порты) на купленных системных блоках. К ним подключаются различные, так называемые периферийные устройства. Системный блок + монитор = компьютер. Все что подключается к ним (принтеры, сканеры, программаторы, видеокарты, мониторы и так далее) — это периферия.

На компьютере портов много. Они находятся на материнской плате системного блока и представляют собой разъемы (большая часть из них на задней части) . Часть разъемов выводится и на переднюю панель и они так же подключены к материнской плате.

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

Наличие слотов расширения позволяет самостоятельно собирать компьютер наподобие конструктора, на основе ваших предпочтений, не тратя лишних денек. Потому что разработчики давно стандартизировали выпускаемое оборудование. При необходимости можно провести его обновление. Это главная причина того, что IBM-PC совместимые компьютеры (так называется такая платформа) когда-то вытеснили с рынка Apple Macintosh.

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

Краткий список портов компьютера

Нужно уметь отличать разъемы один от другого визуально. Не всегда производитель указывает их наименования. Так как разъемы сгруппированы на задней панели системника, то с нее и начнем. Все порты имеют англоязычное наименование, тут уж ничего не поделаешь. Кратко их можно разделить:

  1. Последовательный порты;
  2. Параллельный порт;
  3. Порты для компьютера и мыши;
  4. Порты USB;
  5. Порты SCSI;
  6. Видео-порты;
  7. Разъемы сетевых кабелей;
  8. Разъемы аудио;
  9. Карт-ридеры;

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


Такие платы могут поддерживать и аудио или видеоформаты сторонних производителей (Sony, Philips) и тогда можно встретить на таком компьютере соответствующий разъем. Особым разнообразием сегодня могут похвастаться аудио и видео порты.

Порты компьютера для подключения периферийных устройств

Последовательный порт — сегодня уже морально устаревшая вещь. Но для специалистов, которые занимаются ремонтом электронных устройств они представляют ценность. Изначально такой порт использовался для подключения модема. Скорость передачи данных типичная — от 110 до 115200 бит в секунду. Их обычно было по два с разъемами DB 9 типа «папа»:

Скорости вполне хватает для программатора, чтобы прошить микроконтроллер или мобильный телефон. Или для обмена данными с источником бесперебойного питания. Называются эти порты COM1 и COM2.

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


Для подключения используется разъем DB25 типа «мама». Скорость передачи данных небольшая — но вполне хватает для программатора или старого лазерного принтера. У большинства старых компьютеров всегда было по два последовательных порта и один параллельный.

Порты для клавиатуры и мыши знакомы всем пользователям. В современных компьютерах они имеют фиолетовый и зеленый цвета. Такого же цвета штекеры у мыши и клавы. Перепутать сложно. Разъемы шестиконтактные (mini -Din) типа «мама». Их придумали в Германии и это стало стандартом. Другое название IBM/PC2

так как впервые они были использованы на уже упомянутой платформе IBM PC. Если перепутали при подлкючении разъемы — устройства работать не будут. Несомненный плюс — экономят USB порты. Минус — обязательно требуется перезагрузка компьютера если подключили неправильно. Кстати, тоже исчезающий вид. На многих современных компах этот порт оставлен всего один — и покрашен он одновременно в фиолетово-зеленый цвет. Подключать к нему можно только одно устройство или мышь — или клаву.

Порты USB. Универсальная последовательная шина, (Universal Serial Bus ). C 1998 года вытесняет другие порты; даже на автомагнитолах и видеокамерах Вы сегодня найдете этот разъем. У первых поколений скорость передачи данных была около 12 мб /сек. — умопомрачительная по тем временам. Сегодня мы используем USB 3, скорость которого 5 Гбит/с

Эти порты внешне не изменились. На компьютере стоят разъемы типа «А». Разъем на любом подключаемом устройстве принято называть «B». Имеет четыре контакта два для тока, два для передачи данных. Соответственно, на портах USB 3.0 контактов в два раза больше.

Порты SCSI (Small Computer Systems Interface). Довольно специфическая и редкая вещь у нас; мне думается что и за рубежом ее уже не встретишь у рядового пользователя. Полагаю, что устройства с такими интерфейсами делались под заказ — для корпоративного использования. Это — сетевой интерфейс для обмена данными, со скоростью до 160 мбит/с.


Мне попался один раз ноутбук, привезенный из америки 1999 г. выпуска, фирмы Dell. У него имелся один из таких многоконтактных портов. Расположен он был таким образом, что использовать его можно было, только установив ноутбук на стол. Сам разъем закрыт шторками на пружинках. Следовательно, где -то в Америке были и столы, в которые этот разъем встроен… Приносишь,ставишь на стол, и он подключен к корпоративной сети.

Разновидностями интерфейса являются уже знакомый нам DB-25, а так же 50-High-Density, 68-контактный -High-Density, 80-контактный SCA, Centronics. Можно было подключать и жесткие диски к этому интерфейсу. Отвечает за подключение специальная плата — хост-адаптер.


Видеопорты . Их так же не спутаешь с другими. Стандартный видеопорт — 15 контактный VGA разъем типа D синего цвета, «мама». Служит для подключения монитора. Это старый стандарт, принятый в 1987 году. Не на всех материнских платах он бывает. Если его нет у вас «на борту», то его можно найти в нижней части системного блока. В слот расширения установлена видеокарта:

Если вы решили установить видеокарту в дополнение к уже имеющейся («на борту»), то последняя работать уже не будет. Это нормально. Монитор будет работать только при подключении к установленной.

На современных видеокартах VGA порт уже стало трудно встретить; их заменяют другой разновидностью — DVI. На материнской плате переходного типа это выглядит как то так:

Очень часто встречаются случаи, когда выходит из строя VGA- видеокарта. После покупки новой, обнаруживается, что на ней только DVI — порты.В этом случае нужно приобрести переходник и установить его на разъем DVI:

Обращайте внимание, на тип переходника. Дело в том, что и DVI разъемы отличаются — на новых дорогих видеокартах стоят DVI-D или DVI-I порты. Переходники не взаимозаменяемые, уточняйте этот момент у продавца.

В этом случае не нужно будет покупать новый монитор. Новые мониторы пока тоже идут с двумя типами разъемов — VGA и DVI.

Порт HDMI. Куда теперь без него в 21 веке? Мультимедиа-интерфейс предназначен для передачи видео и аудио высокой четкости с защитой от копирования. Одновременно заменяет как и вышеперечисленные видео так и некоторые аудио порты(SCART, VGA, YPbPr, RCA, S-Video.). Наверное этот интерфейс со временем заменит все остальное. Его можно встретить на любой цифровой технике — от фотоаппарата до компьютера (или ноутбука).

Размер сравним с USB портом, а скорость передачи данных огромна по сравнению с выше перечисленными — до 48 Гбит в секунду. Передача данных осуществляется по кабелю с хорошей защитой от помех. Кабель можно подключить к ноутбуку и к телевизору и смотреть видео. Длинна кабеля не должна превышать 10 метров, в противном случае нужен усилитель/повторитель сигнала.

Про аудио-разъемы подробно говорить не буду. Все примерно так же выглядит, как на домашнем DVD проигрывателе, если речь идет о чем- то особенном. В качестве такого примера можно привести разъем SPDiF, который можно было устанавливать на слот расширения:

Аудиостандарт от фирмы SONY и PHILIPS, эта карта подключается к материнской плате с помощью коннектора на соосветствующий разъем. Стандартные гнезда для подключения микрофона, колонок, наушников выглядят так:

Если хотите HD аудио, то возможно вам придется подключить соответствующий адаптер вот сюда. Читайте документацию по своей материнке:

Сетевые порты. Без них в наше время никак не обойтись. Мы получаем интернет именно через сетевой интерфейс по кабелю, или по радио. На материнских платах стоит стандартный встроенный разъем RJ 45 для подключения интернет- кабеля:

На старых компьютерах стандарт скорости был 100 мбит /с, современные сетевые карты выдают 1000 мбит/сек. Если Вам не достаточно одной сетевой карты, можно купить дополнительную и вставить ее в слот расширения:

Такая карта подходит для PCI слота. Есть варианты и поменьше, для PCI-express:

Уточняйте скорость передачи данных той или иной карты при покупке. Для любителей беспроводных сетей так же представлен широки выбор Wi-Fi адаптеров:

Их так же можно подключить в слоты расширения PCI ,либо PCI — ехpress. Однако, если Вы не хотите ковыряться в системном блоке, можно купить и USB — вариант такой карты:

Вы вставляете ее в порт и вводите пароль от WIFI. И у вас подключено еще одно периферийное устройство. У многих моделей домашних принтеров так же есть адаптер WIi-Fi, и при такой настройке можно печатать без проводов. Благо, сегодня богатый выбор и сетевых карт и принтеров.

Как отключить USB порты при выключении компьютера?

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

Клавиатура так же светится, что ночью не совсем удобно, хотя и не плохо (если печатаешь в темноте). Для того, чтобы отключить питание портов насовсем — попробуйте набрать сочетание клавиш Win+R и в строке «Выполнить» вставить команду powercfg /h off.

После чего нужно выключить компьютер. Симптомы скорее всего исчезнут. Эта команда отключает режим сна, и компьютер вырубается полностью. Можно посмотреть в панели управления настройки по питанию в «Плане электропитания» Но, есть такие модели плат, где эта настройка выключается через BIOS. А на самых передовых эта функция не отключается или спрятана очень глубоко. Предполагается, что так удобно ночью заряжать гаджеты.

В трудных случаях может помочь документация по материнской плате. Находите нужную перемычку (джампер) и вручную отключаете питание. Но это слишком сложно. А самый простой способ — это купить USB — хаб с выключателями и к нему уже подсоединить нужную периферию. И не мучиться. Пока, до новых встреч!

StopBits - задает количество стоповых бит. Поле может
принимать следующие значения:


  • ONESTOPBIT - один стоповый бит;
  • ONE5STOPBIT - полтора стоповых бита (практически не
    используется);
  • TWOSTOPBIT - два стоповых бита.

После того как все поля структуры DCB заполнены, необходимо
произвести конфигурирование порта, вызвав функцию SetCommState:

BOOL SetCommState(

HANDLE hFile,

LPDCB lpDCB

В случае успешного завершения функция вернет отличное от нуля
значение, а в случае ошибки - нуль.

Второй обязательной структурой для настройки порта является
структура COMMTIMEOUTS. Она определяет параметры временных задержек
при приеме-передаче. Вот описание этой структуры:

typedef struct _COMMTIMEOUTS {

DWORD ReadIntervalTimeout;

DWORD ReadTotalTimeoutMultiplier;

DWORD ReadTotalTimeoutConstant;

DWORD WriteTotalTimeoutMultiplier;

DWORD WriteTotalTimeoutConstant;

} COMMTIMEOUTS,*LPCOMMTIMEOUTS;

Поля структуры COMMTIMEOUTS имеют следующие значения:


  • ReadIntervalTimeout - максимальное временной промежуток
    (в миллисекундах), допустимый между двумя считываемыми с
    коммуникационной линии последовательными символами. Во время
    операции чтения временной период начинает отсчитываться с момента
    приема первого символа. Если интервал между двумя
    последовательными символами превысит заданное значение, операция
    чтения завершается и все данные, накопленные в буфере, передаются
    в программу. Нулевое значение данного поля означает, что данный
    тайм-аут не используется.
  • ReadTotalTimeoutMultiplier - задает множитель (в


    умножается на количество запрошенных для чтения символов.
  • ReadTotalTimeoutConstant - задает константу (в

    операции чтения. Для каждой операции чтения данное значение
    плюсуется к результату умножения ReadTotalTimeoutMultiplier на
    количество запрошенных для чтения символов. Нулевое значение полей
    ReadTotalTimeoutMultiplier и ReadTotalTimeoutConstant означает,
    что общий тайм-аут для операции чтения не используется.
  • WriteTotalTimeoutMultiplier - задает множитель (в
    миллисекундах), используемый для вычисления общего тайм-аута

    умножается на количество записываемых символов.
  • WriteTotalTimeoutConstant - задает константу (в
    миллисекундах), используемую для вычисления общего тайм-аута
    операции записи. Для каждой операции записи данное значение
    прибавляется к результату умножения WriteTotalTimeoutMultiplier на
    количество записываемых символов. Нулевое значение полей
    WriteTotalTimeoutMultiplier и WriteTotalTimeoutConstant означает,
    что общий тайм-аут для операции записи не используется.

Немного поподробнее о тайм-аутах. Пусть мы считываем из порта 50
символов со скоростью 9 600 бит/с. Если при этом используется 8 бит
на символ, дополнение до четности и один стоповый бит, то на один
символ в физической линии приходится 11 бит (включая стартовый бит).
Значит, 50 символов на скорости 9 600 бит/с будут приниматься

50×11/9600=0,0572916 с

или примерно 57,3 миллисекунды, при условии нулевого интервала
между приемом последовательных символов. Если же интервал между
символами составляет примерно половину времени передачи одного
символа, т. е. 0,5 миллисекунд, то время приема будет

50×11/9600+49×0,0005=0,0817916 с

или примерно 82 миллисекунды. Если в процессе чтения прошло более
82 миллисекунд, то мы вправе предположить, что произошла ошибка в
работе внешнего устройства и можем прекратить считывание, тем самым
избежав зависания программы. Это и есть общий тайм-аут операции
чтения. Аналогично существует и общий тайм-аут операции записи.

Формула для вычисления общего тайм-аута операции, например,
чтения, выглядит так:

NumOfChar x ReadTotalTimeoutMultiplier +
ReadTotalTimeoutConstant

где NumOfChar - число символов, запрошенных для операции чтения.

В нашем случае тайм-ауты записи можно не использовать и
установить их равными нулю.

После заполнения структуры COMMTIMEOUTS, необходимо вызвать
функцию установки тайм-аутов:

BOOL SetCommTimeouts(

HANDLE hFile,

LPCOMMTIMEOUTS lpCommTimeouts

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

BOOL SetupComm(

HANDLE hFile,

DWORD dwInQueue,

DWORD dwOutQueue

Допустим, вы обмениваетесь с внешним устройством пакетами
информации размером 1024 байта, тогда разумным размером буферов
будет значение 1200. Функция SetupComm интересна тем, что она может
просто принять ваши размеры к сведению, внеся свои коррективы, либо
вообще отвергнуть предложенные вами размеры буферов - в таком случае
эта функция завершится ошибкой.

Приведу пример открытия и конфигурирования последовательного
порта COM1. Для краткости - без определения ошибок. В данном примере
порт открывается для работы со скоростью 9 600 бит/c, используется 1
стоповый бит, бит четности не используется:

#include

. . . . . . . . . .

HANDLE handle;

COMMTIMEOUTS CommTimeOuts;

DCB dcb;

handle = CreateFile(«COM1», GENERIC_READ | GENERIC_WRITE,
NULL, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);

SetupComm(handle, SizeBuffer, SizeBuffer);

GetCommState(handle, &dcb);

dcb.BaudRate = CBR_9600;

dcb.fBinary = TRUE;

dcb.fOutxCtsFlow = FALSE;

dcb.fOutxDsrFlow = FALSE;

dcb.fDtrControl = DTR_CONTROL_HANDSHAKE;

dcb.fDsrSensitivity = FALSE;

dcb.fNull = FALSE;

dcb.fRtsControl = RTS_CONTROL_DISABLE;

dcb.fAbortOnError = FALSE;

dcb.ByteSize = 8;

dcb.Parity = NOPARITY;

dcb.StopBits = 1;

SetCommState(handle, &dcb);

CommTimeOuts.ReadIntervalTimeout= 10;

CommTimeOuts.ReadTotalTimeoutMultiplier = 1;

// значений этих тайм – аутов вполне хватает для уверенного
приема

// даже на скорости 110 бод

CommTimeOuts.ReadTotalTimeoutConstant = 100;

// используется в данном случае как время ожидания
посылки

CommTimeOuts.WriteTotalTimeoutMultiplier = 0;

CommTimeOuts.WriteTotalTimeoutConstant = 0;

SetCommTimeouts(handle, &CommTimeOuts);

PurgeComm(handle, PURGE_RXCLEAR);

PurgeComm(handle, PURGE_TXCLEAR);

После открытия порта первым делом необходимо сбросить его, так
как в буферах приема и передачи может находиться “мусор”. Поэтому в
конце примера мы применили ранее не известную нам функцию
PurgeComm:

BOOL PurgeComm(

HANDLE hFile,

DWORD dwFlags

Эта функция может выполнять две задачи: очищать очереди
приема-передачи в драйвере или же завершать все операции
ввода-вывода. Какие именно действия выполнять, задается другим
параметром:


  • PURGE_TXABORT
    записи, даже если они не завершены;
  • PURGE_RXABORT - немедленно прекращает все операции
    чтения, даже если они не завершены;
  • PURGE_TXCLEAR - очищает очередь передачи в драйвере;
  • PURGE_RXCLEAR - очищает очередь приема в
    драйвере.
    Эти значения можно комбинировать с помощью побитовой
    операции OR. Очищать буферы рекомендуется также после ошибок
    приема-передачи и после завершения работы с портом.

Настало время для рассмотрения непосредственно операций
чтения-записи для порта. Как и для работы с файлами, используются
функции ReadFile и WriteFile. Вот их прототипы:

BOOL ReadFile(

HANDLE hFile,

LPVOID lpBuffer,

DWORD nNumOfBytesToRead,

LPDWORD lpNumOfBytesRead,

LPOVERLAPPED lpOverlapped

BOOL WriteFile(

HANDLE hFile,

LPVOID lpBuffer,

DWORD nNumOfBytesToWrite,

LPDWORD lpNumOfBytesWritten,

LPOVERLAPPED lpOverlapped

Рассмотрим назначение параметров этих функций:


  • hFile - описатель открытого файла коммуникационного
    порта;
  • lpBuffer - адрес буфера. Для операции записи данные из
    этого буфера будут передаваться в порт. Для операции чтения в этот
    буфер будут помещаться принятые из линии данные;
  • nNumOfBytesToRead, nNumOfBytesToWrite - число ожидаемых
    к приему или предназначенных для передачи байт;
  • nNumOfBytesRead, nNumOfBytesWritten - число фактически
    принятых или переданных байт. Если принято или передано меньше
    данных, чем запрошено, то для дискового файла это свидетельствует
    об ошибке, а для коммуникационного порта - совсем не обязательно.
    Причина в тайм-аутах.
  • LpOverlapped - адрес структуры OVERLAPPED, используемой
    для асинхронных операций.

В случае нормального завершения функции возвращают значение,
отличное от нуля, в случае ошибки - нуль.

Приведу пример операции чтения и записи:

#include

…………..

DWORD numbytes, numbytes_ok, temp;

COMSTAT ComState;

OVERLAPPED Overlap;

char buf_in = «Hello!»;

numbytes = 6;

// если temp не равно нулю, значит - порт в состоянии
ошибки

if(!temp) WriteFile(handle, buf_in, numbytes,
&numbytes_ok, &Overlap);

ClearCommError(handle, &temp, &ComState);

if(!temp) ReadFile(handle, buf_in, numbytes, &numbytes_ok,
&Overlap);

// в переменной numbytes_ok содержится реальное число
переданных-

// принятых байт

В этом примере мы использовали две неизвестные нам ранее
структуры COMSTAT и OVERLAPPED, а также функцию ClearCommError. Для
нашего случая связи “по трем проводам” структуру OVERLAPPED можно не
рассматривать (просто использовать, как в примере). Прототип функции
ClearCommError имеет вид:

BOOL ClearCommError(

HANDLE hFile,

LPDWORD lpErrors,

LPCOMSTAT lpStat

Эта функция сбрасывает признак ошибки порта (если таковая имела
место) и возвращает информацию о состоянии порта в структуре
COMSTAT:

typedef struct _COMSTAT

DWORD fCtsHold:1;

DWORD fDsrHold:1;

DWORD fRlsdHold:1;

DWORD fXoffHold:1;

DWORD fXoffSent:1;

DWORD fEof:1;

DWORD fTxim:1;

DWORD fReserved:25;

DWORD cbInQue;

DWORD cbOutQue;

} COMSTAT, *LPCOMSTAT;

Нам могут пригодиться два поля этой структуры:


  • CbInQue - число символов в приемном буфере. Эти символы
    приняты из линии, но еще не считаны функцией ReadFile;
  • CbOutQue - число символов в передающем буфере. Эти
    символы еще не переданы в линию.

Остальные поля данной структуры содержат информацию об
ошибках.

И наконец, после завершения работы с портом его следует закрыть.
Закрытие объекта в Win32 выполняет функция CloseHandle:

BOOL CloseHandle(

HANDLE hObject

На нашем сайте вы можете найти полный текст класса для работы с
последовательным портом в асинхронном режиме “по трем проводам”, а
также пример программы с использованием этого класса. Все это
написано под Builder С++, но, поскольку используются только функции
API Win32, текст программы легко изменить под любой компилятор С++.
Возможно также, что класс написан не совсем “по правилам” - прошу
извинить, автор не является “правильным” программистом и пишет так,
как ему удобно J .

Инструкция

Нажмите по значку «Мой компьютер» правой кнопкой мышки. В контекстном меню выберите «Свойства». Если у вас операционная система Windows XP, то в следующем окне выберите «Оборудование», затем - «Диспетчер устройств». Если на вашем компьютере установлена операционная система Windows 7, то диспетчер устройств можно выбрать сразу же.

Появится окно, в котором будет список всех устройств, которые есть на вашем компьютере. В этом списке вам нужно найти строку «Порты СОМ и LPT». Нажмите по стрелочке, которая находится рядом со строкой. Откроется список сом-портов, которые установлены на вашем ПК.

Нажмите по номеру порта правой кнопкой мышки, после чего в контекстном меню выберите «Свойства». Вы увидите устройство, которое подключено к этому порту. Таким способом вы можете узнать номер порта сом, к которому подключено нужное устройство.

Также можно воспользоваться программой диагностики и мониторинга компьютера AIDA64 Extreme Edition. Программа платная, но в интернете можно найти ее тривиальную версию. Возможностей бесплатной версии хватит для того, чтобы узнать номер сом-порта. Скачайте приложение из интернета и инсталлируйте его на жесткий диск компьютера.

Запустите AIDA64 Extreme Edition. После ее запуска придется подождать несколько секунд. Программа просканирует систему. После этого вы увидите, что меню разделено на два окна. Вам потребуется левое окно, в котором найдите строку «Устройства». Нажмите по стрелочке, которая находится рядом. Найдите в списке устройства, которые подключены к сом-портам (может быть просто написано «Cом-устройства»).

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

Источники:

  • В диспетчере устройств нет раздела

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

Инструкция

Самый простой вид прокси – это сайт-анонимайзер. Там достаточно просто указать адрес сайта, и вы окажетесь там (под прокси). Способ позволяет совершенно не заботиться о нужного прокси или даже программы . Однако, из-за того, что способ очень простой и возможности его очень ограничены. Простой пример такого сайта: http://anonymouse.org/

Существуют специальные программы, которые находят прокси через свой поиск, самая простая в использовании – это Hide IP Platinum, но, возможно, поскольку ее используют многие люди сразу и прокси многократно повторяются - это заметно отражается на скорости соединения. По этому, конечно, лучше использовать что-то побыстрее для удобного использования интернета.

Наиболее интересный вариант – это программа ProxySwitcher Standard, она может как находить прокси через свой поиск (причем тысячи на выбор), так и использовать ваши заданные адреса. Лучше, конечно, через эту программу использовать специальные адреса, поскольку их меньше, и если искать в специальных местах, то они качественнее. Также замечательной возможностью данной программы является сравнительно быстрая проверка прокси на работоспособность.

Для приведения механизма в работу, достаточно найти правильный адрес прокси и поместить в список ProxySwitcher Standard. Искать прокси, лучше всего здесь: http://www.aliveproxy.com/fastest-proxies/ . Как можно заметить, и небольшой список, и скорость неплохая, вполне подходящая для комфортного использования интернета анонимно.

Видео по теме

Источники:

  • как найти proxy в 2018

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

Инструкция

Откройте меню кнопки «Пуск». Перейдите в «Панель управления». Далее откройте раздел «Сетевые подключения». Кликните правой кнопкой мыши по значку подключения к сети интернет и выберите пункт «Состояние». Перед вами откроется окно. В нем выберите пункт «Поддержка». Узнать IP-адрес можно будет, посмотрев его в соответствующей строчке в открывшемся окне. Данный список операций подойдет для пользователей операционных систем Windows.

Откройте командную строку для выполнения следующего запроса: #sudo ifconfig (Способ установления IP-адреса для пользователей систем Unix). Если вы наделены правами администратора, введите: root-#ifconfig. После этого на экране появятся свойства всех имеющихся в настоящее время на компьютере сетевых интерфейсов. Ваше текущее сетевое подключение будет проходить под именем ppp1 или ppp0. Выяснить IP-адрес можно будет, посмотрев его в строке после слова inetaddr.

Перейдите по ссылкам: http://2ip.ru и http://speed-tester.info . Это необходимо, чтобы узнать IP-адрес, который по каким-то причинам маскируется провайдером. После тестов указанный сайтов вы сможете посмотреть IP-адрес в перечне другой информации, такой как скорость соединения, стабильность работы и т.д. Обратите внимание, что если в строке «Прокси» указано значение «используется», это означает, что ваше соединение осуществляется через промежуточный сервер, поэтому узнать IP по прокси не представляется возможным. Данный тип подключения, как правило, применяется крупными организациями и компаниями с обширной внутренней локальной сетью, объединяющей все .

Прокси-сервер – компьютер, который служит посредником при выходе в интернет с вашего компьютера. При подключении через такой сервер, вы остаетесь анонимным, а проверка видит IP-адрес прокси-сервера. Если вам известен прокси-сервер вида: "xxx.xxx.xxx.xxx", но неизвестен порт, не отчаивайтесь. Внимательно прочитав эту инструкцию, вы сможете подобрать порт к серверу.

Вам понадобится

  • Программа "Powerful Generator", доступ в Интернет.

Инструкция

Первым делом вам понадобится программа "Powerful Generator". Пройдите по ссылке http://upwap.ru/1796108 и скачайте её. Распакуйте архив. Некоторые антивирусные программы могут принять "Powerful Generator" за вирус, хотя программа чиста. Если это произойдет – отключите антивирус. Не хотите рисковать? Тогда этот метод не для вас, поищите другой.

В папке с программой создайте текстовый документ. В него запишите прокси-сервер. Назвать документ можно как душе угодно, но лучше всего назвать "Proxy.txt", чтобы не запутаться впоследствии.

Создание списка портов

1. Зайдите в программу "Powerful Generator", выберите "pass или uin лист".
2. Выберите вкладку "Лист uin’ов"
3. Выберите “Диапазон ” и в опции диапазона уинов выберите диапазон от 1 до 9999.
4. Выберите путь для сохранения файла, назовите его "Ports.txt".
5. Нажмите создать.

Создание списка вида "server:port"

1. Зайдите в программу "Powerful Generator", выберите "uin;pass лист".
2. Выберите вкладку "параметры уинов", затем опцию "лист уинов".
3. Укажите путь к "Proxy.txt".
4. Выберите вкладку "параметры паролей", затем опцию "лист паролей".
5. В опциях листа паролей укажите путь к "Ports.txt"
6. Выберите опцию "Делать для каждого уина все пароли, содержащиеся в листе".
7. Выберите вкладку "запись листа".
8. В поле "разделять знаком" напишите ":" вместо ";" (Поскольку прокси с портами пишутся именно через ":").
9. Выберите путь для сохранения файла, назовите его "Servers.txt".
10. Нажмите создать.

Итак, у вас есть текстовый документ в котором содержится десять тысяч прокси-серверов с различными портами (от 1 до 9999). Теперь необходимо определить, какой из них работоспособен. Как же это сделать? Элементарно, пройдите по ссылке http://www.onlinechecker.freeproxy.ru/ и скопируйте весь список из "Servers.txt" в окошко "Check Proxy Online". Нажмите "Check proxy!" Когда сервис завершит работу, он выдаст работающий сервер из вашего списка.
Полученный прокси-сервер можно использовать для различных целей.

Видео по теме

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

Вам понадобится

  • - доступ в интернет.

Инструкция

Для того чтобы воспользоваться функцией просмотра сайтов под прокси-сервером, воспользуйтесь самым простым методом – сайтом-анонимайзером. Для этого предварительно включите соответствующую функцию в вашем браузере, если это не было сделано ранее.

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

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

В случае если вы хотите просмотреть название прокси-сервера, под которым вы выходите в интернет, откройте в вашем компьютере меню «Подключение» в свойствах используемого вами обозревателя, после чего просмотрите информацию в пункте «Настройка LAN».

Если вы хотите проверить надежность используемого вами прокси-сервера, воспользуйтесь для этого специальными сайтами, например, на ресурсе http://privacy.net/analyze-your-internet-connection/, после анализа ваших данных сайт выдаст вам имеющуюся у него информацию о вас и вашем компьютере, которая может быть доступна и другим людям в сети.

Также вы можете использовать аналогичные сервисы, например, http://www.stilllistener.addr.com/checkpoint1/index.shtml. Если же в их меню вы найдете свой реальный адрес, значит выбранный вам прокси ненадежен.

Видео по теме

Полезный совет

Не делайте ничего противозаконного под прокси в интернете, так или иначе ваш реальный адрес узнать будет возможно даже при полной анонимности.

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

Инструкция

Убедитесь в том, что понятна существующих типов прокси-серверов:- HTTP прокси - наиболее распространенный тип сервера, совместимый со всеми браузерами и поддерживающий функциональность веб-приложений;- Socks прокси, подразделяющийся по версиям протокола на Socks5 и Socks4, - задуманные для поддержки всех протоколов UDP и TCP/IP, но не совместимые с некоторыми интернет-приложениями (в основном используются IRC-клиентами и веб-пейджерами);- CGI прокси - представляют из себя веб-ресурс и работают только с браузерными программами;- FTP прокси - применяется в корпоративных сетях с ограничением доступа в интернет брандмауэром.

Удостоверьтесь в том, что ясна разница в возможном использовании этих типов прокси-серверов в соответствии с их особенностями:- прозрачный, или transparent, - конечный сервер запроса может видеть используемый прокси и IP-адрес компьютера;- искажающий - конечный сервер получает фиктивный, искаженный адрес;- анонимайзер - обеспечивает безопасный серфинг.

Компьютер + мобильник: эффективное взаимодействие Гольцман Виктор Иосифович

Порты COM и USB

Порты COM и USB

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

Рис. 1.3. Разъемы портов.

Сначала в компьютерах появился последовательный (serial) порт. Иначе он называется COM-порт или RS-232. К COM-порту подключают кабель, состоящий из нескольких проводов, оканчивающийся 9-штырьковым разъемом. Информация через этот порт передается в виде последовательности электрических импульсов. По одному проводу (Tx) компьютер передает информацию внешнему устройству, а по другому (Rx) – принимает.

Стандарт RS-232 остается неизменным уже более десяти лет. На материнской плате компьютера предусмотрено два последовательных порта – COM1 и COM2. На задней стенке любого системного блока присутствует хотя бы один разъем последовательного порта (COM1). Второй порт (COM2) в современных компьютерах обычно просто не выведен на заднюю стенку, хотя на материнской плате соединительная колодка для него сделана.

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

Параметры COM-портов можно настроить следующим образом.

1. Запустите Диспетчер устройств . Для этого нажмите кнопку Пуск и выберите пункт Панель управления. Дважды щелкните кнопкой мыши на значке Система . На вкладке Оборудование нажмите кнопку Диспетчер устройств.

2. Дважды щелкните на пункте Порты COM и LPT.

3. Выберите порт, параметры которого нужно изменить, и выполните команду Свойства . Откроется окно (рис. 1.4).

Рис. 1.4. Параметры порта.

На вкладке Параметры порта окна Свойства: Последовательный порт (СОМ2) доступно несколько параметров. Из них нам может понадобиться первый параметр Скорость (бит/с) , определяющий, с какой скоростью порт способен передавать и принимать данные. По умолчанию задано значение 9600 бит/с. Предполагается, что с такой скоростью способно работать любое устройство, подключаемое к порту. Однако многие современные устройства, в том числе модемы и data-кабели для сотовых телефонов, могут обмениваться данными с компьютером с гораздо большей скоростью. Поэтому, если при низкой скорости передачи подключенное устройство работает устойчиво, можно попробовать увеличить значение до 57 600 или 115 200 бит/с – данные будут передаваться гораздо быстрее.

4. Выберите из списка нужное значение скорости порта и нажмите кнопку OK .

Остальные настройки последовательных портов обычно изменять не нужно. Вернуть все настройки порта к первоначальным значениям можно, нажав кнопку Восстановить умолчания.

Порты шины USB (universal serial bus – универсальная последовательная шина) обязательно присутствуют в любом современном компьютере (см. рис. 1.2). Этот стандарт подключения внешних устройств постепенно пришел на смену последовательному порту. Данные здесь, как и через COM-порт, передаются по двум проводам. По третьему проводу на подключаемые устройства подается напряжение питания +5 В.

Максимальная скорость обмена данными через порт USB почти в 1000 раз выше, чем через последовательный порт. Правда, при подключении телефона, который является большим «тугодумом», это несущественно. Важнее то, что стандартом гарантирована возможность «горячего», во время работы компьютера, подключения устройств к портам USB. Кроме того, USB-порты не требуют настройки. В Диспетчере устройств отображаются сведения о токе, который потребляет каждое устройство, подключенное к USB-портам.

Существует три типа разъемов USB, различающиеся только формой и размером (рис. 1.5).

«Обычный», плоский разъем типа A служит для подключения кабеля к компьютеру. Таким же разъемом оснащены миниатюрные адаптеры, которые вставляются непосредственно в порт USB на системном блоке. Особенно удобно подключать такой адаптер, когда дополнительные порты выведены на переднюю панель системного блока. Если на передней панели разъемов USB нет, а подбираться к задней стенке компьютера каждый раз затруднительно, поможет кабель-удлинитель с разъемами типа А на обоих концах.

Рис. 1.5. Разъемы USB.

Разъем типа B используют для соединения кабеля с периферийными устройствами: принтерами и модемами.

Для подключения к портативным устройствам (телефонам, камерам) применяют разъем мини-USB или мини-B.

Из книги Компьютер + мобильник: эффективное взаимодействие автора Гольцман Виктор Иосифович

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

Из книги Железо ПК [Популярный самоучитель] автора Пташинский Владимир

Глава 10 Шины расширения: слоты и порты Шина-шина опа, шина-шина най… Некогда популярная песенка о компьютерах В предыдущих главах мы познакомились с различными внутренними и внешними компонентами компьютера. Теперь рассмотрим то, с помощью чего все эти компоненты

Из книги Linux-сервер своими руками автора

1.7.6. Порты и демоны Дальнейшее изложение материала построено, исходя из того, что вы уже знаете, что такое сервер и какие службы вам придется настраивать. В пункте Как устроена книга (п. 1.5) было подробно описано, в каких главах описана настройка той или иной службы. Здесь же

Из книги Самоучитель работы на компьютере автора Колисниченко Денис Николаевич

2.2.8. Дополнительные USB-порты USB (Universal Serial Bus) - универсальная последовательная шина. К USB подключаются многие устройства: USB-диски, цифровые фотокамеры, цифровые видеокамеры, принтеры, сканеры, модемы, даже есть USB-клавиатуры и USB-мыши.Понятно, что при таком разнообразии

Из книги Asterisk™: будущее телефонии Второе издание автора Меггелен Джим Ван

Как найти порты FXO и FXS на плате TDM400P На рис. 4.1 представлена плата TDM400P с модулями FXS и FXO. Фото черно-белое, поэтому невозможно различить цвета, но под номером 1 -FXS-модуль зеленого цвета, а под номером 2 - FXO-модуль, оранжево- красный. В нижнем правом углу рисунка можно увидеть

Из книги Тайны и секреты компьютера автора Орлов Антон А

Глава 10. Порты. Прокси. Файерволл Когда большинство пользователей компьютерных технологий видят слово «порт», то обычно с ним ассоциируются такие аббревиатуры, как COM, LPT, PS/2. То есть - попросту названия «гнезд», куда можно присоединить какие - либо периферийные

Из книги Системное программирование в среде Windows автора Харт Джонсон М

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

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

ГЛАВА 14 Асинхронный ввод/вывод и порты завершения Операциям ввода и вывода присуща более медленная скорость выполнения по сравнению с другими видами обработки. Причиной такого замедления являются следующие факторы: Задержки, обусловленные затратами времени на поиск

Из книги Технологии программирования автора Камаев В А

Порты завершения ввода/вывода Порты завершения ввода/вывода, поддерживаемые лишь на NT-платформах, объединяют в себе возможности перекрывающегося ввода/вывода и независимых потоков и используются чаще всего в серверных программах. Чтобы выяснить, какими требованиями

Из книги Язык Си - руководство для начинающих автора Прата Стивен

Пример: сервер, использующий порты завершения ввода/вывода Программа 14.4 представляет видоизмененный вариант программы serverNP (программа 11.3), в котором используются порты завершения ввода/вывода. Этот сервер создает небольшой пул серверных потоков и больший пул

Из книги Программирование для Linux. Профессиональный подход автора Митчелл Марк

Из книги Ноутбук [секреты эффективного использования] автора Пташинский Владимир

10.2.5 Порты приложения Клиент должен идентифицировать службу, к которой он хочет получить доступ. Это выполняется через спецификацию IP-адреса службы хоста и его номера порта TCP. Как и для UDP, номера портов TCP находятся в диапазоне от 0 до 65 535. Порты в диапазоне от 0 до 1023

Из книги автора

6.4. СИСТЕМЫ ИЗ ПРОГРАММ, ОБМЕНИВАЮЩИХСЯ ДАННЫМИ ЧЕРЕЗ ПОРТЫ Такой обмен обычно реализуется при многопроцессорной (многомашинной) обработке. Порт каждой из программ представляет программу накопления и верификации как входных, так и выходных данных в соответствующих

Из книги автора

СИСТЕМНО-ЗАВИСИМЫЕ СРЕДСТВА: ПОРТЫ ВВОДА-ВЫВОДА МИКРОПРОЦЕССОРОВ INTEL 8086/8088 Рассмотрим различные устройства ввода-вывода, поскольку теперь мы хотим обсудить вопрос о том, как приспособить реализацию компилятора с языка Си к требованиям конкретной вычислительной

Из книги автора

7.3.4. Последовательные порты Файл /proc/tty/driver/serial содержит конфигурационную и статистическую информацию о последовательных портах. Эти порты нумеруются начиная с нуля. Работать с настройками порта позволяет также команда setserial, но файл /proc/tty/driver/serial, помимо всего прочего,

Из книги автора

Разъемы и порты Все современные ноутбуки оснащены USB-портами, к которым можно подключить практически все современные периферийные устройства. Интерфейс USB 2.0 обеспечивает передачу данных со скоростью до 60 Мбит/c и обладает обратной совместимостью с USB 1.1. Этот мудреный


Самое обсуждаемое
Буксирное устройство судна Буксирное устройство судна
Обмен визитками между телефонами Blackberry Обмен визитками между телефонами Blackberry
Извлечение субтитров из видеофайла MKV Извлечение субтитров из видеофайла MKV


top