STM32基礎(chǔ)學(xué)習(xí)筆記(二)

學(xué)號(hào):14020520011 姓名:孟天玉

【嵌牛導(dǎo)讀】:基于STM32的單片機(jī)部分基礎(chǔ)學(xué)習(xí)

【嵌牛鼻子】:學(xué)習(xí)筆記眷蜈、單片機(jī)、STM32

【嵌牛提問】:STM32有哪些基礎(chǔ)模塊扮饶?能實(shí)現(xiàn)什么功能衡创?

【嵌牛正文】:

Cortex-M3作為STM32的內(nèi)核,采用ARM7構(gòu)架绸栅,不僅支持Thumb-2指令集海诲,而且擁有許多新特性繁莹。與ARM7相比,Cortex-M性能更強(qiáng)勁特幔,代碼密度更高咨演,有位帶操作,可嵌套中斷蚯斯,低成本薄风,帝功耗的優(yōu)勢。目前Cortex-M3市場以ST(意法半導(dǎo)體)的STM32和Luminary(流明諾瑞)的LM3S最為著名拍嵌。

一.Cortex-M3編程模式

Cortex-M3處理器采用ARMv7-M架構(gòu)遭赂,它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構(gòu),Cortex-M3處理器不能執(zhí)行ARM指令集横辆。

Thumb-2在Thumb指令集架構(gòu)(ISA)上進(jìn)行了大量的改進(jìn)撇他,它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能狈蚤。

1.工作模式:

Cortex-M3處理器支持2種工作模式:線程模式和處理模式困肩。在復(fù)位時(shí)處理器進(jìn)入“線程模式”,異常返回時(shí)也會(huì)進(jìn)入該模式炫惩,特權(quán)和用戶(非特權(quán))模式代碼能夠在“線程模式”下運(yùn)行僻弹。

出現(xiàn)異常模式時(shí)處理器進(jìn)入“處理模式”,在處理模式下他嚷,所有代碼都是特權(quán)訪問的。

2.工作狀態(tài):

Cortex-M3處理器有2種工作狀態(tài)芭毙。

Thumb狀態(tài):這是16位和32位“半字對(duì)齊”的Thumb和Thumb-2指令的執(zhí)行狀態(tài)筋蓖。

3.調(diào)試狀態(tài):

處理器停止并進(jìn)行調(diào)試,進(jìn)入該狀態(tài)退敦。


二.Cortex-M3特點(diǎn)

1.高性能

? 許多指令都是單周期的——包括乘法相關(guān)指令粘咖。并且從整體性能上,Cortex-M3比得過絕大多數(shù)其它的架構(gòu)侈百。

? 指令總線和數(shù)據(jù)總線被分開瓮下,取值和訪內(nèi)可以并行不悖

? Thumb-2的到來告別了狀態(tài)切換的舊世代翰铡,再也不需要花時(shí)間來切換于32位ARM狀態(tài)和16位Thumb狀態(tài)之間了。這簡化了軟件開發(fā)和代碼維護(hù)讽坏,使產(chǎn)品面市更快锭魔。

? Thumb-2指令集為編程帶來了更多的靈活性。許多數(shù)據(jù)操作現(xiàn)在能用更短的代碼搞定路呜,這意味著Cortex-M3的代碼密度更高迷捧,也就對(duì)存儲(chǔ)器的需求更少。

? 取指都按32位處理胀葱。同一周期最多可以取出兩條指令漠秋,留下了更多的帶寬給數(shù)據(jù)傳輸。

? Cortex-M3的設(shè)計(jì)允許單片機(jī)高頻運(yùn)行(現(xiàn)代半導(dǎo)體制造技術(shù)能保證100MHz以上的速度)抵屿。即使在相同的速度下運(yùn)行庆锦,CM3的每指令周期數(shù)(CPI)也更低,于是同樣的MHz下可以做更多的工作轧葛;另一方面肥荔,也使同一個(gè)應(yīng)用在CM3上需要更低的主頻。

2.先進(jìn)的中斷處理功能

? 內(nèi)建的嵌套向量中斷控制器支持多達(dá)240條外部中斷輸入朝群。向量化的中斷功能劇烈地縮短了中斷延遲燕耿,因?yàn)椴辉傩枰浖ヅ袛嘀袛嘣础V袛嗟那短滓彩窃谟布缴蠈?shí)現(xiàn)的姜胖,不需要軟件代碼來實(shí)現(xiàn)誉帅。

? Cortex-M3在進(jìn)入異常服務(wù)例程時(shí),自動(dòng)壓棧了R0-R3, R12, LR, PSR和PC右莱,并且在返回時(shí)自動(dòng)彈出它們蚜锨,這多清爽!既加速了中斷的響應(yīng)慢蜓,也再不需要匯編語言代碼了(第8章有詳述)亚再。

? NVIC支持對(duì)每一路中斷設(shè)置不同的優(yōu)先級(jí),使得中斷管理極富彈性晨抡。最粗線條的實(shí)現(xiàn)也至少要支持8級(jí)優(yōu)先級(jí)氛悬,而且還能動(dòng)態(tài)地被修改。

? 優(yōu)化中斷響應(yīng)還有兩招耘柱,它們分別是“咬尾中斷機(jī)制”和“晚到中斷機(jī)制”如捅。

? 有些需要較多周期才能執(zhí)行完的指令,是可以被中斷-繼續(xù)的——就好比它們是一串指令一樣调煎。這些指令包括加載多個(gè)寄存器(LDM)镜遣,存儲(chǔ)多個(gè)寄存器(STM),多個(gè)寄存器參與的PUSH士袄,以及多個(gè)寄存器參與的POP悲关。

? 除非系統(tǒng)被徹底地鎖定谎僻,NMI(不可屏蔽中斷)會(huì)在收到請(qǐng)求的第一時(shí)間予以響應(yīng)。對(duì)于很多安全-關(guān)鍵(safety-critical)的應(yīng)用寓辱,NMI都是必不不可少的(如化學(xué)反應(yīng)即將失控時(shí)的緊急停機(jī))艘绍。

3.低功耗

? Cortex-M3需要的邏輯門數(shù)少,所以先天就適合低功耗要求的應(yīng)用(功率低于0.19mW/MHz)在內(nèi)核水平上支持節(jié)能模式(SLEEPING和SLEEPDEEP位)讶舰。通過使用“等待中斷指令(WFI)”和“等待事件指令(WFE)”鞍盗,內(nèi)核可以進(jìn)入睡眠模式,并且以不同的方式喚醒跳昼。另外般甲,模塊的時(shí)鐘是盡可能地分開供應(yīng)的,所以在睡眠時(shí)可以把CM3的大多數(shù)“官能團(tuán)”給停掉鹅颊。

? CM3的設(shè)計(jì)是全靜態(tài)的敷存、同步的、可綜合的堪伍。任何低功耗的或是標(biāo)準(zhǔn)的半導(dǎo)體工藝均可放心飲用锚烦。

4.系統(tǒng)特性

? 系統(tǒng)支持“位尋址帶”操作(8051位尋址機(jī)制的“威力大幅加強(qiáng)版”),字節(jié)不變的大端模式帝雇,并且支持非對(duì)齊的數(shù)據(jù)訪問涮俄。

? 擁有先進(jìn)的fault處理機(jī)制,支持多種類型的異常和faults尸闸,使故障診斷更容易彻亲。

? 通過引入banked堆棧指針機(jī)制,把系統(tǒng)程序使用的堆棧和用戶程序使用的堆棧劃清界線吮廉。如果再配上可選的MPU苞尝,處理器就能徹底滿足對(duì)軟件健壯性和可靠性有嚴(yán)格要求的應(yīng)用。

5.調(diào)試支持

? 在支持傳統(tǒng)的JTAG基礎(chǔ)上宦芦,還支持更新更好的串行線調(diào)試接口宙址。

? 基于CoreSight調(diào)試解決方案,使得處理器哪怕是在運(yùn)行時(shí)调卑,也能訪問處理器狀態(tài)和存儲(chǔ)器內(nèi)容抡砂。

? 內(nèi)建了對(duì)多達(dá)6個(gè)斷點(diǎn)和4個(gè)數(shù)據(jù)觀察點(diǎn)的支持。

? 可以選配一個(gè)ETM令野,用于指令跟蹤舀患。數(shù)據(jù)的跟蹤可以使用DWT

? 在調(diào)試方面還加入了以下的新特性,包括fault狀態(tài)寄存器气破,新的fault異常,以及閃存修補(bǔ) (patch)操作餐抢,使得調(diào)試大幅簡化现使。

? 可選ITM模塊低匙,測試代碼可以通過它輸出調(diào)試信息,而且“拎包即可入住”般地方便使用碳锈。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末顽冶,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子售碳,更是在濱河造成了極大的恐慌强重,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贸人,死亡現(xiàn)場離奇詭異间景,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)艺智,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門倘要,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人十拣,你說我怎么就攤上這事封拧。” “怎么了夭问?”我有些...
    開封第一講書人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵泽西,是天一觀的道長。 經(jīng)常有香客問我缰趋,道長捧杉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任埠胖,我火速辦了婚禮糠溜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘直撤。我一直安慰自己非竿,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開白布谋竖。 她就那樣靜靜地躺著红柱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蓖乘。 梳的紋絲不亂的頭發(fā)上锤悄,一...
    開封第一講書人閱讀 51,365評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音嘉抒,去河邊找鬼零聚。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的隶症。 我是一名探鬼主播政模,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蚂会!你這毒婦竟也來了淋样?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤胁住,失蹤者是張志新(化名)和其女友劉穎趁猴,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體彪见,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡儡司,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了企巢。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枫慷。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖浪规,靈堂內(nèi)的尸體忽然破棺而出或听,到底是詐尸還是另有隱情,我是刑警寧澤笋婿,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布誉裆,位于F島的核電站,受9級(jí)特大地震影響缸濒,放射性物質(zhì)發(fā)生泄漏足丢。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一庇配、第九天 我趴在偏房一處隱蔽的房頂上張望斩跌。 院中可真熱鬧,春花似錦捞慌、人聲如沸耀鸦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽袖订。三九已至,卻和暖如春嗅虏,著一層夾襖步出監(jiān)牢的瞬間洛姑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來泰國打工皮服, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留楞艾,地道東北人参咙。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像产徊,于是被迫代替她去往敵國和親昂勒。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蜀细,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1.ARM中一些常見英文縮寫解釋 MSB:最高有效位舟铜; LSB:最低有效位; AHB:先進(jìn)的高性能總線奠衔; VPB:...
    Leon_Geo閱讀 638評(píng)論 0 4
  • 8086匯編 本筆記是筆者觀看小甲魚老師(魚C論壇)《零基礎(chǔ)入門學(xué)習(xí)匯編語言》系列視頻的筆記迫横,在此感謝他和像他一樣...
    Gibbs基閱讀 37,198評(píng)論 8 114
  • "你"和"非你" 胡99 2017-11-20 有人說番舆,天上有多少星,地上有多少人矾踱。天上的星...
    99閱讀 319評(píng)論 0 2
  • 我喜歡慵懶的待在咖啡店 我喜歡一動(dòng)不動(dòng)地坐在窗口 我喜歡呆呆的站在馬路口 我喜歡無聲無息地賴在書店 我喜歡看著公交...
    Winners閱讀 144評(píng)論 0 1
  • 喏喏攤坐在床上望著窗子發(fā)呆恨狈,覺得所有生活模式還是如昨日一樣正常。斷了網(wǎng)絡(luò)誰都找不到誰的呛讲,這句話說的一點(diǎn)都沒有錯(cuò)禾怠,時(shí)...
    楠二閱讀 195評(píng)論 0 1