Вниз
Скачать: CL | DM;

COM - прт   Найти похожие ветки 

← →
BJValentine   (2002-01-15 10:48) [0]

В Делфях нужно написать приложение, которое работает с COM - портами на низком уровне. Ассемблерные вставки - не вопрос, знакомая тема, но как мне обратиться к ячейке по адресу 0040:0000h. В ДОСе это было понятно сегмент:смещение, а как обстоят дела с Windows? Помогите подсказочкой PLEASE...


← →
Vitaly ©   (2002-01-15 11:31) [1]

1. Забудь про 0040:0000.
2. Windows API (Help).
2.1. CreateFile, ReadFile, WriteFile, CloseHandle.
2.2. Communication Functions.
2.3. Overlapped.
3. Threads.

Удачи.


← →
Vitaly ©   (2002-01-15 11:35) [2]

+ поиск по сайту.
Информации и примеров (как и вопросов) - масса.


← →
BJValentine   (2002-01-15 12:06) [3]

Хорошо, бог с ним COM - портом, а если разрабатывать свои нестандартные устройства для PCI портов и т. п., то там наверняка надо будет обращаться к реальным адресам. Как это можно сделать в Windows.


← →
Digitman ©   (2002-01-15 14:15) [4]

Ты что-нибудь знаешь о кольцах защиты CPU i80x86 ?


← →
BJValentine   (2002-01-15 15:28) [5]

Нет, не знаю. А что это, в двух словах?


← →
Polevi ©   (2002-01-15 16:24) [6]

В двух словах не получится :)
Почитай про 80386 Protected Mode


← →
Digitman ©   (2002-01-15 16:34) [7]

В двух словах :
Все приложения в Win32 выполняются в 3-м кольце защиты процессора, не позволяющем произвольное манипулирование портами и ячейками физ.памяти. Арбитраж доступа к портам возложен на ОС, выполняющейся в 0-м, наиболее привелегированном кольце защиты. И ОС не позволит несколким приложениям одновременно (Win32-то - МНОГОЗАДАЧНАЯ в отличие от DOS !!) творить с портами одновременно все, что им заблагорассудится. Ну ты сам рассуди : запустил ты косой десяток экз-ров своего приложения, одно тычет в порт одно значение, другое - другое, третье что-то там пытается читать из порта ... И все это - одновременно ? такое -невозможно !!!


← →
Anatoly Podgoretsky ©   (2002-01-15 20:09) [8]

Бери с сайта микро$офт DDK и осваивай его


← →
BJValentine   (2002-01-15 21:49) [9]

А что такое DDK и с чем его едят?


← →
andersen   (2002-01-15 21:56) [10]

Если неслышал что такое DDK, то лучше на милкософт и не ходить.
Лучше поискать готовые компоненты для работы с аппаратурой. Тем более для COM порта их много.


← →
Adder ©   (2002-01-16 08:35) [11]

DDK - Driver Development Kit


← →
pasha676   (2002-01-16 12:34) [12]

Хм. Все это интересно, но если честно, то под Win95 серии я и напрямую в порты писал/читал (ассемблерные вставки в Дельфи). И сейчас в LPT передаю/принимаю на ассемблере. Возможно, что с PCI ситуевина меняется и под WinNT серией то же, но в 95-98 напрямую обращался к таймеру, к com и к LPT без проблем


← →
Донской   (2002-01-16 13:57) [13]

Если на низком уровне....
Попробуйте полностью приложение написать на ассемблере.
а из дельфей вызывать его, а после выполнения снова закрывать.


← →
Донской   (2002-01-16 13:58) [14]

Кстати, ассемблер предусматривает использование API-функций


← →
TonnyS ©   (2002-01-16 17:31) [15]

я писал с помощью ASM-вставок напрямую в COM-порты, но это работает только под вин95/98, а под NT/2k - см. Digitman © (15.01.02 14:15)
поэтому рекомендуется писать через функции винды.


← →
a_k_v   (2002-01-18 09:11) [16]

В NuMega Driver Studio есть вызарды позволяющие быстро создать
простенький драйвер для доступа к ячейкам памяти или портам
ввода вывода,
Если вас совсем ломает что-то делать, то используйте
отечестывенную библиотеку TvicHW которая позволяет работать с портами, памятью, прерываниями, выполнять код в 0 кольце защиты
и т.д.
доступна щароварная версия библиотеки (вроде без особых ограничений) только периодичеси материться о том чтобы ее купили
цена копеечная менее 100$






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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.009 c
3-32675
grabovsky
2002-03-20 16:31
2002.04.11
событие двойного щелчка


3-32624
Lord Vader
2002-03-19 08:35
2002.04.11
TTable:добавление колонок


3-32678
pusrg
2002-03-20 18:01
2002.04.11
Повреждение индексов в таблицах Paradox.


1-32781
Rooman
2002-03-23 17:54
2002.04.11
Отсылка сообщения через зад:)


3-32626
skywalker
2002-03-12 11:15
2002.04.11
Куча вопросов по Oracle




   Наверх