stm32庫函式開發—庫檔案簡介
core.c/core.h
他們的作用是為採用cortex-m3核心設計的soc的晶元商設計的晶元的外設提供乙個進入cm3核心的介面,對於其他公司的cm3系列晶元這兩個檔案相同,我們不用管他是怎麼實現的,只需要將這兩個檔案加入我們的工程檔案中即可。
startup_stm32f10x_hd
這是系統啟動檔案,需要注意的是不同的晶元對應不同的啟動檔案,我們可以根據我們的晶元選擇檔案。
cl:互聯型產品,stm32f105/107系列
vl:超值型產品,stm32f100系列
xl:超高密度(容量)產品,stm32f101/103系列
ld:低密度產品,flash小於64kb
md:中密度產品,flash等於64kb或128kb
hd:高密度產品,flash大於128kb
啟動檔案是任何處理器在上電復位後最先執行的一段匯程式設計序,所以我們也要將此檔案加入到我們的工程檔案。他的作用是:
1.初始化堆疊指標sp
2.初始化程式計數器指標pc
3.設定堆、棧的大小
4.設定異常向量表的入口位址
5.配置外部sram作為資料儲存(使用者個人配置)
6.設定c庫的分支入口__main(最終用來呼叫main函式)
7.3.5版本的啟動檔案還呼叫了system_stm32f10x.c檔案中的systeminit()函式配置系統時鐘,在舊版的工程中使用者進入main函式自己呼叫systeminit()函式
stm32f10x.h
這個檔案很重要,是一非常底層的檔案,它包含了stm32中暫存器位址和結構體型別定義,在使用韌體庫的地方都需要包含這個標頭檔案。
system_stm32f10x.h/system_stm32f10x.c
設定系統時鐘和匯流排時鐘
inc/src
這是針對每個stm32外設編寫的庫函式檔案,例如adc外設,gpio外設等等
stm32f10x_it.c/stm32f10x_it.h
stm32f10x_it.c是專門用來編寫中斷服務函式的,這裡已經定義了有些系統異常的介面,其他普通中斷服務函式由使用者自己新增。中斷服務函式介面名可以在啟動檔案中查詢。
stm32f10x_conf.h被包含進stm32f10x.**件,是用來配置使用了什麼外設的標頭檔案,用這個標頭檔案我們可以很方便的增加或者刪除外設驅動函式庫。
上圖中被注釋掉的部分,表示沒有用到,在編譯時不會編譯這些檔案。
STM32鍵盤 庫函式
昨天晚上老大回來看我頻繁使用暫存器寫程式給出指點,告訴我盡量使用庫函式,少使用暫存器,畢竟暫存器在後面使用的時候還要乙個乙個查詢手冊可能太麻煩了,nice!這次使用庫函式操作鍵盤,很基礎的實驗,其中摻雜了之前的蜂鳴器和led內容。感覺基礎鍵盤實驗比較有價值的還是那個鍵盤操作函式,以下給出標準模板,m...
stm32 按鍵(庫函式版)
不得不說程序太慢了 感覺很慌 但是幹什麼事情又非常的從容 學的很慢學著學著發現 不止是要學新東西 那些 以前早該知道的東西也忘了好多 還有 一定一定要好好學習 擴充套件知識面 什麼東西都一定要學精 因為知識的封鎖真的真的很可怕 很可怕 所以一定多學習 多動手 要加油 終於可以看這個的重點了 按鍵 就...
初學stm32 庫函式開發流水燈實現
1.庫函式開發步驟及總結 庫函式總結.2.stm32庫函式本質上依舊是暫存器程式設計,只是為了方便應用封裝成了函式。所以使用者的應用程式也可以繞過庫函式,直接對暫存器程式設計,參考部落格 暫存器開發.暫存器程式設計的 效率最高。不過,開發難度大,查閱相關手冊比較多,開發效率相對低,產品周期長,可維護...