Re: 定址方式 .....求救
|
||||
---|---|---|---|---|
初級會員
|
可是如果我的sine表可能要跳著查的話那用這種方式也可以做到嗎?因為兩種不同的控制方式查表的方式不同,所以才會用ram來存取表。
發表於: 2004/5/26 8:46
|
|||
生活的本身,要具備承擔責任的勇氣,才能活的充實,活的有價值,活的更幸福。
生命的意義在於努力追求目標,在於面對失敗,在於活得積極。 人生中本來就會失去很多東西,但是最重要的 |
||||
|
Re: 定址方式 .....求救
|
||||
---|---|---|---|---|
版主
|
PIC18Fxxxx 的Access Bank 只有128-bytes可用,你將兩個 Sine_Table 塞給它當然會暴掉
記住!用UDATA_ACS宣告變數時最多只有128-bytes. 看起來你似乎是想使用RAM儲存Sine Table,如果是這樣這Sine Table因該是個常數值啊! 不知你為何要存在RAM中,而且你還需一段程式去設定Sine Table的初始值, 這樣式很累的!!!!!! 建議將Sine Table轉存到Program memory裡,利用PIC18Fxxxx特有的TBLRD*+ 指令讀取 Sine Table 至於Sine Table的建立,可以用虛指令"DB"來定義常數值。請參考如下之範例: movlw UPPER Sine_Table_L movwf TBLPTRU movlw HIGH Sine_Table_L movwf TBLPTRH movlw LOW Sine_Table_L movwf TBLPTRL ; TBLRD*+ ; Read Table data and save to TABLAT register, Table point + 1 return ; return back ; ; ;**************************************** ;**** Define Sine Table ;**************************************** ; Sine_Table_L db 0x1b,0x2b,0x30,0x45,0x56,0x78,0x8f db .186, .205, .220, 250, 255, db Sine_Table_H db 0, 0, 0, 0x00, db db
發表於: 2004/5/25 14:31
|
|||
|
Re: 定址方式 .....求救
|
||||
---|---|---|---|---|
管理員
|
UDATA_ACS中的ACS表示以下的變數要放在ACCESS RAM。至於什麼是ACCESS RAM,請看PIC18 的DATA SHEET。
該錯誤訊息的意思是說,您定義的變數太多了,塞不進ACCESS RAM。所以,如果有些變數可以不要放在 ACCESS RAM,就請另外開一區以UDATA做為開頭的程式段,來定義您的變數。至於UDATA_ACS及UDATA這類DIRECTIVE的完整正確用法,請看MPLINK或MPASM的說明資料。
發表於: 2004/5/20 9:48
|
|||
|
定址方式 .....求救
|
||||
---|---|---|---|---|
初級會員
|
小弟目前有個程式需要以下的變數,但是組繹後會出現的錯誤 有人可以幫幫小弟嗎 ?
Error - section '.udata_acs' can not fit the section. Section '.udata_acs' length=0x00000186 Errors : 1 UDATA_ACS AD_SPEED_REF_H RES 1 AD_SPEED_REF_L RES 1 AD_VOLTAGE_H RES 1 AD_VOLTAGE_L RES 1 AD_CURRENT_H RES 1 AD_CURRENT_L RES 1 AD_TEMP_H RES 1 AD_TEMP_L RES 1 ACCaLO RES 1 ACCaHI RES 1 ACCbLO RES 1 ACCbHI RES 1 ACCcLO RES 1 ACCcHI RES 1 ACCdLO RES 1 ACCdHI RES 1 temp res 1 ROTATE_BIT RES 1 ROTATE_REG_L1 RES 1 ROTATE_REG_H1 RES 1 ROTATE_REG_L2 RES 1 ROTATE_REG_H2 RES 1 SINA_TABLE_POINT_1 RES 1 SINA_TABLE_POINT_2 RES 1 SINE_TABLE_L RES 0xB4 SINE_TABLE_H RES 0xB4 TEMP RES 1
發表於: 2004/5/19 17:52
|
|||
生活的本身,要具備承擔責任的勇氣,才能活的充實,活的有價值,活的更幸福。
生命的意義在於努力追求目標,在於面對失敗,在於活得積極。 人生中本來就會失去很多東西,但是最重要的 |
||||
|