Самостоятельное изготовление кабельного тестера, страница 2

Итак, для того, чтобы сделать прямой кабель, нужно соединить контакты 1 с 1, 2 с 2, 3 с 3, 6 с 6. Если же вы хотите соединить вместе 2 сетевые платы, то нужно соединить передатчик с приемником и наоборот, перекрестив пары, т.е. 1 с 3, 2 с 6, 3 с 1, 6 с 2. Такой кабель называется кросс-оверным и эквивалентен использованию с одной стороны разводки по стандарту 568А, а с другой — 568В. Что же касается коричневой и синей пар, то можно их игнорировать. Вообще говоря, мы считаем, что проще отрезать их. Если же вы хотите во что бы то ни стало придерживаться стандарта, то знайте, эти провода можно для чего-нибудь применить, например, в 100Вазе-Т4 и Gigabit Ethernet используются все 8 проводов. Возможно, будут еще какие-нибудь спецификации с использованием этих пар, но в нашем случае, для сетей 100Ваsе-ТХ и 10Ваsе-Т, они не нужны.

ЧАСТЬ 2 — РАЗРАБОТКА СХЕМЫ

Теперь мы знаем, как работает кабель 5-й категории, посему можно приступать к разработке схемы, проводящей его тестирование. Для проверки прямого кабеля необходимо протестировать соединения 1-1, 2-2, 3-3, 6-6. Для кросс-оверного — 1-3, 2-6, 3-1 г 6-2. Также нужно убедиться в отсутствии короткого замыкания, например, между 1 и 2. Нам также неплохо знать, что же мы тестировали, прямой кабель или кроссовер. Для этого можно применить 2 светодиода, каждый из которых будет загораться при соответствии кабеля определенному типу. Наконец, процедура тестирования должна быть как можно проще, т.е. все должно сводиться к простому втыканию вилок в гнезда.

Одним из способов реализации тестирования является подача по очереди на один из проводов кабеля низкого уровня (0), а на остальные — высокого (1) и проверка на другом конце кабеля, что только нужный провод имеет низкий потенциал, а остальные — высокий. Если не пройдет тест для прямого кабеля, нужно провести его для кроссовера. Когда тест для какого-либо типа кабеля прошел, нужно включить соответствующий светодиод. Разумеется, такой способ тестирования является простейшим, и, в отличие от дорогого профессионального оборудования не может сказать вам, насколько хорошо будет осуществляться передача данных по этому кабелю, правильно ли свиты пары и т.д. Тем не менее, с его помощью можно быстро определить правильность электрических соединений.

Наиболее гибкой системой для этих целей является система, основанная на микроконтроллере. У нас вокруг валялось великое множество микроконтроллеров 8048, поэтому в качестве основы для схемы был выбран именно он, хотя ничто не мешает вам выбрать любой другой подходящий микроконтроллер. Если вы не являетесь крутым паяльником или просто не имеете времени на пайку/программирование и т.д., то можно соорудить нечто подобное описываемому здесь из кучи светодиодов и переключателей, хотя, конечно, описанное здесь решение гораздо удобнее в использовании, да и выглядит с технической стороны очень изящно. */ Единственное, что обязательно — это 10 линий ввода/вывода. Электрическая схема приведена на рис.1

Биты 0-3 порта 1 подключаются к одному концу кабеля, 4-7 — к другому. Два индикаторных светодиода управляются ключами на транзисторах 2n2222а, которые, в свою очередь, управляются битами 4 и 5 порта 2 8048. Можно переделать эту часть схемы таким образом, чтобы вместо двух светодиодов использовался один, зажигающийся разными цветами в зависимости от типа кабеля.  2716    —    микросхема EPROM, в которой хранится прошивка, 74IJ3373 —. регистр-защелка для младших 8-и битов адреса.

       Программа для этого устройства написана на ассемблере. Ниже приведен ее листинг:

; 8048 Disassembly of mem.bin

; 9/1/102 14:48

orgO

;

mova,#30h

outlp2,a

mova.fOffh

X0005:deca

jnzXOOOS

mova, #0 ,;

outlp2,a

пор; data truncated

;

org10h

X0010:mova,fOfeh

outlpl,a

ina.pl

cpla

adda,#0eeh

jnzXOO8O

mova,#0fdh

outlpl, a

ina.pl

cpla

adda.#Oddh

cpla

jnzXOO8O

mova,#Ofbh

outlpl,a

ina,pl

cpla

adda,#0bbh

cpla

jnzX0080

mova,#0f7h

outlpl,a

ina.pl

cpla

adda,#77h

cpla

jnzXOO8O

mova,#10h

outlp2, a

jmpXOO1O

org8Oh

X0080:mova,#Ofeh

outlpl,a

ina.pl

cpla

JnzXOObO

mova.#Ofdh

outlpl, a

ina.pl

cpla

adda,t7dh

cpla

jnzXOObO

mova.fOfbh

outlpl, a

ina.pl

cpla

adda.#7dh

cpla

jnzXOObO

mova,#0f7h

outlpl,a

ina.pl

cpla

adda,#0d7h

cpla

jnzXOObO

mova,f20h

outlp2, a

jmpXOO1O

orgObOh

ХООbО:mova,#0

outlp2,a

jmpXOO1O

;

org1Och

;

inc@rO

nор; data truncate

;

end

;