資料介紹
經(jīng)常有人會問,你們 STM32 編程是用庫函數(shù) 還是用寄存器的...會說庫函數(shù)方便,容 易,都用庫函數(shù)...等等這樣的問題,今天我們就來 dis 一下這幾種編程方式,STM32 編程 目前常見的幾種形式如下:
1. 使用標(biāo)準(zhǔn)外設(shè)庫開發(fā) 2.使用寄存器開 3.使用 CubeMax 生成代碼工具開發(fā) 下面我們先來說一下目前這幾種形式的區(qū)別:
1.使用標(biāo)準(zhǔn)外設(shè)庫開發(fā)
Stm32 標(biāo)準(zhǔn)外設(shè)庫是 stm32 官方提供給用戶的全系列芯片的外設(shè)驅(qū)動,官方把單片機 外設(shè)的功能進行包裝,提供給用戶一個現(xiàn)成的接口函數(shù),用戶不用去管寄存器到底是如何操 作的,直接調(diào)用接口函數(shù),即可使用這些外設(shè)。在這個基礎(chǔ)上你直接開發(fā)你的應(yīng)用層程序即 可
這個驅(qū)動包名字一般是 STM32Fxxx_StdPeriph_Lib_Vx.x.x 有了它可以大大加速我們 開發(fā) stm32。我們以 STM32F10x_StdPeriph_Lib_V3.5.0 驅(qū)動包為例,解壓該 zip 文件,得 到如下文件夾和文件
_htmresc
Libraries
Project
Utilities
Release_Notes.html
stm32f10x_stdperiph_lib_um.chm
其中 Libraries 包含庫的源代碼,Project 包含 stm32 各個外設(shè)的使用范例和一個工程模 板,Utilities 是使用 st 公司評估板的例子,stm32f10x_stdperiph_lib_um.chm 教我們怎么用 標(biāo)準(zhǔn)外設(shè)庫
2. 使用寄存器開發(fā)
使用寄存器開發(fā),用戶需要自己去操作底層外設(shè)寄存器,實現(xiàn)想要的外設(shè)功能,這個過 程是需要自己對照手冊,一行一行把代碼敲出來的
3. 使用 CubeMax 開發(fā)
這個是官方提供的圖形化的一鍵生產(chǎn)代碼的工具,在這個 IDE 中我們只要根據(jù)你想要 的功能,點點鼠標(biāo),就可以生成你想要的功能,但是注意這個功能只是你想要的單片機外設(shè) 配置功能,并不是你的應(yīng)用程序功能,比如你想要以一個什么樣的方式通訊,還是需要你自 己去完善的。如下圖是圖形化開發(fā)的界面:

上面我們以簡潔明了的描述了三種編程方式的使用方式和編程過程,接下來我們來分析 一下這三種方式的優(yōu)缺點:
第一種方法,官方提供了現(xiàn)成的驅(qū)動庫,用戶可以直接使用,使用起來方便,快捷,開 發(fā)速度快,相對起來也容易上手一點,但是對底層的寄存器操作原理了解不深,只知其一不知其二,出了問題,解決起來比較麻煩。且官方的驅(qū)動庫為了容錯性高一些等原因,會引 入一些判斷機制,相對復(fù)雜一些,但是實際上有的東西是我們用不到的,這就會造成代碼執(zhí) 行效率會相對低一些
第二種方法,雖然開發(fā)起來相對來說比較慢一些,比較繁瑣一些,但是接觸的都是真正 的底層內(nèi)容,出了問題,我們也能從源頭來快速分析解決問題,而且寫的代碼中省去了一些 不必要的判斷過程,執(zhí)行效率會相對高一些,代碼看起來也會清爽一些
第三種方法,使用 IDE 開發(fā),這個相比較來講入門是最快的,不用接觸那些庫函數(shù)接口, 也不用去理會那些寄存器操作,只要在圖形化的界面上勾選一些選項就可以了,這簡直是懶 人必備神器啊,但是話說回來,這種開發(fā)方式,基本上接觸單片機底層內(nèi)容為 0%,只要寫 應(yīng)用程序就可以了,出了問題更難解決。如果換了個平臺,沒有這種方便的 IDE,怎么辦呢?
完整版技術(shù)文檔請點擊文章開頭普通下載
- BLDC霍爾安裝角度你知道多少?(可下載)
- 電阻的噪聲主要分為兩類,你都知道嗎?資料下載
- STM32的幾種串口通信協(xié)議資料下載
- 熱電偶基本定律有四個,你都知道是哪些嗎?資料下載
- 這兩種短路保護的方式你都知道嗎?怎么運用?資料下載
- 常用電子元器件的分類,你都知道嗎資料下載
- 工業(yè)總線和通用以太網(wǎng)之間有什么差別?你知道嗎?資料下載
- STM32 經(jīng)驗總結(jié),這些你都知道嗎資料下載
- 熱敏電阻的四種常見作用,你都知道嗎資料下載
- 常用電感,這些你都知道嗎資料下載
- 手持紅外測溫儀為何爆發(fā)式增長的原理你知道嗎
- C語言編程入門的必做題你知道嗎 0次下載
- 無線充電IC你都知道嗎 47次下載
- 電池的危害有哪些,你都知道嗎? 0次下載
- 汽車后視鏡里的科學(xué),你知道嗎? 53次下載
- STM32單片機有哪幾種常見的開發(fā)環(huán)境? 3801次閱讀
- 任意單片機基于simulink模型開發(fā)方式 1012次閱讀
- 先楫hpm_sdk開發(fā)方式的優(yōu)缺點 與單片機傳統(tǒng)開發(fā)方式的不同點 3098次閱讀
- STM32嵌入式開發(fā)中的RTOS,你用過哪些? 2637次閱讀
- STM32的三種開發(fā)方式 HAL庫固件庫安裝與用戶手冊 4527次閱讀
- STM32三種開發(fā)方式及其區(qū)別 1.2w次閱讀
- 你了解云計算嘛? 3296次閱讀
- 這些PCB黑話你都知道嗎? 7466次閱讀
- 幾種遠程監(jiān)控通信方式的介紹_幾種遠程監(jiān)控方式的比較 6184次閱讀
- 6個電源設(shè)計經(jīng)驗,你都知道嗎? 9570次閱讀
- MIUI的這10個小設(shè)置你都知道嗎 4452次閱讀
- 你知道嗎,高級濾波器背后的原理竟這么簡單! 2160次閱讀
- 你不知道的STM32知識匯總 4676次閱讀
- 電池的危害有哪些,你都知道嗎? 1.8w次閱讀
- 天線的分類有哪些?看了就知道 2.1w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論