色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SMT32的HEX文件里加入固件版本的方法

jf_pJlTbmA9 ? 來源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-09-18 15:34 ? 次閱讀

本文介紹一個小技巧:

使用MDK編譯器,讓STM32程序HEX文件中加入固件版本信息。

代碼

代碼如下:

//------------------------------------------------------------------------------
#include 

//------------------------------------------------------------------------------
#define VERINFO_ADDR_BASE   (0x8009F00) // 版本信息在FLASH中的存放地址
const char Hardware_Ver[] __attribute__((at(VERINFO_ADDR_BASE + 0x00)))  = "Hardware: 1.0.0";
const char Firmware_Ver[] __attribute__((at(VERINFO_ADDR_BASE + 0x20)))  = "Firmware: 1.0.0";
const char Compiler_Date[] __attribute__((at(VERINFO_ADDR_BASE + 0x40))) = "Date: "__DATE__;
const char Compiler_Time[] __attribute__((at(VERINFO_ADDR_BASE + 0x60))) = "Time: "__TIME__;

//------------------------------------------------------------------------------

寫入到程序中:

pYYBAGIB2rCAajdXAAGiQGwH_5I181.png

選項配置中:Flash地址與大小不用做任何修改!

poYBAGIB2rGAPt-4AAJSJGauc0M632.png

HEX文件:

pYYBAGIB2rOAH1YFAAFSe2uzrSA694.png

串口打印輸出:

poYBAGIB2rSAXPpzAAEGJueLs7M335.png

上述方法的缺點

上述操作可行, 但是有一個缺點:就是生成的bin文件都是滿flash大小的, 造成每次燒錄都是整個flash讀寫。

其實這個可以把存放地址放到前面,比如偏移1K的地方,都不用改指定地址。

按照上述操作,程序末尾到VERINFO_ADDR_BASE地址這一段會被填充成0x00。根據需要可以修改VERINFO_ADDR_BASE減小地址,或者說不強制指定地址,由編譯器自動分配,但這樣就要去找相應的版本標識字符串了。

優化方法

不想前面這一段被大量填充0x00,讓HEX文件體積小一點的話, 可以把選項配置中Flash的Size改小一點,把VERINFO_ADDR_BASE設置成從FlashSize后面的空間開始,這樣生成的HEX文件就小了,且未用空間就不會被大量填充0x00了。

方法如下:

pYYBAGIB2reAZnv-AAbHsQk41is233.png

來源:STM32嵌入式開發
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理(聯系郵箱:cathy@eetrend.com)。

圍觀 49

評論 0

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 程序
    +關注

    關注

    117

    文章

    3824

    瀏覽量

    82497
  • 編譯器
    +關注

    關注

    1

    文章

    1657

    瀏覽量

    49921
  • HEX
    HEX
    +關注

    關注

    0

    文章

    37

    瀏覽量

    17072
收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    SMT32 TP Tool Windows無法安裝驅動怎么處理?

    新手小白,SMT32 TP Tool Windows無法安裝驅動怎么處理
    發表于 06-06 06:52

    為什么無法在USB控制中心選擇固件映像文件

    EEPROM 時,USB 控制中心不會彈出圖像選擇窗口,而是自動下載固件的先前版本。 由于這個問題,我無法將我新開發的固件映像文件下載到 FX3。 即使我重命名以前的
    發表于 05-07 06:14

    新手小白,SMT32 TP Tool Windows無法安裝驅動怎么處理?

    SMT32 TP Tool Windows無法安裝驅動怎么處理
    發表于 04-27 08:06

    新手小白,SMT32 TP Tool Windows無法安裝驅動怎么處理?

    新手小白,SMT32 TP Tool Windows無法安裝驅動怎么處理
    發表于 04-25 07:24

    如何使用.hex進行遠程更新文件

    使用 .hex 進行遠程更新 文件
    發表于 04-21 06:53

    R60AFD1跌倒雷達全新固件127版本,精準升級新體驗

    云帆瑞達頂裝跌倒雷達R60AFD1-V,全新固件版本1.27已升級。此次升級專注于算法固件的優化,未對硬件進行改動,但由于算法變化較大,無法支持前期舊版本OTA升級。相較于前期
    的頭像 發表于 11-28 15:12 ?589次閱讀
    R60AFD1跌倒雷達全新<b class='flag-5'>固件</b>127<b class='flag-5'>版本</b>,精準升級新體驗

    hex格式和二進制的區別

    HEX格式和二進制在多個方面存在顯著的區別。以下是對這兩者的對比: 一、定義與表示方式 HEX格式 : HEX,全稱為Intel HEX,是一種用于存儲和傳輸數據到嵌入式系統(如單片機
    的頭像 發表于 11-18 15:24 ?1566次閱讀

    最新的Aduino IDE 2.3.3如何輸出hex文件

    如題,在這個版本里的首選項里,已經沒有所謂的“preference.txt”的路徑,在路徑里也沒有找到這個東西,編譯勾上后,輸出的只有bin、elf和map,找不到hex文件
    發表于 10-04 12:06

    單片機hex文件反編譯成C語言的過程

    單片機和Hex文件簡介 單片機(Microcontroller Unit,MCU)是一種集成了處理器、存儲器和輸入/輸出接口的微型計算機。它廣泛應用于各種嵌入式系統和智能設備中。單片機的程序通常
    的頭像 發表于 09-02 10:49 ?5706次閱讀

    hex文件怎么能轉回去c語言

    將 .hex 文件直接“轉回去”為原始的C語言代碼是不可能的,因為 .hex 文件是編譯后的二進制文件,它包含了機器碼,這些機器碼是處理器可
    的頭像 發表于 09-02 10:46 ?4126次閱讀

    hex可以轉成源代碼么

    ,可以通過以下幾種方法嘗試獲取源代碼的近似形式: 反匯編 : 使用反匯編工具可以將Hex文件中的機器碼轉換回匯編語言。匯編語言是一種低級語言,它更接近于機器碼,但仍然具有一定的可讀性。 通過反匯編得到的匯編代碼可以提供程序
    的頭像 發表于 09-02 10:41 ?2097次閱讀

    hex文件如何查看原c語言代碼

    是處理器可以直接執行的指令,而 C 語言代碼則是人類可讀的高級編程語言代碼。 然而,如果你想要從 .hex 文件中獲取一些有用的信息或者對程序進行分析,你可以考慮以下幾種方法: 反匯編(Disassembly) : 使用反匯編工
    的頭像 發表于 09-02 10:37 ?4537次閱讀

    使用CY521 EVAL配置CYPD2122,如何將文件保存為HEX格式?

    我正在使用 CY521 EVAL 配置 CYPD2122。 一切運行正常,我現在希望將文件保存為 HEX 格式,以便通過 MiniProg4 進行編程。但是,當我進入\"保存到固件文件
    發表于 08-12 08:19

    SMT貼片加工工藝流程,輕松掌握,不再是難題!

    一站式PCBA智造廠家今天為大家講講smt貼片打樣加工方法有哪些?smt貼片打樣加工流程及方法SMT貼片打樣是在實際生產之前對電路板進行小
    的頭像 發表于 07-26 09:17 ?595次閱讀

    使用ESP32的Release/v2.1.0.0版本的AT固件,想升級成自己編譯的AT固件版本,有什么方法可實現嗎?

    目前使用 ESP32 的 Release/v2.1.0.0 版本的 AT固件,想升級成自己編譯的 AT 固件版本,有什么方法可實現嗎?
    發表于 06-27 06:16
    主站蜘蛛池模板: 亚洲女人网 | 妖精视频一区二区免费 | 国产成人免费a在线视频app | 久久天堂成人影院 | 久久伊人天堂视频网 | 1级午夜影院费免区 | 国产亚洲精品精品国产亚洲综合 | 乌克兰少妇大胆大BBW | 久久精品综合网中文字幕 | 奇米色偷偷 | 99精品国产福利在线观看 | 全球真实小U女视频合集 | www.中文字幕在线观看 | 小货SAO边洗澡边CAO你动漫 | 美女内射视频WWW网站午夜 | 99精品国产高清自在线看超 | 草莓湿漉漉是好事还是恶性 | 日韩欧美高清一区 | 永久免费的无码中文字幕 | 51国产偷自视频在线视频播放 | 亚洲黄色网页 | 亚洲午夜久久久精品电影院 | 快播h网站| 色综合五月激情综合色一区 | 国产超碰精久久久久久无码AV | jizzjizz丝袜 | 中文字幕人成人乱码亚洲影视S | 果冻传媒在线观看完整版免费 | 皮皮在线精品亚洲 | 大学生第一次破苞疼哭了 | 美女伸开两腿让我爽 | 一边喂奶一边做边爱 | 亚洲成年人在线观看 | 男人网站在线 | 《乳色吐息》无删减版在线观看 | 午夜在线观看免费完整直播网页 | 日韩免费视频一区 | 精选国产AV精选一区二区三区 | 中国人泡妞xxxxxxxx19 | 免费国产成人手机在线观看 | 动漫成年美女黄漫网站 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品