想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
新會員
|
你好,我想請教一下,
我在燒錄16f877時,按照書本上的範例key上, 但在build all程式的時候,問題都出現在起始位址上, 如果想如範例上將起始位址設在0x00上, 是否得在LKR裡改呢? 那要改哪些數據呢? 謝謝
發表於: 2006/3/22 17:32
|
|||
|
Re: 想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
高級會員
|
0x00 是要預留給ICD2用
如果要用 應該是要改標頭檔吧
發表於: 2006/3/23 0:52
|
|||
|
Re: 想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
新會員
|
不好意思,請問標頭檔是指..
因為範例上的程式都是一開始為 org 0x00 nop 但是經由build all後,他會出現以下訊息: MPLINK 3.80, Linker Copyright (c) 2004 Microchip Technology Inc. Error - section '.org_0' can not fit the absolute section. Section '.org_0' start=0x00000000, length=0x00000014 Errors : 1 BUILD FAILED: Thu Mar 23 01:02:16 2006 =============================== 因此我猜測是起始位址的問題,請問前輩在剛開始接觸pic時,有碰過這樣的問題嗎
發表於: 2006/3/23 1:09
|
|||
|
Re: 想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
版主
|
vectors section 位址範圍太小了,改大一點看看:
CODEPAGE NAME=vectors START=0x0000 END=0x0001F PROTECTED CODEPAGE NAME=page0 START=0x00020 END=0x07FF
發表於: 2006/3/23 17:14
|
|||
|
Re: 想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
新會員
|
前輩,按照你的做法,已解決問題了,謝謝。
可以請教一下為何要改成這樣的數據嗎? 因為我沒有動過LKR,為何軟體的預設值會出現這樣的問題呢?
發表於: 2006/3/24 1:56
|
|||
|
Re: 想請教關於起始位址錯誤的問題
|
||||
---|---|---|---|---|
版主
|
0x0000~0x0004 是Protected區域,一般寫程式是只要放 GOTO xxxx 的指令就可以了。但大部分的設計師都會將中斷直接寫在 0x0004 的區間裡造成Linker記憶分配跨界的問題,所以將這段區亦放大可以涵蓋你的中斷程式大小就可以了。
發表於: 2006/3/26 11:38
|
|||
|