Предлагаемый пробник позволяет сократить время на тестирование и поиск неисправностей USB-портов материнских плат ПК и ноутбуков, не подключая их к источникам питания. Схема пробника показана на рис. 1. При тестировании USB-порта работающего компьютера он может питаться как от самого порта, так и от литиевого гальванического элемента CR2032 напряжением 3 В. Для индикации результата измерения используются два светодиода HL1 зелёного и HL2 красного свечения. В устройстве использован недорогой микроконтроллер (МК) PIC16F676-I/P, который обрабатывает полученные на линиях тестируемого USB-порта сигналы и сигнализирует об их состоянии включёнными светодиодами. Питание пробника осуществляется от элемента питания G1 при нажатой кнопке SB1. При подключении к работающему компьютеру на кнопку нажимать не надо, питание на пробник поступает с USB-порта через нормально замкнутые контакты кнопки SB1 и параметрический стабилизатор R1VD1, понижающий напряжение питания с 5 В до 3,3 В. За состоянием гальванического элемента следит встроенный в МК компаратор, на входы которого напряжение поступает через узел R8VD2R10R11. Для экономии питающее напряжение на этот узел подаётся с выхода RC5 только в период измерения. Делитель напряжения R4R6 формирует сигнал для МК для контроля за наличием напряжения питания на выводах исследуемого USB-порта.
Рис. 1. Схема пробника для проверки USB-портов
Функции пробника
- проверка наличия элементов с p-n переходами на линиях данных D+ и DUSB-портов c отображением информации о состоянии линий с помощью светодиодов;
- при питании от USB-порта тестирование дифференциальных сигналов на линиях D+ и D-;
- контроль состояния элемента питания пробника.
Рис. 2. Возможные варианты сигналов пробника
Возможные варианты сигналов пробника показаны на рис. 2. Алгоритм работы устройства следующий. При подключении пробника к работающему компьютеру МК определяет наличие внешнего напряжения питания на входе RC4 и через вывод RC0, подтягивает резистором R2 линию D- к плюсовой линии питания. Это необходимо для того, чтобы хост определил факт подключения устройства для работы в низкоскоростном режиме LS. После этого МК начнёт считывать пакет сигналов от хоста, представляющих собой последовательность дифференциальных лог 1 и лог. 0. Если с линиями порта всё нормально, т. е. в пакете присутствуют сигналы с дифференциальными логическими уровнями, светодиод красного свечения вспыхнет пять раз. После этого МК отключит резистор R2, и хост определит отключение устройства. Светодиод зелёного свечения будет включён постоянно, индицируя наличие напряжения +5 В на линии питания USB-порта.
В этом режиме работы пробника МК ничего не отп равляет в хост, его задача - с помощью включения и отключения резистора подтяжки к одной из линий порта удостовериться в способности хоста определить подключение и отключение конечного устройства, что соответственно подтверждается звуковым сигналом компьютера, а также определить наличие нескольких изменяющихся по уровням сигналов на информационных линиях USB-интерфейса, что будет являться подтверждением их физической исправности. Работа пробника в этом режиме тестировалась на портах USB2.0 и USB3.0 в компьютерах с установленными ОС Win7 и Win10.
При включении питания пробника, не подключённого к USB-порту, светодиод зелёного свечения должен трижды вспыхнуть, что будет означать исправную работу прибора и его холостой режим работы. Если элемент питания разряжен, при включении пробника трижды вспыхнет светодиод красного свечения, предупреждая о необходимости его замены. Соответственно измерение состояния линий D+ и D- USB-порта в этих двух режимах проводиться не может.
Если тестирование проводится на обесточенной материнской плате, при подключении пробника и последующем нажатии на кнопку SB1 МК через резисторы R3 и R5 подаёт лог. 1 c выходов RA2 и RC1 на информационные линии проверяемого порта. Следующим этапом является измерение напряжения на выводах RC2 и RC3, настроенных как входы АЦП. Полученный результат обрабатывается МК, который, в зависимости от результата измерений, затем включает нужные светодиоды.
Если результаты измерений на линиях тестируемого USB-порта равны или близки по значениям, включается светодиод зелёного свечения с продолжительным свечением и короткой паузой. Если результаты отличаются незначительно, светодиоды включаются поочерёдно с частотой около 2 Гц. При значительных отличиях с частотой 1 Гц вспыхивает только светодиод красного свечения, а если измеренные значения близки к нулю или напряжению питания (короткое замыкание), этот светодиод светит постоянно.
Мощность, потребляемая пробником в рабочем режиме, в основном зависит от тока, протекающего через светодиоды. При указанных на схеме номиналах резисторов R12 и R13 он не превышает 2 мА.
В зависимости от размеров корпуса пробник можно питать как от CR2032, так и от двух гальванических элементов типоразмера ААА или АА. Учитывая небольшое число деталей пробника, в авторском варианте - даже с учётом использования выводных компонентов, все они разместились на односторонней плате размерами 80x30 мм из фольгированного стеклотекстолита (рис. 3).
Рис. 3. Чертеж печатной платы устройства
Применены импортные резисторы, оксидный и керамический конденсаторы. Кнопка SB1 - PB22E06. Элемент питания установлен в держатель.
Рис. 4. Чертёж размещения элементов на плате
Чертёж размещения элементов на плате показан на рис. 4. Запрограммированный МК для уменьшения высоты устройства можно установить на плату без панели. После монтажа всех деталей на плату место установки и крепления USB-вилки и светодиодов для усиления жёсткости желательно обработать эпоксидным клеем. Также можно USB-вилку сделать выносной на кабеле длиной в 10-20 см, как в варианте, показанном на рис. 5. Затем пробник можно поместить в термоусаживаемую трубку соответствующего размера, вырезав отверстия для толкателя кнопки и элемента питания.
Рис. 5. Пробник для проверки USB-портов в сборе
При налаживании пробника резистор R11 нужно подобрать так, чтобы при напряжении гальванического элемента менее 2,5 В срабатывало предупреждение о необходимости его замены. Возможно, придётся подобрать светодиоды с минимальным прямым напряжением и токоограничительные резисторы R12 и R13 так, чтобы индикация при снижении напряжения до 2,5 В была визуально заметна.
Hex-файл для программирования МК и чертёж печатной платы находятся здесь.
Автор: В. Суров, г. Горно-Алтайск