下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Keil下庫文件的創(chuàng)建和使用(原創(chuàng)/總結(jié))對Keil我們大家可能都不陌生,從開始學(xué)習(xí)51開始就使用,那時(shí)還是Keil2直到現(xiàn)在Keil4,但卻從未在Keil下創(chuàng)建過庫文件。使用庫文件也有不少好處,比如:1、 保密,維護(hù)自己的原創(chuàng)代碼不被隨意修改。使用庫文件別人就無法修改你的源文件,但可以使用。2、 可以實(shí)現(xiàn)軟件的模塊化。在一個(gè)項(xiàng)目中,若由幾個(gè)人一起完成,可以將一些通用的函數(shù),驅(qū)動(dòng)等封裝成庫文件。3、 在Keil中,若源文件中有出現(xiàn)你認(rèn)為沒有問題但在編譯時(shí)又出現(xiàn)警告的地方,生成庫文件后使用,是不會(huì)報(bào)警告的。比如你定義了一個(gè)函數(shù),但目前又沒用到,則編譯時(shí)會(huì)出現(xiàn)“UNCALLEDFUNCwarning”的警告,相信很多同仁都遇到過吧。在網(wǎng)上查找了不少關(guān)于在Keil中創(chuàng)建庫文件的資料,結(jié)合相關(guān)資料自己嘗試了一下,現(xiàn)在總結(jié)出來給大家分享,特別是其中的一些要注意或容易被忽略細(xì)節(jié)?,F(xiàn)以一個(gè)DS12C887驅(qū)動(dòng)為例來說明,其中C源文件名稱為“DS12C887C.C”,頭文件為“DS12C887H.h”步驟如下:1、新建一個(gè)工程,圖1創(chuàng)建一個(gè)新工程2、在工程的左側(cè)projectworkplace窗口“SourCeGroup1”上點(diǎn)擊右鍵選擇添加文件,向工程中添加你希望創(chuàng)建成庫文件的原文件。注意:1)項(xiàng)目里只添加希望創(chuàng)建成庫文件的原文件的C源程序
“DS12C887C.C”,不要有main函數(shù),函數(shù)聲明放在頭文件中以便發(fā)布,并做好詳細(xì)的使用說明。(2)C源程序“DS12C887C.C”中用到的頭文件應(yīng)全部放到與之相對應(yīng)的頭文件中,而不要放到C源文件中(如圖3),因?yàn)榉诺紺源文件中生成庫文件后不能再編輯。而在其對外部開放的頭文件“DS12C887H.h”中。FileEditViewProjectFbshDe-bugPeripheralsToolsSVCiWindow卜LuiiDJLuiiDJ料TargetLProject曰V_JTarget1曰V_JTarget1a-、 $…“startupJSource-GroiOptionsforGroupSourceGroup1'...Alt+F7OpenFileOpenListFile□penMapFileRebuildalltargetfilesF7BuildtargetF7TranslateFileStopbuildAddGroup.,.p'SonrutGroup1/,,,RemoveGroup'Sourcec^roup1anditsFileiiyiManage匚ornponents...iyiShowIndudeFileDependencies圖2添加文件圖3源文件中的頭文件包含QptbcrnsfoFTarget'Targetl'...QptbcrnsfoFTarget'Targetl'...3、在工程的左側(cè)projectworkpla(窗口右鍵點(diǎn)擊“TargetT,選擇Optionsfor‘Target1'...Project□penListFileOpenMapFileRebuildalltargetfileF7BuildtargetF7TranslateFileStopbuildAddGroup...AddlFilestoGroup...kemoveItemManage匚ornponents.../ShouvIncludeFileDependenciesrrrrmrmtfffffi~■圖4進(jìn)入設(shè)置4、在“OutPut”標(biāo)簽中進(jìn)行圖5顯示的設(shè)置,設(shè)置完成點(diǎn)擊0K。圖5生成庫文件設(shè)置5、至此設(shè)置完成,點(diǎn)擊編譯即生成庫文件。如圖6所示,明顯有一項(xiàng)定義了變量id但又未使用的警告。SuildO-utputs.5seniblingstditj.p_LPClljtK.s...carr.EllirLCfD51^C-3S7C.c...D512C357C:.c(233):warning:#550-D:variafclerridpwassettutneveiased|creatingLitrsiy...?丄丄匕"-QExrox(s)f1Waxni^igfs}?圖6庫文件編譯結(jié)果6、庫文件的使用。在原使用“DS12C887C.C”源文件的項(xiàng)目中刪除該源文件,將剛生成的庫文件“DS12C887.LIB”和頭文件“DS12C887H.h”復(fù)制到該項(xiàng)目的根目錄下(或根目錄下的其他文件夾中),這樣移動(dòng)項(xiàng)目是庫文件也可以一起移動(dòng)。如圖7所示。NewGroup|…2]DS12CSa7,lib:…□DS12CBS7H.h圖7添加庫文件和頭文件
再次編譯原項(xiàng)目。(可以嘗試查找一下圖6所示的警告,明顯沒有出現(xiàn)該警告了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 32589-2025軌道交通導(dǎo)電軌受流器
- 海外培訓(xùn)主播
- 軋光(軋花)機(jī)擋車工崗前成果轉(zhuǎn)化考核試卷含答案
- 海藻飼料肥料制作工安全宣傳模擬考核試卷含答案
- 配氣分析工沖突解決水平考核試卷含答案
- 銀行內(nèi)部審計(jì)檔案歸檔規(guī)范制度
- 酒店員工交接班制度
- 那坡昂屯風(fēng)電場項(xiàng)目送出線路工程項(xiàng)目環(huán)境影響報(bào)告表
- 流行樂唱歌培訓(xùn)
- 如何報(bào)考執(zhí)業(yè)藥師?-2026年政策適配+全流程避坑指南
- 監(jiān)獄消防培訓(xùn) 課件
- 道路建設(shè)工程設(shè)計(jì)合同協(xié)議書范本
- 白塞病患者外陰潰瘍護(hù)理查房
- 西葫蘆的栽培技術(shù)
- 2025年安徽阜陽市人民醫(yī)院校園招聘42人筆試模擬試題參考答案詳解
- 2024~2025學(xué)年江蘇省揚(yáng)州市樹人集團(tuán)九年級上學(xué)期期末語文試卷
- 2026屆江蘇省南京溧水區(qū)四校聯(lián)考中考一模物理試題含解析
- 2025年黑龍江省公務(wù)員《申論(行政執(zhí)法)》試題(網(wǎng)友回憶版)含答案
- 公司大型綠植自營活動(dòng)方案
- 智能客戶服務(wù)實(shí)務(wù)(第三版)課件 項(xiàng)目三 掌握客戶服務(wù)溝通技巧
- 聲音考古方法論探索-洞察闡釋
評論
0/150
提交評論