LPT порт в С++

Автор: Ev3658 Дата: 15.05.2008 02:23 Раз я уж перепёрся с Delphi на C++, кстати даже понравилось!
Вот только теперь вопросов ещё больше стало, в данный момент интересует одно дело!
Для работы с LPT и COM портом для Windows можно использовав функцию CreateFile. В Windows, как и в DOS остались имена файлов, которые давать нельзя типа: COM, LPT, CON, AUX
Чтоб прочитать и послать данные примитивным способом, достаточно вот этого примера:
void main()
{
HANDLE hLPT=CreateFile("LPT1",GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if (hLPT!=INVALID_HANDLE_VALUE)
{
cout << "LPT 1 открылся" << endl;
char buffer[25];
memset(buffer,0,sizeof(buffer));
strcpy(buffer,"Посылаем данные на LPT";-);
DWORD dw;
OVERLAPPED ov;
for (int x=0;x < 3;x++) WriteFile(hLPT,buffer,sizeof(buffer),&dw,&ov);
CloseHandle(hLPT);
}
else cout << "Ошибка LPT 1 порта" << endl;
}

Этой фишкой я пользовался ещё в Qbasic, кстати, если да, то можно использовать fstream для этого или надо создавать файл, а не читать и считывать сразу?

Нужен как-бы сказать бинарный режим чтоли, вообщем послать типа 91 (11011010) и получит в таком-же духе, точней я отсылаю переменную или даже символ 0-255 и получаю тоже его, если даже можно, то в двунаправленном потоке.
очень надо, наступает лето, а цветы комп ещё не поливает Улыбка
Да ещё жутко охото сделать это для среды Gnome или KDE аплетом + граф оболочка, обязательно хочу в Linux, Windows ещё успеет сорняки полить, а цветочки с ягодками на Unix ! Схемка простая, я много непридумывал, всё через LPT и российские микросхемы, полив через обычный бочёк с помпой на 12вольт (омыватель стёкл), ща достаю клапана, чтоб не все сразу поливать разом, датчики влажности и температуры почти доведены до конца, аналоговоцифровой преобразователь тоже накопал, всё просто. А вот блин программу немогу, даже С++ изучая для этого, купил умные книжки и безумно эксперементирую..

Если чего, то напишите с условием, что я ещё чайник в С++ и темболее в ASP Linux
Re: LPT порт в С++ 15.05.2008 11:45peter_ir Сейчас даже не знаю, есть ли в Linux высокоуровневый интерфейс для работы с параллельным портом,
как он есть, например, для последовательного.
В ASP11 Deluxe есть диск с документацией и после его установки можно найти
Documentation/LDP/HOWTO/IO-Port-Programming.html, там описание регистров и ссылки.
Также в kernel-docs или в исходных текстах ядра в Documentation/ есть parport.txt и
parport-lowlevel.txt, это работа на уровне ядра.
Re: LPT порт в С++ 16.05.2008 01:37Ev3658 Я английский знаю 0,001% А там всё на английском Грустный
Re: LPT порт в С++ 16.05.2008 01:55Bircoph Ну, простите, программист обязан знать английский хотя бы на
уровне понимания документации. Словариками пользуйтесь,
теорию просмотрите...
Re: LPT порт в С++ 16.05.2008 09:45peter_ir Также есть сайты с документацией и статьями по Linux на русском, слева есть пункт Документация,
далее On-line ресурсы. А вообще, как я представляю, параллельный порт - это устройство для работы
с принтером, т.е. если к нему присоединено что-то другое, оно должно уметь работать с его
сигналами, это не то, как COM-порты могут связываться двумя проводами.
RSS-материал