關於單晶片換頁問題 |
答題得分者是:㊣
|
addn
高階會員 發表:64 回覆:221 積分:202 註冊:2005-03-21 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
它一定會有換頁的指令支援.以DSP為例,它有一個DP暫存器,紀錄現在的記憶體
頁面.當我們要動到非現在DP暫存器所紀錄的記憶體頁面時,便要改變DP暫存器
之值.DSP便提供了LDP的指令,以供改變記憶體的頁面.當我們要動到第2頁的記
憶體時,只須先下LDP #2的指令便可.
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
addn
高階會員 發表:64 回覆:221 積分:202 註冊:2005-03-21 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
暗黑破壞神
版主 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
通常須要換頁的都會有記憶體配置檔.告訴你多少到多少在那一頁.而寫程式也可以事先規劃你的記憶體,這樣一看檔就知道在那一頁了. P.S:請問你是用那一顆MCU有這個問題?它的datasheet應該會有相關說明才對 addn兄:Sorry,在回你的問題時不小心按到修改.發現時已弄不回來,抱歉!
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
addn
高階會員 發表:64 回覆:221 積分:202 註冊:2005-03-21 發送簡訊給我 |
引言: 通常須要換頁的都會有記憶體配置檔.告訴你多少到多少在那一頁.而寫程式也可以事先規劃你的記憶體,這樣一看檔就知道在那一頁了. P.S:請問你是用那一顆MCU有這個問題?它的datasheet應該會有相關說明才對 addn兄:Sorry,在回你的問題時不小心按到修改.發現時已弄不回來,抱歉! >>< face="Verdana, Arial, Helvetica"> 沒關西啦 因為我之前只用過8051, 而最近在研究義隆的EM78567,它會有換頁的問題 我看書上有介紹到由第一頁JMP,CALL到第二頁 的方法,但沒有講到程式大於一頁時,程式要如何延伸 到第二頁 至於 記憶體配置檔 ,由於我沒用過,還是不懂, 可以再詳細介紹一下嗎 謝謝 |
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
㊣
版主 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
而有記憶體配置的,以DSP為例.在程式中會連結記憶體配置檔.其內容如下所示:(礙於篇幅,只舉一些做代表)
;--------------------------------------------------------------------------- ; C2xx core registers (LDP #0000h, 0000h~007Fh) ;--------------------------------------------------------------------------- IMR .set 0004h ; Int Mask Register GREG .set 0005h ; Global memory allocation reg IFR .set 0006h ; Int Flag Register ;--------------------------------------------------------------------------- ; System Module Registers (LDP #00E0h, 7000h~707Fh) ;--------------------------------------------------------------------------- SYSCR .set 07018h ;System Module Control Register SYSSR .set 0701Ah ;System Module Status Register DIN .set 0701Ch ;Device Identification Register SYSIVR .set 0701Eh ;System Interrupt Vector Register XINT1_CNTL .set 07070h ;Int1 (type A) Control reg NMI_CNTL .set 07072h ;Non maskable Int (type A) XINT2_CNTL .set 07074h ;Int2 (type C) Control reg ;--------------------------------------------------------------------------- ; Event Manager (EV) - EV Base Address=7400h (LDP #00E8h, 7400h~747Fh) ;--------------------------------------------------------------------------- EV_BASE .set 7400h ; Event Manager Base Address GPTCON .set 00h EV_BASE ; General Timer Controls T1CNT .set 01h EV_BASE ; T1 Counter Register T1CMP .set 02h EV_BASE ; T1 Compare Register T1PER .set 03h EV_BASE ; T1 Period Register T1CON .set 04h EV_BASE ; T1 Control Register T2CNT .set 05h EV_BASE ; T2 Counter Register ;--------------------------------------------------------------------------- ; Digital I/O (LDP #01FFh, FF80h~FFFFh) ;--------------------------------------------------------------------------- WSGR .set 0FFFFh ;Wait State Generator RegisterDSP的換頁指令叫LDP,而其配置是128個為1頁.因此0000h~007Fh在page0,7000h~707Fh在page224(即E0h).以此類推.因此一看,算一下就知道在第幾頁.當下一步要變換的位址與現在位址的page不符就必須變換page.
------
------------------------------------------------------------------------- 走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!? |
addn
高階會員 發表:64 回覆:221 積分:202 註冊:2005-03-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |