请问在DELPHI中如何实现C语言中的inport()函数,从硬件地址中读取数据?急啊!(100分)

  • 主题发起人 主题发起人 zhangzaimin
  • 开始时间 开始时间
Z

zhangzaimin

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大哥,请敢快一点啊,等着用呢!最好是有原代码的啊,先谢谢了!
 
procedure outport(port,value:word);assembler;
asm
mov ax,value
mov dx,port
out dx,ax
end;
function inport(port:word):word;assembler;
asm
mov dx,port
in ax,dx
end;
但读与写之间应该用Sleep(毫秒)适当延时一下。
 
procedure outportb(addr : Word; value : Byte);
asm
mov dx, addr
mov al, value
out dx, al
end;

function inportb(addr : Word) : Byte;
asm
mov dx, addr
in al, dx
mov result, al
end;
 
楼上的方法只能在Win 9x/Me下用,而且是M$不提倡使用的。
完美解决方法是用TVicHW32,可支持各种编导语言,各种OS。

v4.0国内下载: http://www.skycn.com/down1.php?id=4739
or http://download.pchome.net/php/download2.php?sid=9017&url=/development/delphi/tvichw40.zip&svr=6
v5.0国外下载: http://delphi.icm.edu.pl/ftp/d20share/tvichw50.zip
or http://www.torry.net/vcl/system/portaccess/vichw32.zip

[blue]在Windows下让你自由操纵并,串口,中断,内存的开发包, 对在Windows下做测试设备极有用[/blue]

V4.0的破解详见 http://www.delphibbs.com/delphibbs/dispq.asp?lid=562671

 
后退
顶部