0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Keil& ; IAR生成庫及庫的說明與使用

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-20 14:09 ? 次閱讀

寫在前面 Ⅰ

庫,對于編程的人來說,都應(yīng)該知道。但有很多初學(xué)者,及已經(jīng)工作的朋友對庫的理解還處于書本概念階段,也就是沒有生成和使用過庫。

其實,還有很多朋友不知道printf打印函數(shù)是怎么回事,我們在代碼中調(diào)用printf函數(shù)打印數(shù)據(jù)時,已經(jīng)調(diào)用了標(biāo)準(zhǔn)的“微庫”,這里可以參看我的文章:關(guān)于printf和scanf在開發(fā)STM32中的配置和應(yīng)用

什么情況下要生成庫?

1.代碼模塊化定型。也就是說模塊代碼的功能在經(jīng)過無數(shù)次驗證,并無誤后,方便團(tuán)隊的協(xié)同開發(fā),這個時候可以將模塊代碼生成庫。

2.提供SDK給客戶開發(fā)。這里一般是指源代碼對客戶不具有公開性的原因,包括某些特有算法、實現(xiàn)特有功能的具體過程等。

生成庫的原則?

簡單來說就是使代碼結(jié)構(gòu)化、模塊化、源碼不具公開性等。要求代碼高內(nèi)聚、低耦合

Keil、IAR如何生成庫? Ⅱ

代碼工程生成庫的過程只需要對工程進(jìn)行配置即可,這里再簡單講一下過程,其實在我“系列教程”中有相關(guān)內(nèi)容。

Keil:Project -> Options for Target -> Output 勾選上“Create Library”即可。

IAR:Project -> Options -> General Options -> Output 勾選上“Library”即可。

靜態(tài)庫和動態(tài)庫的區(qū)別? Ⅲ

上面Keil生成的庫是以“.Lib”為后綴的文件,IAR是以“.a”為后綴的文件,你們知道他們是靜態(tài)庫還是動態(tài)庫嗎?

答案是:二者都是靜態(tài)庫。

為什么都是靜態(tài)庫呢? 先看一下靜態(tài)庫和動態(tài)庫的區(qū)別就會知道。

簡單的來說二者的區(qū)別:

靜態(tài)庫:就是在編譯的時候直接將需要的代碼連接進(jìn)可執(zhí)行程序中去;

動態(tài)庫:就是在需要調(diào)用其中的函數(shù)時,根據(jù)函數(shù)映射表找到該函數(shù)然后調(diào)入堆棧執(zhí)行。

從上面的描述可以知道,靜態(tài)庫是我們MCU開發(fā)者常用的一種,而動態(tài)庫常用于Linux、Windows等開發(fā)場合。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • IAR
    IAR
    +關(guān)注

    關(guān)注

    5

    文章

    354

    瀏覽量

    36728
  • 靜態(tài)庫
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    7471
  • keil
    +關(guān)注

    關(guān)注

    68

    文章

    1214

    瀏覽量

    167046
收藏 人收藏

    評論

    相關(guān)推薦

    北美運營商AT&T認(rèn)證中的VoLTE測試項

    北美運營商AT&T的認(rèn)證測試內(nèi)容涵蓋了多個方面,以確保設(shè)備和服務(wù)的質(zhì)量、兼容性以及用戶體驗。在AT&T的認(rèn)證測試中,VoLTE(VoiceoverLTE)測試項是一個重要的組成部分
    的頭像 發(fā)表于 12-06 16:52 ?173次閱讀
    北美運營商AT&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;T認(rèn)證中的VoLTE測試項

    數(shù)據(jù)數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)碎片恢復(fù)SQLserver數(shù)據(jù)

    一個運行在存儲上的SQLServer數(shù)據(jù),有1000多個文件,大小幾十TB。數(shù)據(jù)每10天生成一個NDF文件,每個NDF幾百GB大小。數(shù)據(jù)包含兩個LDF文件。 存儲損壞,數(shù)據(jù)
    的頭像 發(fā)表于 10-31 13:21 ?287次閱讀
    數(shù)據(jù)<b class='flag-5'>庫</b>數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)<b class='flag-5'>庫</b>碎片恢復(fù)SQLserver數(shù)據(jù)<b class='flag-5'>庫</b>

    數(shù)據(jù)數(shù)據(jù)恢復(fù)—Oracle ASM實例無法掛載的數(shù)據(jù)恢復(fù)案例

    Oracle數(shù)據(jù)數(shù)據(jù)恢復(fù)環(huán)境&amp;故障: Oracle ASM磁盤組由4塊磁盤組成。Oracle ASM磁盤組掉線 ,ASM實例不能mount。 Oracle數(shù)據(jù)故障分析&amp
    的頭像 發(fā)表于 10-28 11:26 ?176次閱讀
    數(shù)據(jù)<b class='flag-5'>庫</b>數(shù)據(jù)恢復(fù)—Oracle ASM實例無法掛載的數(shù)據(jù)恢復(fù)案例

    北美運營商AT&amp;amp;amp;T認(rèn)證的費用受哪些因素影響

    申請北美運營商AT&amp;T認(rèn)證的價格因多種因素而異,包括產(chǎn)品類型、認(rèn)證范圍、測試難度等。一般來說,申請AT&amp;T認(rèn)證的費用可能相對較高,因為AT&amp;T作為北美地區(qū)的主要電信運營商,其
    的頭像 發(fā)表于 10-16 17:10 ?251次閱讀
    北美運營商AT&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;T認(rèn)證的費用受哪些因素影響

    GD32F103 KeilIAR pack包

    電子發(fā)燒友網(wǎng)站提供《GD32F103 KeilIAR pack包.rar》資料免費下載
    發(fā)表于 10-15 17:25 ?151次下載

    onsemi LV/MV MOSFET 產(chǎn)品介紹 &amp;amp;amp; 行業(yè)應(yīng)用

    01直播介紹直播時間2024/10/281430直播內(nèi)容1.onsemiLV/MVMOSFET產(chǎn)品優(yōu)勢&amp;市場地位。2.onsemiLV/MVMOSFETRoadmap。3.onsemiT10
    的頭像 發(fā)表于 10-13 08:06 ?475次閱讀
    onsemi LV/MV MOSFET 產(chǎn)品介紹 &<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>; 行業(yè)應(yīng)用

    FS201資料(pcb &amp;amp; DEMO &amp;amp; 原理圖)

    電子發(fā)燒友網(wǎng)站提供《FS201資料(pcb &amp; DEMO &amp; 原理圖).zip》資料免費下載
    發(fā)表于 07-16 11:24 ?0次下載

    北美運營商AT&amp;amp;amp;T認(rèn)證入庫產(chǎn)品范圍名單相關(guān)

    AT&amp;T作為全球領(lǐng)先的通信服務(wù)運營商之一,通過AT&amp;T認(rèn)證不僅是對產(chǎn)品質(zhì)量的認(rèn)可,更是產(chǎn)品打開北美市場大門的重要憑證。然而,或許您還不清楚AT&amp;T認(rèn)證入庫的產(chǎn)品范圍,接下來
    的頭像 發(fā)表于 06-28 16:58 ?487次閱讀
    北美運營商AT&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;T認(rèn)證入庫產(chǎn)品范圍名單相關(guān)

    解讀北美運營商,AT&amp;amp;amp;T的認(rèn)證分類與認(rèn)證內(nèi)容分享

    在數(shù)字化日益深入的今天,通信技術(shù)的穩(wěn)定與安全對于個人、企業(yè)乃至整個國家都至關(guān)重要。作為北美通信領(lǐng)域的領(lǐng)軍者,AT&amp;T一直致力于為用戶提供高效、可靠的通信服務(wù)。而在這背后,AT&amp;T
    的頭像 發(fā)表于 06-05 17:27 ?653次閱讀
    解讀北美運營商,AT&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;T的認(rèn)證分類與認(rèn)證內(nèi)容分享

    FSP啟動文件說明

    FSP啟動文件說明
    的頭像 發(fā)表于 06-04 08:06 ?506次閱讀
    FSP<b class='flag-5'>庫</b>啟動文件<b class='flag-5'>說明</b>

    RA2在e2 studio環(huán)境生成LIB操作

    RA2在e2 studio環(huán)境生成LIB操作
    的頭像 發(fā)表于 05-15 08:06 ?552次閱讀
    RA2在e2 studio環(huán)境<b class='flag-5'>生成</b>LIB<b class='flag-5'>庫</b>操作

    在官方中發(fā)現(xiàn)GPIOx-&amp;gt;ODR這種寫法,是什么意思,怎么中間會有-&amp;gt;?

    本人新手,剛接觸st的芯片 在官方中發(fā)現(xiàn)GPIOx-&amp;gt;ODR這種寫法,不知道這是什么意思,怎么中間會有-&amp;gt;? 請論壇上高手予以幫忙解答
    發(fā)表于 05-10 06:48

    STM32cubemx的KEIL有什么不同?

    STM32cubemx軟件有對應(yīng)各個系列芯片的. 使用cubemx,生成代碼框架,比如生成MDK的代碼框架。但MDK也有自己的PACK。那么MDK的PACK和CUBEMX的有什么區(qū)
    發(fā)表于 04-11 06:02

    在TSMaster中加載基于DotNet平臺的Seed&amp;amp;amp;Key

    在UDS診斷過程中,會涉及到安全訪問的問題,也就是所謂的Seed&amp;Key。TSMaster診斷模塊支持通過.dll文件載入Seed&amp;Key算法用于安全訪問解鎖。在最近發(fā)布
    的頭像 發(fā)表于 04-02 08:20 ?613次閱讀
    在TSMaster中加載基于DotNet平臺的Seed&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;Key

    Open RAN的未來及其對AT&amp;amp;T的意義

    3月14日消息,在“Connected America 2024”會議上,AT&amp;T高級副總裁兼網(wǎng)絡(luò)首席技術(shù)官Yigal Elbaz討論了Open RAN 的未來及其對AT&amp;T的意義。
    的頭像 發(fā)表于 03-14 14:40 ?788次閱讀