Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2013, 19:15   #1
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию Передача данных в LPT-порт не работает. Внутри.

Здравствуйте, вот очень короткая программа:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

//=============================================================================
function Inp32(PortAdr: word): byte;
stdcall;
external 'inpout32.dll';

function Out32(PortAdr: word; Data: byte): byte;
stdcall;
external 'inpout32.dll';
//=============================================================================

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject); //записать в порт
var
  Port: word;
  Data: Byte;
begin
  Data:= StrToInt(Edit1.Text);
  Port:= StrToInt(Edit2.Text);
  Out32(Port, Data);
  MessageDlg('Value: '+ IntToStr(Data), mtInformation, [mbOK], 0);
end;

procedure TForm1.Button2Click(Sender: TObject); //прочесть с порта
var
  Port: word;
  Data: Byte;
begin
  Port:= StrToInt(Edit3.Text);
  Data:= Inp32(Port);
  MessageDlg('Value: '+ IntToStr(Data), mtInformation, [mbOK], 0);
end;

end.
Почему на LPT-порт ничего не подается. Жму "Write", сообщение появляется, что данные отправлены, но в порту ничего нет.

Жму "Read" - показывает значение "255". LPT-тестер молчит, значит, в порту ничего нет.

Вот схема LPT-тестера:
Изображения
Тип файла: jpg LPT_Port_4 fg.JPG (30.3 Кб, 106 просмотров)
даешь высокое напряжение

Последний раз редактировалось Vova777; 08.12.2013 в 19:25.
Vova777 вне форума Ответить с цитированием
Старый 08.12.2013, 19:31   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,964
По умолчанию

Необходимо в BIOS настроить порт на работу в режиме EPP. Ознакомьтесь с этой статьёй.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 08.12.2013, 19:43   #3
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Необходимо в BIOS настроить порт на работу в режиме EPP
У меня LPT-порт не встроенный в материнку. Он на PCI-карте. Я пишу по адресу "888", в системе LPT-порт определен как LPT3. Может должен быть другой адрес?
даешь высокое напряжение

Последний раз редактировалось Vova777; 08.12.2013 в 20:01.
Vova777 вне форума Ответить с цитированием
Старый 08.12.2013, 20:16   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...так зайдите в диспетчер устройств и в свойствах на данном LPT посмотрите его адрес.

У обычного физического $3BC, а у вас виртуальный, отсюда не видно.

===================
...винда какая? 32/64 bit?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 08.12.2013 в 20:21.
raxp вне форума Ответить с цитированием
Старый 08.12.2013, 20:51   #5
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
винда какая? 32/64 bit?
Windows XP, 32 Бит.

Цитата:
Сообщение от raxp Посмотреть сообщение
отсюда не видно.
Я не понимаю, где смотреть.

На закладке "Общие" написано:
Размещение - "Размещение 33".

На закладке "Ресурсы" написано:
Диапазон ввода/вывода (I/O) - D010-D017
IRQ - 18


Вот, посмотрите:
Изображения
Тип файла: jpg Безымянный.JPG (58.7 Кб, 58 просмотров)
даешь высокое напряжение

Последний раз редактировалось Vova777; 08.12.2013 в 20:55.
Vova777 вне форума Ответить с цитированием
Старый 09.12.2013, 00:13   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...попробуйте сие http://lexwebmaster.narod.ru/lpt_scaner.html
или HKEY_LOCAL_MACHINE\HARDWARE\DEVICEM AP\PARALLEL PORTS
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 09.12.2013, 08:30   #7
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
...попробуйте сие http://lexwebmaster.narod.ru/lpt_scaner.html
или HKEY_LOCAL_MACHINE\HARDWARE\DEVICEM AP\PARALLEL PORTS
Спасибо. Проблема устранена. Ошибка была в адресе LPT-порта. Я писал и читал по адресу "888", а у меня в системе адрес "53264". Исправил - заработало.
даешь высокое напряжение
Vova777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача данных через com-порт на Паскале с ассемблерными вставками sunny_alice Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 08.09.2011 00:04
Передача данных через COM порт avd Общие вопросы Delphi 2 01.07.2011 08:28
передача данных в COM порт stepka Общие вопросы Delphi 9 06.06.2011 11:10
Передача данных через ИК порт DrCluster Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 29.04.2011 20:10
Получение данных идущих на LPT-порт принтера Zo0M Компьютерное железо 15 13.12.2010 06:58