|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
[求助]讓在剩余的程序地址中的內(nèi)容都轉(zhuǎn)到程序頂端0000... |
| 作者:maolv301 欄目:單片機(jī) |
| 2樓: | >>參與討論 |
| 作者: ee168 于 2006/3/6 16:41:00 發(fā)布:
ORG 0000H START: . . . NOP NOP NOP NOP JMP START |
|
| 3樓: | >>參與討論 |
| 作者: maolv301 于 2006/3/7 9:32:00 發(fā)布:
就只要在程序最后加上JMP START就可以了? |
|
| 4樓: | >>參與討論 |
| 作者: ynkmsj 于 2006/3/7 12:47:00 發(fā)布:
MOV A,#00H PUSH ACC PUSH ACC RETI 無論在主程序還是中斷程序、子程序里,也就是程序的任何地方,只要執(zhí)行以上語句,肯定程序從0000開始。不過你說的“可以讓在剩余的程序地址中的內(nèi)容都轉(zhuǎn)到程序頂端0000”不太理解。 |
|
| 5樓: | >>參與討論 |
| 作者: maolv301 于 2006/3/7 14:00:00 發(fā)布:
比如說89C51有8K的ROM,但我只用了4K,我想在其余剩下的空地址中都寫入轉(zhuǎn)到程序最初開始的地方,這就是相當(dāng)于看門狗的作用,這樣做就可以防止看門狗壞掉時(shí),程序也不至于跑飛 |
|
| 6樓: | >>參與討論 |
| 作者: aibxyz 于 2006/3/7 14:50:00 發(fā)布:
查一下NOP指令對(duì)應(yīng)的字節(jié) 在燒寫芯片時(shí),用該字節(jié)填充剩余空間 |
|
| 7樓: | >>參與討論 |
| 作者: SupermanTm 于 2006/3/7 17:27:00 發(fā)布:
寫一個(gè)宏: AUTOFILL MACRO ROMSIZE REPT 7280 IF $ < ROMSIZE - 4 LJMP 0000H ELSE EXITM ENDIF ENDM ENDM 在程序結(jié)尾的地方寫上: AUTOFILL 8192 |
|
| 8樓: | >>參與討論 |
| 作者: maolv301 于 2006/3/7 21:29:00 發(fā)布:
樓上兩位大蝦說的我都不是很明白,也不會(huì)怎么操作 我加了你們的QQ 我的阿凡提的驢 能說的具體些嗎? 在燒寫芯片時(shí),怎么用該字節(jié)填充剩余空間?而且NOP不是空指令嗎?沒什么用吧 宏我就更沒用過了。。哎,慚愧 |
|
| 9樓: | >>參與討論 |
| 作者: aibxyz 于 2006/3/9 12:57:00 發(fā)布:
NOP指令可以讓程序一直執(zhí)行到頂點(diǎn),然后,自然又回到0000H了 在抗干擾方面,NOP的用處很大,還可以在指令間插入,增加程序跑飛后的恢復(fù)能力(不過這個(gè)只能在用匯編編寫時(shí)體現(xiàn)) |
|
| 10樓: | >>參與討論 | |
作者: maolv301 于 2006/3/9 20:17:00 發(fā)布:
我不會(huì)查NOP對(duì)應(yīng)字節(jié),嘿嘿 更是不清楚在燒片子時(shí)怎么用這個(gè)字節(jié)填充剩余空間?可以說的具體點(diǎn)嗎? 拜托了,我才工作,對(duì)實(shí)際應(yīng)用方面懂的太少,呵呵 |
||
| 11樓: | >>參與討論 |
| 作者: tiger001 于 2006/3/9 22:22:00 發(fā)布:
你用的是那一家的芯片? 一種情況是 沒有用到的ROM地址,IC的燒錄器會(huì)自動(dòng)燒錄成為00情況。 你只要在最后設(shè)定為JMP OOH 就好了 ORG FFFH jmp start |
|
| 12樓: | >>參與討論 |
| 作者: maolv301 于 2006/3/10 9:54:00 發(fā)布:
我用的是AT89C51 ,只需要在程序最后加上ORG FFFH jmp start 就可以了嗎? |
|
| 13樓: | >>參與討論 | |
作者: 慕容帝 于 2006/3/10 10:43:00 發(fā)布:
我理解的意思就是在燒寫芯片的時(shí)候用 00h填充芯片剩余空間就可以了。這樣程序跑飛的時(shí)候會(huì)執(zhí)行nop指令到結(jié)束,然后就回到0000h位置。這樣程序就回重新按照你的思路執(zhí)行了。 |
||
|
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 www.hbjingang.com 浙ICP證030469號(hào) |