久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7071|回復: 0
打印 上一主題 下一主題
收起左側

STM32教程(5)-庫

[復制鏈接]
跳轉到指定樓層
樓主
ID:99082 發表于 2015-12-10 01:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
-庫介紹:


各個芯片廠家在提高自家芯片性能的同時也在想方設法的降低自家芯片的開發難度。開發難度降低就會減少開發的時間和金錢成本,那樣芯片就會受到開發工程師和工廠的歡迎,自然賣的就多效益就好。ST公司針對STM32系列芯片發布了開發所用的庫。

STM32庫包含大量的函數接口,開發者在編寫程序時在庫的基礎上調用這些函數接口來配置STM32的寄存器,而不是開發者直接接觸底層寄存器,可以玩笑的說初學者接觸寄存器相當于自殺。庫是在寄存器和用戶驅動層之間的代碼,向下處理與寄存器直接相關的配置,向上為用戶提供配置寄存器的接口。庫開發方式與直接配置寄存器方式的區分。

本文以STM32的3.5版本的庫為例,庫的原始文件可以從官網下載,也可從各個論壇和資料中獲得。

解壓后得到文件夾如下:STM32F10x_StdPeriph_Lib_V3.5.0


--庫解釋:


點入文件夾后出現四個文件夾:

_htmresc:包含兩張和ST公司相關的圖片,這個在編程時沒用,所以可以刪除。

Libraries:點入文件夾后發現兩個文件夾如下:CMSIS和STM32F10x_Stdperiph_Driver

這里邊的文件都很重要,其中CMSIS的含義是:cortex microcontroller

software interface standard即首字母縮寫成CMSIS標準。之前和大家介紹過STM32的內核是由ARM公司設計的cortex_M3,而實際上使用此內核的芯片不只是STM32,為了基于統一內核的芯片能夠兼容(能夠兼容自然對ARM公司有利),所以ARM公司和芯片廠商建立了CMSIS標準。

在路徑STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS下有兩個文件夾:

這兩個文件夾內:

CoreSupport包含對核相關的一些函數。

而DeviceSupport包含對外設和中斷相關的一些函數。startup中包含啟動文件。

3.5的啟動文件比較之前分的更詳細了,啟動文件自然也就更多了。

尾綴英文縮寫不同,代表的含義為:

cl:互聯網型產品,目前包含此功能的系列芯片有STM32F105和F107系列。

vl:超值型產品,目前包含此功能的系列芯片有STM32F100系列。

xl:超高密度型產品。目前包含此功能的系列芯片有STM32F101系列和F103系列。

ld:低密度型,flash小于64K

md:中密度型,flash為64K或128K

hd:高密度型,flash大于128K


庫并沒有介紹完,下面51黑會接著介紹。

庫是STM32系列芯片開發的基礎工具,就好比舞臺。8051內核系列芯片呢,表演的節目比較簡單,所以找個空地人群一圍觀就能表演,而STM32系列芯片呢,功能比較復雜,就像表演大型的歌舞,需要一個燈光音響效果較好的舞臺。STM32的庫正是這樣的舞臺,但想在舞臺上自由表演前,自然也要對舞臺了解了解。


--庫解析:

(接著STM32(6)--庫繼續:)


Libraries:點入文件夾后發現兩個文件夾如下:CMSIS和STM32F10x_Stdperiph_Driver

點入STM32F10x_Stdperiph_Driver文件夾,出現inc和src兩個文件夾。

src是source的縮寫,是根源、本源的意思(英文縮寫喜歡省略掉中間的元音子母,有時不是很好理解原來的詞義。)。這里邊包含了大量的.文件,他們都是針對芯片外設(相對于CMSIS針對芯片的核來說)。而這些外設是芯片廠家自己設計時加入的,就是ST公司針對STM32每個外設而編寫的函數。

大家可以發現這些.C文件的命名有很明顯的規律。那就是名字都是

stm32f10x_XXX.c而這XXX所替換的部分正對于著這個文件的功能。

比如說stm32f10x_exti.c文件。exti替換了XXX,exti大家應該熟悉吧,因為樓道里總能看見發著綠光的標示EXTI,就是出口的意思。在為控制器來說,這是中斷的含義。也就是說這個stm32f10x_exti.c文件負責STM32芯片和中斷相關的事情,換句話說,也就是當你用到了中斷時,一定要把這個文件加到你的工程中。還有一個叫misc.c的文件,這里邊包含了外設對內核的中斷向量控制器NVIC的訪問函數,在配置中斷時,必須把這個文件添加到工程中。

inc是include的縮寫,里邊都是對應著.C文件的.H頭文件。工程中用到的.C文件,就一定要把相應的.H文件也添加進去。

大家讀完上段可能對例子中的添加到工程里去這幾個字很不爽,因為我怎么知道哪個添加哪個不添加。其實有一個很簡單的方法,把兩個文件夾內的.C和.H文件全部都添加到工程里去進去。具體怎么新建工程后邊會講。


project:點入文件夾包括STM32F10x_StdPeriph_Examples和STM32F10x_StdPeriph_Template兩個文件夾。

可以看出兩個文件夾的不同在于一個是這Examples一個Template。Examples翻譯為例子,Template翻譯為模版。例子和模版意思好像差不太多,舉個例子大家體會一下,六級作文例文和六級作文模版。

STM32F10x_StdPeriph_Template文件夾里主要都是這對不同編程軟件的工程模版。

程序員可以再次基礎上進行修改和繼續編程,此文件夾外的幾個.C和.H文件都是編程必須添加的文件,而且也是程序員需要改動的文件。

STM32F10x_StdPeriph_Examples文件點入有很多文件夾:

大家會發現這個文件夾的名字和我們上邊說到的代表不同外設功能的XXX相對應。這個文件夾正是ST公司針對外設的應用舉例,每個外設的多種功能都有例舉,在后期自學過程很有參照意義。但這些例子不是工程形式,需要大家自己進行配置,有的也需要進行些修改。


以下是本系列教程文章列表:歡迎大家踴躍討論,有問題可在51黑論壇回帖提出.


STM32教程(1)-大學里沒碰見像STM32一樣吸引我的姑娘:http://www.zg4o1577.cn/bbs/dpj-41167-1.html
STM32教程(2)-各種應用和外設簡單介紹:http://www.zg4o1577.cn/bbs/dpj-41168-1.html
STM32教程(3)-芯片引腳性質介紹:http://www.zg4o1577.cn/bbs/dpj-41169-1.html
STM32教程(4)-最小系統的設計:http://www.zg4o1577.cn/bbs/dpj-41170-1.html
STM32教程(5)-庫:http://www.zg4o1577.cn/bbs/dpj-41171-1.html
STM32教程(6)-STM32的流水燈程序:http://www.zg4o1577.cn/bbs/dpj-41162-1.html

STM32編程基礎(1)-Keil編程軟件的安裝:http://www.zg4o1577.cn/bbs/dpj-41163-1.html
STM32編程基礎(2)-Keil庫的修改:http://www.zg4o1577.cn/bbs/dpj-41164-1.html
STM32編程基礎(3)-Keil建立工程模版:http://www.zg4o1577.cn/bbs/dpj-41165-1.html
STM32編程基礎(4)-Keil工程設置http://www.zg4o1577.cn/bbs/dpj-41166-1.html
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲色图第一页 | 欧美激情久久久 | 亚洲精品视频一区二区三区 | 中文字幕视频三区 | 中文字幕av一区 | 久久亚洲精品国产精品紫薇 | 国产精品1区 | 欧美视频xxx | 欧美日韩综合 | 欧美日韩高清 | 日日骑 | 欧美1区2区 | 伦理二区 | 久久国产精品一区二区三区 | 丝袜一区二区三区 | 国产精品亚洲成在人线 | 国产高清视频在线 | 日韩欧美在线观看视频 | 久久久国产一区二区三区四区小说 | 精品久久久久久 | 欧美视频在线播放 | caoporon| 日韩在线观看一区二区三区 | 成人免费在线视频 | 欧美日韩亚洲一区 | 午夜精品一区二区三区在线播放 | 一呦二呦三呦国产精品 | 真人毛片 | 天天躁日日躁xxxxaaaa | 日韩成年人视频在线 | 日韩aⅴ视频 | 国产日韩一区二区三免费 | 国产91九色| 日韩综合 | 午夜一区二区三区视频 | 国产激情精品视频 | 欧美日韩国产一区二区三区不卡 | 免费的av| 日韩欧美三区 | 成人免费视频 | 亚洲国产成人精品久久久国产成人一区 |