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

Проверка LPT порта

СообщениеДобавлено: 28 дек 2009, 23:12
sven
Здравствуйте!Не подскажите поподробнее как с помощью программы LPTtest А.Вакуленко №8 2004г проверить на целостность порт ,что нужно делать ? Нужно делать плату с светодиодами ? Как нужно изменять состояние входных ,выходных линий порта ,что бы увидеть порт живой или нет?Извините за дремучесть.

Re: Проверка LPT порта

СообщениеДобавлено: 29 дек 2009, 09:31
ASD
Плату со светодиодами делать не обязательно, хотя это, конечно, нагляднее. Достаточно, измеряя мультиметром напряжение на выходных контактах разъема, убедиться, что его уровни соответствуют тем, что Вы устанавливаете в окне программы. Выход можно считать исправным, если высокий (High) уровень на нем не менее 2,4 В, а низкий (Low) не более 0,4 В. Строго говоря, приведенные значения положено измерять при токе нагрузки 14 мА. Без нагрузки высокий уровень обычно получается выше, а низкий - ниже указанного.

Для проверки входных линий порта нужно перемычкой на разъеме соединить проверяемый вход с одним из заведомо исправных (уже проверенных) выходов. Меняя состояние выхода, убедитесь, что за ним следует и показываемое в окне состояние входа.

Re: Проверка LPT порта

СообщениеДобавлено: 29 дек 2009, 21:17
sven
Спасибо .попробую что получится .С Наступающим!

Re: Проверка LPT порта

СообщениеДобавлено: 30 дек 2009, 23:04
БОРИС
можно и с помощью стандартной debug (команды I и O) это сделать, только правильно адреса порта указать надо.

Re: Проверка LPT порта

СообщениеДобавлено: 10 мар 2010, 22:51
sven
Порт проверил с помощью лпттест,оказался целым. Помогите как проверить с помощью программы лпттест программатор стк200 радио №2 2004г стр.52 рис.8

Re: Проверка LPT порта

СообщениеДобавлено: 11 мар 2010, 00:18
ASD
1. Изменяя уровень на линии DATA1, убеждаемся, что вместе с ним изменяется состояние линии BUSY.
2. Изменяя уровень на линии DATA2, убеждаемся, что вместе с ним изменяется состояние линии PE.
3. Устанавливаем низкий уровень на линии DATA4, чем включаем верхнюю по схеме половину микросхемы DD1.
3.1. Изменяя уровень на линии DATA6, убеждаемся, что вместе с ним изменяется состояние линии MOSI.
3.2. Изменяя уровень на линии DATA7, убеждаемся, что при низком уровне светодиод включен, а при высоком - выключен.
3.3. Изменяя уровень на линии DATA5, убеждаемся, что вместе с ним изменяется состояние линии SCKI.
4. Устанавливаем низкий уровень на линии DATA3, чем включаем нижнюю по схеме половину микросхемы DD1.
4.1. Изменяя уровень на линии DATA8, убеждаемся, что вместе с ним изменяется состояние линии RESET.
4.2. Убеждаемся, что на линии ACKLNG - высокий уровень. При соединении линии MISO с общим проводом (GND) уровень на линии ACKLNG должен стать низким.

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

Re: Проверка LPT порта

СообщениеДобавлено: 14 мар 2010, 23:54
sven
Не совпадает маркировка разьема дв-25ф рис.2 стр .25 №8 2004г с разьемом дв25м рис.8 стр52 №2 2004г .Например дата 5 не 6 контакте как рис.8 на 7 .Дата3 не на 4 ,а на 5 и т.д.

Re: Проверка LPT порта

СообщениеДобавлено: 15 мар 2010, 00:55
ASD
Согласно действующему стандарту IEE 1284 одни и те же восемь линий параллельного ввода/вывода порта LPT в разных режимах его работы называют по разному. В исторически первом SPP ("Centronics") от DATA1 до DATA8, в режиме ECP (и некоторых других)- от DATA0 до DATA7, а в режиме EPP - от AD0 до AD7 (см. "Радио" 2007, № 7, с. 43, 44). Ориентируйтесь на номера контактов разъема.

Re: Проверка LPT порта

СообщениеДобавлено: 06 окт 2010, 17:17
Ewgen
Проверка на возможность ввода информации по шине данных AD0-AD7 на четырёх
разных AT и ATX компьютерах. (контакты 2,3,4,5,6,7,8,9 разъёма DB-25, LPT-порт)

1. Войти в BIOS, установить режим EPP 1,7 или EPP, определить базовый адрес
LPT-порта (обычно BASE = 378h) и запустить компьютер.

2. Прочитать значение регистра управления (CR) по адресу BASE+2 (например 37Ah)
и сохранить. Например на языке программирования QBASIC:

a=INP(&H37A) ' присвоить переменной "a" значение регистра управления
PRINT a ," десятичное значение "; 'вывод на монитор
PRINT HEX$(a)," шеснадцатеричное"

3. Для переключения шины данных в режим ввода установить бит 5, регистра
управления 37Ah , в "1":

OUT(&H37A),32

4. Измерить напряжение на линиях шины данных AD0 - AD7. На всех линиях будет
около 4.2 - 4.4 В. (контакты 2-9 разъёма DB-25, порта LPT)
(на одном из древних компьютеров шина данных переключилась в состояние высокого
входного сопротивления )

5. Прочитать состояние шины данных AD0 - AD7:

d=INP(&H378)
PRINT d ;" десятичное "; HEX$(d);" шестнадцатиричное"

Оно будет равным 255 в десятичном виде или FF в шестнадцатиричном.

6. Соединить с общим проводом одну из линий шины данных через
резистор в 200 Ом и прочитать состояние шины данных:

DO
d=INP(&H378)
PRINT d , HEX$(d)
LOOP WHILE INKEY$ = ""

В зависимости от номера линии данных, соединенной через резистор в 200 Ом
на общий провод на экране будет значение
линия AD0 254 FE
линия AD1 253 FD
линия AD2 251 FB
линия AD3 247 F7
линия AD4 239 EF
линия AD5 223 DF
линия AD6 191 BF
линия AD7 127 7F
---------------- 255 FF

7. Измерить напряжение на этой линии, соединённой с общим проводом через
резистор 200 Ом.
Оно будет в пределах 0.1 - 0.6 В.
Это означает что шина данных в состоянии ввода
Если напряжение около 2,5 Вольт или больше, то шина данных находится в
обычном состоянии вывода.

8. Вычислить ток текущий через резистор (разделить измеренное напряжение
на 200 Ом). Ток через резистор можно измерить и мультиметром, вкючив его
последовательно с резистором (ни в коем случае не замыкайте выходы
параллельного порта на корпус и не соединяйте выходы LPT-порта напрямую
между собой )

9. Восстановить старое значение регистра управления 37Ah:

OUT(&H37A),a ' восстановить значение регистра BASE+2
END

Если вы владеете языком программирования (например QBASIC) то у вас должно
получиться. Скопируйте программу в текстовый файл, присвойте ему расширение bas,
откройте файл из среды QBSIC или QB45 и клавишей F5 запустите.
Каждое соединение сопровождается звуком разного тона.
Если сообщения на экране не читаются, подредактируйте текст,
перепишите выводмые строки в кавычках за командой PRINT.

SCREEN 11
PRINT " ТЕСТИРОВАНИЕ LPT-ПОРТА НА ВОЗМОЖНОСТЬ ВВОДА ПО ЛИНИИ ДАННЫХ"
PRINT " Поочерёдно соединяйте линии 2 - 9 разъёма DB-25 LPT"
PRINT "с общим проводом через резистор 160 - 200 Ом"
PRINT " РЕГИСТР УПРАВЛНИЯ БЫЛО"
DEFINT A-Z
a37A = INP(&H37A)
PRINT "37Ah ",
w = a37A
GOSUB b1
kl$ = ""
OUT (&H37A), 32
PRINT " РЕГИСТР УПРАВЛНИЯ СТАЛО"
a37 = INP(&H37A)
PRINT "37Ah ",
w = a37
w$ = ""
GOSUB b1

DO
LOCATE 10, 1
PRINT " РЕГИСТР ДАННЫХ"
PRINT "378h",
kl$ = INKEY$
IF kl$ <> "" THEN
OUT (&H37A), a37A
PRINT
PRINT " РЕГИСТР УПРАВЛЕНИЯ ВОССТАНОВЛЕН "
a37A = INP(&H37A)
PRINT "37Ah",
w = a37A
w$ = ""
GOSUB b1
END
END IF
a = INP(&H378)
w = a
w$ = ""
GOSUB b1
LOOP

b1:
zn = w
FOR c = 7 TO 0 STEP -1
x = 2 ^ c
IF w >= x THEN
w$ = w$ + "1"
END IF
IF w < x THEN
w$ = w$ + "o"
SOUND 500 + c * 100, 1
END IF
IF w >= x THEN w = w - x
NEXT c
PRINT w$; " "; HEX$(zn), zn
RETURN

Re: Проверка LPT порта

СообщениеДобавлено: 28 фев 2011, 23:11
sven
Извините не подскажите ? При проверке Lpt порта при манипуляциях с перемычкой можно это делать в один присест ,то есть не выключать комп и на работающем менять перемычки ? Не боится порт статики и т.д?