久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3251|回復(fù): 9
打印 上一主題 下一主題
收起左側(cè)

關(guān)于stm32的0x0800 0000這個地址開始存儲的數(shù)據(jù)的疑問

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:585428 發(fā)表于 2022-2-15 10:50 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
不知道應(yīng)該怎么準確描述我遇到的問題。
先講一下我的使用場景,我使用stm32的bootloader進行程序跳轉(zhuǎn)到0x0802 0000這個位置,0x0802 0000是主程序的起始地址。
我使用ucos-II系統(tǒng)編譯生成bin文件燒錄,正常運行,但是通過memory查看0x0802 0000這個地址存儲的數(shù)據(jù)第七個字節(jié)是0x04,而標(biāo)準庫和ucos-III生成的是0x02,也就是說我UCOS-II一開始存儲的是0x0804xxxx這個,之后是0x0802xxxx,和我設(shè)置的主程序起始地址一致了。
標(biāo)準庫和ucos-III一開始存儲的就是0x0802xxxx。
大家看截圖輔助理解

  1. //#define FLASH_APP1_ADDR  0x08020000
  2. if(((*(vu32*)(FLASH_APP1_ADDR+4))&0xFFFF0000)==(FLASH_APP1_ADDR & 0xFFFF0000))//判斷是否為0X08XXXXXX.
  3.         {               
  4.                 __disable_irq();
  5.                 Iap_Load_App(FLASH_APP1_ADDR);//執(zhí)行FLASH APP代碼
  6.         }
復(fù)制代碼

2.JPG (62.74 KB, 下載次數(shù): 50)

2.JPG
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:585428 發(fā)表于 2022-2-15 11:08 | 只看該作者
在map文件中查了一下,這個地址對應(yīng)的是Reset_Handler,為什么不同系統(tǒng)生成Reset_Handler地址會不一樣

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

板凳
ID:879809 發(fā)表于 2022-2-15 18:37 | 只看該作者
0x20000對應(yīng)128k,如果你的代碼有這么大不太正常了嗎?
回復(fù)

使用道具 舉報

地板
ID:313048 發(fā)表于 2022-2-16 09:44 | 只看該作者
一個bootloader能有128K的大小?當(dāng)然你可以跳轉(zhuǎn)到這兒運行也沒我問題,如果你的flash足夠大的話。  還有你說的Reset_Handler地址不一樣,這是不可能的,啟動文件里面可以看到你的復(fù)位地址在哪兒,跳轉(zhuǎn)過去之后只是加上偏移就可以了。還有你看的是0x08020000的數(shù)據(jù),是你主程序開始的內(nèi)容,跟你用什么庫生成是沒關(guān)系的吧,你改下代碼然后哦重新編譯一下,估計也會有所不一樣。同時你可以直接查看BIN文件的數(shù)據(jù),并不需要去仿真燒錄到單片機里面查看。
回復(fù)

使用道具 舉報

5#
ID:879809 發(fā)表于 2022-2-16 11:53 | 只看該作者
AUG 發(fā)表于 2022-2-16 09:44
一個bootloader能有128K的大小?當(dāng)然你可以跳轉(zhuǎn)到這兒運行也沒我問題,如果你的flash足夠大的話。  還有你 ...

bootloader設(shè)定128k那是家里有礦隨便浪。其實樓主的問題是app起始地址0x08020000,而Reset_Handler地址0x0804xxxx,這之間的128k是怎么冒出來的?
回復(fù)

使用道具 舉報

6#
ID:585428 發(fā)表于 2022-2-20 07:56 | 只看該作者
AUG 發(fā)表于 2022-2-16 09:44
一個bootloader能有128K的大小?當(dāng)然你可以跳轉(zhuǎn)到這兒運行也沒我問題,如果你的flash足夠大的話。  還有你 ...

你好,現(xiàn)在才看到。主要的疑問是我APP程序時從0x08020000開始的,但是BIN文件的第二個地址竟然時0x0804xxxx,這個程序用的時ucos-II。我在用IAP從bootloader跳轉(zhuǎn)到主程序時,發(fā)現(xiàn)跳轉(zhuǎn)失敗才發(fā)現(xiàn)的,因為之前用標(biāo)準庫寫的并沒有這個問題,又特意去看來下,才發(fā)現(xiàn)標(biāo)準庫和UCOS-II生成的有些不同。標(biāo)準庫是0x0802xxxx.
我在網(wǎng)上查詢以后,查到說BIN文件第二個地址是Reset_Handle()的地址。
回復(fù)

使用道具 舉報

7#
ID:585428 發(fā)表于 2022-2-20 08:01 | 只看該作者
發(fā)表于 2022-2-16 11:53
bootloader設(shè)定128k那是家里有礦隨便浪。其實樓主的問題是app起始地址0x08020000,而Reset_Handler地址0x ...

是的。我之前用bootloader跳轉(zhuǎn)到標(biāo)準庫寫的app,跳轉(zhuǎn)前最后的判斷是
  1.         if(((*(vu32*)(FLASH_APP1_ADDR+4))&0xFFFF0000)==(FLASH_APP1_ADDR & 0xFFFF0000))//判斷是否為0X08XXXXXX.
  2.         {               
  3.                 __disable_irq();  //關(guān)閉中斷
  4.                 Iap_Load_App(FLASH_APP1_ADDR);//執(zhí)行FLASH APP代碼
  5.         }
復(fù)制代碼

,這樣就正常跳轉(zhuǎn)了,但是到用到UCOS-II的程序,系統(tǒng)編譯發(fā)現(xiàn)這個LASH_APP1_ADDR+4這個位置的地址不對了
回復(fù)

使用道具 舉報

8#
ID:585428 發(fā)表于 2022-2-20 08:05 | 只看該作者
發(fā)表于 2022-2-15 18:37
0x20000對應(yīng)128k,如果你的代碼有這么大不太正常了嗎?

你好,我這個是芯片的flash有1M,0x0800 0000---0x0801 FFFF 這個區(qū)域分配給了bootloader,0x0802 0000這個區(qū)域開始是主程序的起始地址
回復(fù)

使用道具 舉報

9#
ID:585428 發(fā)表于 2022-2-20 08:26 | 只看該作者
發(fā)表于 2022-2-16 11:53
bootloader設(shè)定128k那是家里有礦隨便浪。其實樓主的問題是app起始地址0x08020000,而Reset_Handler地址0x ...

我的問題是app起始地址是一樣的情況下,帶UCOS-II系統(tǒng)的程序和使用標(biāo)準庫的程序,兩者生成的Reset_Handler地址為什么一個是0x080 4xxx,一個是0x0802 xxxx
回復(fù)

使用道具 舉報

10#
ID:434018 發(fā)表于 2022-2-21 15:10 | 只看該作者
0x8000000 => flash memory.
0x20000000 => SRAM memory.
Please see LD file in you project folder .
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日本三级精品 | 婷婷丁香在线视频 | 国产激情在线观看视频 | 国产欧美日韩精品一区二区三区 | 天天操欧美 | 久久久一二三 | 日韩精品久久 | 伊人狠狠干 | 亚洲国产aⅴ精品 | 亚洲国产一区二区三区 | 在线国产视频观看 | 国产九九av | 国产日韩欧美激情 | 一区二区三区在线 | 欧美最猛黑人xxxⅹ 粉嫩一区二区三区四区公司1 | 视频一区二区在线观看 | 国产国拍亚洲精品av | 欧美日韩视频在线第一区 | 亚洲毛片在线观看 | 欧美日韩在线综合 | 国产精品久久久久久久岛一牛影视 | 国产精品视频一区二区三区 | 久久精品在线 | 国产精品久久一区二区三区 | 国产欧美一区二区三区日本久久久 | 久久精彩| www.狠狠操| 亚洲自拍偷拍av | 久久久久九九九女人毛片 | 欧美日韩国产精品一区 | av黄色在线观看 | 伊人啪啪网| 日韩久久综合网 | 91大神在线看 | 鲁大师一区影视 | 免费在线看黄 | 亚洲日日操 | 国产精品久久久久影院色老大 | 91精品国产色综合久久不卡蜜臀 | 久久99精品久久久久久 | k8久久久一区二区三区 |