| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Порт ввода\вывода параллельного порта |
| Автор: out51d3r 27.2.2008, 23:43 | ||||
| Всем добрый вечер!!! И так, ближе к делу. Решил написать программу на Си++, которая будет передавать различные данные на параллельный порт. Короче, измерительный прибор подключается к lpt1 (один контакт идет ко воторому контакту порта (DATA 0), второй контакт - общий). На ОС Linux, когда я вводил команду outb 0x0378 0, на приборе высвечивалось 0.08 вольт. Если outb 0x0378 255 (то есть, все единицы), то на всех контактах было 4.6 вольт. Я как написать типа такго, но только на сях. И не 16-битную, а 32-х разрядную программу? Юзаю Visual C++ 2005 Express Edition и Visual C++.NET 2003 AE. Пробывал типа такого:
Программа зависает... Пробывал еще так:
Так программа выдает ошибку... Помогите пожалуйста. Так как модуль iostream, практически тоже самое, что и stdio, только ввиде классов, можно ли использовать библиотеку iostream для этой цели? (я си++ только начинаю изучать) Заранее спасибо! |
| Автор: JackYF 28.2.2008, 01:21 |
| out51d3r, твои программы не имеют прямой доступ к портам, тебе нужен kernel-mode драйвер для твоей ОС. |
| Автор: out51d3r 28.2.2008, 01:41 |
| Я это пробывал на windows (в смысле, последние 2 варианта). А как хотябы примерно можно? |
| Автор: bsa 28.2.2008, 13:13 |
| А разве нет возможности работать с LPT через имеющийся драйвер в ОС? |
| Автор: Greeen 28.2.2008, 13:35 |
| http://www.pcports.ru/articles/2.php |
| Автор: xvr 28.2.2008, 15:14 | ||
Есть, только к LPT должен быть подключен принтер, а не своя левая железка - иначе получим зависон |