Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.06.17;
Скачать: [xml.tar.bz2];

Вниз

LPT   Найти похожие ветки 

 
DenKop   (2002-03-15 16:28) [0]

Можно ли за один такт послать в LPT порт число большее чем 255. Если можно то как?Заранее благодарен.


 
digitman   (2002-03-15 17:32) [1]

Нет, нельзя


 
Shaman_Naydak   (2002-03-15 17:37) [2]

За один такт чего? Такт - понятие растяжимое :)
>> digitman
Ну почему сразу нельзя? Кроме 8 битов данных можно использовать дай бог памяти еще 5 битов управления под те же цели =>
2^13-1


 
digitman   (2002-03-15 17:46) [3]

>Shaman_Naydak
Речь-то все же, imho, идет о шине данных порта, а она 8-битная.
Ты вот лучше скажи автору, что не "такт" - понятие растяжимое, а "число")..

под тактом, вероятно, все же имелось ввиду
out LPT_port_addr, al (или outsb - не суть как важно)

а вот число ... можно ведь, в принципе, байтом кодировать и FP-число (в некоем нестандартном формате, похожем на IEEE-формат) - лишь бы периферия "понимала" его, этот формат))


 
DenKop   (2002-03-15 19:44) [4]

digitman прав.Я не совсем корректно выразился.Есть 2 варианта решения проблемы:
1)передавать число за два подхода,т.е. сначала передаётся МЗР, а потом СЗР;
2)преобразовывать число в двоично-десятичную систему и передавать каждый разряд поотдельности, т.е. 567=0101+0110+0111;
Но всё это сильно усложняет схему поключаемую к порту.Расскажу поподробнее. Есть устройство (собранное мной) которое принимает числа из LPT порта. С недавнего времени появилась нужда посылать числа более 255. Это устройство индикации на люминисцентных индикаторах, которое показывает, грубо говоря, число полученное из LPT. Повысить разрядность индикатора не составило труда, а послать такое число через порт не получается.
>Shaman_Naydak
Дополнительных выходов существует ещё 4, но возникает другой вопрос как к ним обратиться.


 
МИФИст   (2002-03-15 21:25) [5]

А в чём сложность 4 бита, которыми можно управлять находятся в регистре управление: адрес BaseAddress($378)+2 =($37A),
назначение битов регистра управления:
CR[7:6] - зарезервированы,
CR5 - "1" - ввод, "0" - вывод
CR4 - сигнал запроса прерываний (1)
CR3 - вот эти
CR2 - четыре
CR1 - и можно дополнительно
CR0 - использовать


 
Anatoly Podgoretsky   (2002-03-16 11:42) [6]

Автору надо рассказать, что такое число


 
SerVS - S   (2002-03-18 15:53) [7]

Удалено модератором


 
DenKop   (2002-03-18 17:16) [8]

to МИФИст > Я совсем забыл, что кроме базового адреса существуют ещё 2 (не помню как называются). Спасибо за подсказку.
to Anatoly Podgoretsky > Не совсем понял, к чему это было сказано??


 
Digitman   (2002-03-18 18:16) [9]

>DenKop

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


 
DenKop   (2002-03-19 03:04) [10]

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


 
Anatoly Podgoretsky   (2002-03-19 22:39) [11]

DenKop © (18.03.02 17:16)
А вот это

"Можно ли за один такт послать в LPT порт число большее чем 255."

LPT это байтовое устройство и числами не работает, поэтому есть подозрение, что ты, что то путаешь.


 
DenKop   (2002-03-20 00:31) [12]

Ах вот это к чему! Я всё же не терял надежды, что может есть какой либо изворот для обхода этой проблемы и вот я его нашёл, т.е. использовать дополнительные линии для увеличения разрядности. А различие между байтом числом мне давно известны, хотя о числе мало, что можно сказать, т.к. это понятие очень относительное.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2002.06.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.007 c
1-55057
Milg
2002-06-05 14:53
2002.06.17
Как узнать высоту Task Bar’а?


6-55235
Tom
2002-04-05 13:26
2002.06.17
Как установить длину буфера? (WNetGetUniversalName)


3-54978
friend
2002-05-17 12:12
2002.06.17
current_date


6-55243
Fredericco
2002-04-08 14:08
2002.06.17
Я использую Сокеты. Вот вопрос следующий как не дать клиенту соед


7-55336
SABBATH
2002-01-29 21:23
2002.06.17
Работа с LPT .....





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский