Цифровые сигнальные процессоры Вопросы, связанные с применением цифровых сигнальных процессоров: программирование, отладочные средства, алгоритмы... |
28.06.2010, 00:31
|
|
Частый гость
Регистрация: 09.12.2006
Сообщений: 12
Сказал спасибо: 1
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
Сообщение от po4emu4ka
|
CODESG SEGMENT PARA 'Code'
ASSUME CS:CODESG,DS:CODESG,SS:CODESG,ES:CODESG
ORG 100H
BEGIN: JMP MAIN
MAIN PROC
mov dx, 378h
mov al, 1
out dx, al
MAIN ENDP
CODESG ENDS
END BEGIN
|
Ваш код будет работать и под WinXP, только нужно, чтобы был загружен специальный драйвер. Точно уже не помню, по-моему WinIo.sys (или DLPORTIO.sys ???). При этом как-то странно всё работает (сам проверял). Если драйвер загружен в памяти, то становится возможным напрямую обращаться к портам (минуя сам драйвер).
|
|
|
|
28.06.2010, 01:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 28.02.2010
Сообщений: 2,297
Сказал спасибо: 53
Сказали Спасибо 461 раз(а) в 392 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
я пользовал LPTWDMIO.sys.
PS там правда есть спорное утверждение
Цитата:
ct := (ct+ct+ct) shr 1; // *1.5, ибо одно чтение из порта -- это примерно 0.6 .. 1.2 мкс на большинстве машин, независимо от частоты пня и сист. шины.
У меня , точно не помню(давно было) - на P2-300 -около 2 мкс вроде выходило.(т.е задержки экспериментально пришлось подбирать)
Последний раз редактировалось OlegNZH; 28.06.2010 в 01:16.
|
|
|
|
28.06.2010, 02:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 28.05.2010
Сообщений: 1,118
Сказал спасибо: 150
Сказали Спасибо 604 раз(а) в 310 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
Цитата:
|
Ваш код будет работать и под WinXP, только нужно, чтобы был загружен специальный драйвер.
|
повтор уже сказанного таких драйверов сейчас много.
|
|
|
|
28.06.2010, 09:49
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2008
Адрес: Москва Щукино
Сообщений: 1,478
Сказал спасибо: 359
Сказали Спасибо 860 раз(а) в 361 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
WinAPI позволяет работать с любым портом, в том числе и LPT. Недостаток единственный: Виндовс имеет очередь процессов и если вам надо вынь да положь вывести байт в порт точно в заданное время, то скорее всего Виндовс ваши планы порушит и выведет байт тогда, когда будет удобно ему. Шифт может быть микроскопическим, но будет обязятельно.
Можно запустить и ассемблер, но при этом нужно заставить Виндовс забыть о том, что пользовательским программам запрещены прямые обращения к портам. Этот запрет связан не с особенностями Виндовс, это чисто "административный" запрет и его можно отменить.
Попробуйте http://www.pcports.ru/NTLoader.php
|
|
|
|
28.06.2010, 10:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 28.05.2010
Сообщений: 1,118
Сказал спасибо: 150
Сказали Спасибо 604 раз(а) в 310 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
по принципу...
|
|
|
|
28.06.2010, 10:39
|
|
Частый гость
Регистрация: 26.08.2008
Сообщений: 23
Сказал спасибо: 10
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
|
|
|
|
28.06.2010, 11:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.10.2009
Адрес: г. Алексин
Сообщений: 1,162
Сказал спасибо: 938
Сказали Спасибо 157 раз(а) в 92 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
|
|
|
|
28.06.2010, 13:38
|
|
Временная регистрация
Регистрация: 18.11.2008
Сообщений: 77
Сказал спасибо: 69
Сказали Спасибо 60 раз(а) в 21 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
С LPT портом я работал в Delphi с помощью функции API CreateFile и WriteFile
Но для того чтобы выдать один байт надо затем использовать функцию
FlushFileBuffers или FlushBuffers
|
|
|
|
28.06.2010, 15:38
|
|
Прохожий
Регистрация: 08.09.2009
Сообщений: 5
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
На wasm.ru лежала подборка статей по написанию "наследуемого" драйвера. Давно правда, но для XP это ещё актуально. Кстати по моему в одном из примеров автор там LPT портом и дёргал, а может это я сам пробовал, уже не помню. В общем всё довольно подробно расписано было. Удачи!
|
|
|
|
28.06.2010, 19:55
|
|
Временная регистрация
Регистрация: 20.12.2006
Сообщений: 61
Сказал спасибо: 30
Сказали Спасибо 38 раз(а) в 15 сообщении(ях)
|
Re: LPT XP... осторожно, ассемблер!
Господа, не надо спорить, каждый использует что хочет
Испоьзуя GIVEIOEX.SYS как уже говорилось выше можешь дёргать,
ногами , руками и чем получится, при длительном обращении к порту
даже система курит в сторонке и кажется по поведению, что это
не XP а старый добрый WIN98
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 11:10.
|
|