阅读:1461回复:8
各位老大,门外汉问些isa问题,满分相送!!
我想在dos下对一isa卡读写,实在是不懂啦!
1、不知道他的地址范围是多少阿? 2、用c如何读写??用outportb? 3、谁能说说dos下写此类程序的步骤是什么?最好能给个详细的例子哦 附上该卡的图片 http://murphey.3322.org/1.jpg http://murphey.3322.org/2.jpg |
|
沙发#
发布于:2004-08-03 08:25
用户可以使用得ISA卡得地址范围是:0x200-0x3FF内。
读写端口得函数你说得很对。 |
|
|
板凳#
发布于:2004-08-03 08:45
是不是地址需要根据isa卡的电路设计来确定??如果是,那是如何来确定的??
老大看看我发的图片,能不能知道我的这个卡用了那个地址?? 另外能说说dos下写此类程序的步骤是什么?最好能给个详细的例子 多谢啦~~ [编辑 - 8/3/04 by murphey] |
|
地板#
发布于:2004-08-03 09:49
一般来讲,0x3ff以下的IO地址ISA卡是都可以映射的,但是由于有些地址被系统自己用了,所以一般的卡映射的地址是0x100~0x360
你的这块卡上有8255,一般来讲8255的配置寄存器缺省状态是9b(全部为输入),有的8255是9b的反,所以你可以作一个循环,使用inportb函数将0x100~0x360地址范围的地址都读一遍,看看那个地址返回的是9b(或者是它的反),你的卡上有两个8255,应该有两个地址返回我说的值。你要是懂数字电路和单片机原理的话,用万用表也可以直接测出译码电路,从而获得地址。 |
|
|
地下室#
发布于:2004-08-03 10:07
一般来讲,0x3ff以下的IO地址ISA卡是都可以映射的,但是由于有些地址被系统自己用了,所以一般的卡映射的地址是0x100~0x360 我以前做过的项目,地址用到过0x390,都没问题的,并不一定非要0x360一下的! |
|
|
5楼#
发布于:2004-08-03 10:19
I/O地址是由138译出来的,具体图上看不清楚,你可以用万用表量一下,应该是很容易确定的。
|
|
6楼#
发布于:2004-08-03 14:35
用万用表怎么来量啊老大?!
I/O地址是由138译出来的,具体图上看不清楚,你可以用万用表量一下,应该是很容易确定的。 没信心了,问一下怎么给分啊? :( |
|
7楼#
发布于:2004-09-07 09:16
我也觉得万用表不好量
|
|
8楼#
发布于:2004-09-30 17:41
都是些中小规模的器件,观察一下就能看出来。用得着什么万用表。
|
|
|