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

Работа с LPT портом

Добавлено: 2011-03-29 14:08:09
Darkwolf
День добрый!
Подскажите способ работы с LPT портом под виндой. Юзаю компилятор MinGW.
В инете нарыл вот такое решение:

Код: Выделить всё

#include <stdio.h>
#include <unistd.h>
#include <io.h>

#define base 0x278
#define time 100000

int main(){
  int x = 0x32;
  printf("идет импульс в парралельный порт !\n");
  if (ioperm(base,3,1))
  printf("Couldn't get port at %x\n", base), exit(1);
  if (ioperm(base, 3, 1)) {perror("ioperm"); exit(1);}
  while(1){
    outb(x, base);
    usleep(time);
    outb(0, base);
    usleep(time);
  }
}
exit(0);
Но это, как я понял чисто никсовое, т.к. библиотека io.h, что идёт с виндовым MinGW не содержит функций ioperm и outb.
Если где-то ляпнул глупость не серчайте, с Сями знакомлюсь не давно и в основном эпизодически :smile:
Да, чуть не забыл сказать, что мне нужно не просто передать байт в порт, а выставить конкретные биты на нужных мне пинах разъёма.

Re: Работа с LPT портом

Добавлено: 2011-03-29 15:02:09
Гость
везде одна глупость
юзайте гугл
https://encrypted.google.com/search?hl= ... =&aql=&oq=

Re: Работа с LPT портом

Добавлено: 2011-03-29 19:39:19
Darkwolf
Гость писал(а):везде одна глупость
Не понял, обоснуй?! :evil:

Re: Работа с LPT портом

Добавлено: 2011-03-30 15:09:51
Dambo

Re: Работа с LPT портом

Добавлено: 2011-03-30 15:47:42
Darkwolf
Значит всё же через CreateFile. Думаю просто как на линух потом будет портироваться моя софтинка, если понадобится.
И ещё вопрос. По той ссылке в примере используются библиотеки stdafx.h и iostream.h, их у меня не находит компилятор. Они идут в составе чего-то, или их можно отдельно подложить?

Re: Работа с LPT портом

Добавлено: 2011-03-30 16:35:30
Dambo
Значит всё же через CreateFile. Думаю просто как на линух потом будет портироваться моя софтинка, если понадобится.
Воспользуетесь posix функциями или любыми другими.
И ещё вопрос. По той ссылке в примере используются библиотеки stdafx.h и iostream.h, их у меня не находит компилятор. Они идут в составе чего-то, или их можно отдельно подложить?
stdafx.h - автор использовал скорее всего 2005 студию, это старая хрень не нужная :oops:
iostream.h - std библиотека для вывода и ввода
Вы их можете не использовать, самое главное в той статье для вас что в винде работа с портами используется как с файлами и надо только подобрать правильное имя файла...

Re: Работа с LPT портом

Добавлено: 2011-03-30 16:38:39
Darkwolf
Спасибо. Пока всё понятно.

Re: Работа с LPT портом

Добавлено: 2011-03-30 16:38:48
hizel
stdafx.h из
http://firststeps.ru/mfc/winapi/r.php?12