主题:高位地址线

  共有33189人关注过本帖    
1楼


高位地址线  发帖心情 Post By:2006-11-27 19:35:00   [只看该作者]

1、 ETR232i中的高位地址线SA5-SA12不是从CN1和CN2中引出,而是从中间引出,加了彩色控制器ETA906后,是不是我一定要把几个地址线引出,因为ISA—2插座中用到了这个地址线。
   2、加了彩色控制器ETA906后,我还可以用CS0作为存储器片选吗? 因为我要4k的外围的DRAM作为高速AD与etr232缓存用。
   3、CS0#作为存储器片选,先设置SetCS0AsMem(0,8,2 )
 再用inputb(add0-add12)读入每一个数据,每一个input命令 CS0 就有效一次,是这样的吗?
        高位地址线的使用我会向先你们声明的。
 谢谢!

  单帖管理 | 引用 | 回复 回到顶部
yl
2楼


  发帖心情 Post By:2006-11-28 9:23:00   [只看该作者]

要用ETA906的话,必须引出高位地址线

  单帖管理 | 引用 | 回复 回到顶部
x10
3楼


  发帖心情 Post By:2006-11-28 9:35:00   [只看该作者]

(1)如果用ETA906,就一定需要把把SA5-SA12从ETR232i板下引出(我们有专门带引出针的模块)。这时CS0#作为存储器片选,所以需调用SetCS0AsMem()对CS0#进行设置,只需要设置一次即可。
(2)如果此时还需要扩展存储器外设,可以考虑用一个2选1译码,从CS0#译码出CS00#和CS01#,其中CS00#用做ETA906,CS01#用做你的外设片选,但注意上电时的译码一定是CS00#,译码选择位可以是一位IO输出。
(3)在C中操作存储器的方法:
unsigned char* pDat;

pDat = (unsigned char*)MK_FP( 0xc000, 0 );

这时指针pDat指向一个8KB的存储器。

  单帖管理 | 引用 | 回复 回到顶部
wang
4楼


  发帖心情 Post By:2006-11-28 11:31:00   [只看该作者]

你好!我还有几个问题要请教。
   1、MK_FP 这是代表什么意思?这条命令麻烦你帮我解释一下。
   2、是不是每次读取一个存储器的数据,同样会产生一个CS0#负
      脉冲。因为需要CS0参加存储器的片选输出。
   3、读取数据这样可以吗?不好意思,指针用得较少。
       unsigned char a[1024*8];
   for( i=0;i<1024*8;i++)
     {  *(a+i)=*(pDat+i); }

  单帖管理 | 引用 | 回复 回到顶部
x10
5楼


  发帖心情 Post By:2006-11-28 14:42:00   [只看该作者]

(1)MK_FP()是C的标准宏,在BC IDE中,把光标放在需要了解的字符下边,按CTRL-F1就可得到在线帮助。
(2)是的。
(3)建议写成数组形式:
for( i=0; i<0x2000; i++ )
{
     a[i] = pDat[i];
}

  单帖管理 | 引用 | 回复 回到顶部

返回首页

高位地址线

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: