原创 Windows下对并口编程

2009-3-29 22:26 4045 7 8 分类: 测试测量

Windows下对并口编程

关键词并口    windows                                          


http://mubo814.bokee.com/inc/PortTalk.rar


在工程目录下拷进这两个文件:PortTalk.sys;PortTalk.h 。这两个文件已经放在附件里了。直接调用PortTalk.h里面的函数即可操作PC的任意地址,并口地址基址为0x378,以下是一个范例:


OpenPortTalk();  //打开地址操作


outportb(0x378,0xaa);  //向并口数据寄存器写0xaa;


inportb(0x379);  //读并口状态寄存器;


ClosePortTalk();  //关闭地址操作


我实验了一下,并口在ECP/EPP模式下不可以从外部数据线上读入数据,在BIOS里把并口模式改为EPP就可以了,让EPP读外部数据的操作方法如下:


EPP模式下控制口中有一个决定EPP数据口输入输出的位:第5位,把这一位写1则可以从外部读入数据,写0则EPP是输出数据的。程序如下:


//-----------------------读外部数据


    static CtrlWord;
    CtrlWord = inportb( 0x37A );
    CtrlWord |= 0x20;
    outportb(0x37A, CtrlWord);
    Edit1->Text = "0x" + IntToHex(inportb( 0x37C ),0);


//------------往外输出


    static i;
    static CtrlWord;
    CtrlWord = inportb( 0x37A );
    CtrlWord &= 0xDF;
    outportb(0x37A, CtrlWord);
    i = StrToInt( Edit4->Text );
    outportb(0x37C,i);


其中,EPP的数据口地址为0x37C,即基址0x378 + 4,我试了一下,其实用0x37C和0x378是一样的结果。

文章评论1条评论)

登录后参与讨论

tengjingshu_112148725 2009-3-30 09:19

不知是98下还是xp下? 记得你,曾经在labview小组发过USB CH372的labview程序,哈哈
相关推荐阅读
用户816647 2013-04-15 08:43
PIC16F877A I2C 24C02 24C01 模拟端口
  #include <16F877A.h> #device adc=8   #FUSES NOWDT                    //No Watch Do...
用户816647 2011-11-14 10:35
三菱FX系列PLC手册
工控下载 - 首页 http://down.ymmfa.com/?type=fx 资料名称及链接 所需积分 ...
用户816647 2011-06-25 11:25
六个元件取3V---50V
其中你想要多少电压,D3  D4  选用相应的稳压二极管就可以。...
用户816647 2011-06-17 17:11
成功开发EMC扫频仪
扫频范围  2G  ...
用户816647 2011-04-24 22:01
网友的 USB 开发相关资料
PIC USB 相关网站 主要是mcuee网友收集的。 http://forum.microchip.com/tm.aspx?m=123533 PIC USB related web sites 转贴...
用户816647 2011-04-22 10:05
关于 CHM 文件不能打开或打开后没有索引列表的解决方法
总结方法可以尝试 regsvr32 hhctrl.ocx regsvr32 itss.dll regsvr32 itircl.dll      //  这个很重要,是关于全文搜索的...
我要评论
1
7
关闭 站长推荐上一条 /2 下一条