|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
有幾個問題困繞多時,望高人賜教 |
| 作者:from25 欄目:ARM技術(shù) |
1._main到底應(yīng)該怎么來正確使用 啟動代碼中到底是用 b main還是 b _main? 我用了b _main后軟件仿真時不知道為什么總會跳到reset_vector地址去 2.設(shè)FLASH地址0X04000000,重映射前FALSH是0地址嗎, 那0X04000000地址是什么呢?也還是FLASH嗎? 我看的書上FLASH是0x04000000是啟動地址,這個地方的程序是: ROM_Start EQU 0x04000000 Instruct_2 EQU ROM_Start+4 ResetBase EQU 0x0b000000 //重映射控制器基地址 ClearResetMap EQU ResetBase + 0x20 //重映射控制器地址 ENTRY LDR PC,=Instruct_2 mov r0,#0 ldr r1,=ClearResetMap strb r0,[r1] ..... 我不懂第一句話有什么必要,完全可以沒有啊? 3.RW段的裝載地址和運行地址應(yīng)該是絕對不同的,看書說RW段的復(fù)制可以 是自己寫代碼,還可以用_main來實現(xiàn) 是不是用了_main,所有運行地址在RAM里的RW段都不用自己來編COPY程序 4.在某書上有一句"如果應(yīng)用程序中不包含函數(shù)main(), 而是使用自己定義的 啟動代碼,應(yīng)用程序仍然可以使用很多C運行時庫的功能.." 請問自己是不是有main()就不能使用"自己定義的啟動代碼",難道連向量設(shè)置都不需要了嗎?我覺得向量設(shè)置應(yīng)該是必須的 大家見笑了,希望哪位能詳細(xì)開化我這愚公 * - 本貼最后修改時間:2005-9-7 11:07:26 修改者:from25 |
| 2樓: | >>參與討論 |
| 作者: from25 于 2005/9/7 11:12:00 發(fā)布:
自己頂一下 |
|
| 3樓: | >>參與討論 |
| 作者: from25 于 2005/9/7 14:01:00 發(fā)布:
在線等待中 |
|
| 4樓: | >>參與討論 |
| 作者: from25 于 2005/9/8 14:03:00 發(fā)布:
自己回答一下第一個問題 自己回答一下第一個問題 原來一個C程序里有 main _main __main三種標(biāo)號 只有使用了第三個標(biāo)號__main才是正確的 真是喪氣啊,為什么搞出這三個來擾亂人呢 使用了b __main后,軟件仿真總算是正確了 但一到板上去,還沒運行到main()就會進入軟件中斷去 不知道是否和我的連接器設(shè)置有關(guān) 我的FLASH的硬件地址是bank0 我的SDRAM的硬件地址是BANK6 其他地方都沒有存儲器了(特別是BANK7是空的) 我在ADS里SIMPLE IMAGE設(shè)置 ro:0 rw 0X0C000000 其他問題等待中 請大家?guī)臀医獯鸢。?br> * - 本貼最后修改時間:2005-9-8 14:32:42 修改者:from25 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |