|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
好難!const運(yùn)行問題! |
| 作者:dong1021 欄目:DSP技術(shù) |
我下面寫的怎么不對呀! 怎樣寫呀! 請指導(dǎo)! extern unsigned int const_loadstart; extern unsigned int const_loadend; extern unsigned int const_runstart; void main (void) { memcpy(&const_runstart,&const_loadstart,&const_loadend-&const_loadstart); } -stack 160 -o ex.out -m ex.map /*Main.obj Define.obj*/ -l rts2xx.lib MEMORY { PAGE 0: VECS: origin = 0x0000, length 0x040 PAGE 0: PROG: origin = 0x0060, length 0x6000 PAGE 1: B0 : origin = 0x200, length 0x100 PAGE 1: B1 : origin = 0x300, length 0x100 PAGE 1: DATA: origin = 0x0860, length 0x700 } SECTIONS { .vectors : {} >VECS PAGE 0 /* 中斷向量表 */ .text : {} >PROG PAGE 0 /* 可執(zhí)行代碼和字符串 */ .cinit : {} >PROG PAGE 0 .data : {} >DATA PAGE 1 /* 初始化變量和常數(shù)表 */ .bss : {} >DATA PAGE 1 /* 保留全局變量和靜態(tài)變量空間 */ .const : load =PROG PAGE 0 /* 字符串和SWITCH表 */ run =DATA PAGE 1 { __const_run=._const_runstart; &_const_loadstart, &_const_loadend __const_length =.-__const_run; } .SWITCH : {} >PROG PAGE 0 /* 包含.SWITCH語句建立的表格 */ .stack : {} >DATA PAGE 1 /* 為系統(tǒng)堆棧分配存儲器 */ .SYSTEM : {} >DATA PAGE 1 /* 為動態(tài)存儲器函數(shù)分配存儲器空間 */ } |
| 2樓: | >>參與討論 |
| 作者: zgl7903 于 2006/10/31 10:27:00 發(fā)布:
試試看 //*.C file #pragma DATA_SECTION (x0,".buff1") const int x0[]={1,2,3,4,5,6}; //*.Cmd file .buff1 >PROG PAGE = 0 |
|
| 3樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 13:56:00 發(fā)布:
我試過了,也不行,不知道怎么辦了! |
|
| 4樓: | >>參與討論 |
| 作者: zgl7903 于 2006/10/31 14:28:00 發(fā)布:
到底不對在什么地方呢? |
|
| 5樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 14:36:00 發(fā)布:
下面應(yīng)用出現(xiàn)問題呀! #pragma DATA_SECTION (x0,".buff1") const int x0[]={1,2,3,4,5,6}; //*.Cmd file .buff1 >PROG PAGE = 0 下面的程序還是不能直接用這樣的指令呀! int k; k=x0[0]; |
|
| 6樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 14:37:00 發(fā)布:
怎樣才能把數(shù)組的值讀出來呀! |
|
| 7樓: | >>參與討論 |
| 作者: zgl7903 于 2006/10/31 15:25:00 發(fā)布:
把k=x0[0];放到main()函數(shù)中 在函數(shù)外的初始化數(shù)據(jù)會在進(jìn)入main函數(shù)之前被初始化,從cinit表中取數(shù)據(jù) |
|
| 8樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 15:39:00 發(fā)布:
是的呀!這樣做還是不行的,是不是用指針一類呀! |
|
| 9樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 15:43:00 發(fā)布:
這樣做也不對呀! void main (void) { int k; ******* k=x0[0]; lcp(); **** } void lcp(void) { int po; po=x0[1]; } k和po的值都不對呀!? |
|
| 10樓: | >>參與討論 |
| 作者: dong1021 于 2006/10/31 16:27:00 發(fā)布:
為什么要這樣呀啊! #pragma DATA_SECTION (x0,".buff1") const int x0[]={1,2,3,4,5,6}; //*.Cmd file PAGE 0: PROG: origin = 0x0060, length 0x6000 .buff1 >PROG PAGE = 0 上面的運(yùn)行不對呀!為什么呀! 要改成,下面才對呀!請分析呀! #pragma DATA_SECTION (x0,".buff1") const int x0[]={1,2,3,4,5,6}; //*.Cmd file PAGE 1: PROG: origin = 0x8060, length 0x6000 .buff1 >PROG PAGE = 1 |
|
| 11樓: | >>參與討論 |
| 作者: zgl7903 于 2006/10/31 16:42:00 發(fā)布:
origin=0xHHHH,length=0xHHHH 是依據(jù)硬件來的 |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |