主題:高位地址線 共有35786人關注過本帖 |
---|
王 |
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]; } |
|
單帖管理 | 引用 | 回復 |