stm32的簡介。

  STM32的核心Cortex-M3處理器是一個標準化的微控制器結構,希望思考一下,何為標準化?簡言之,Cortex-M3處理器擁有32位CPU,并行總線結構,嵌套中斷向量控制單元,調(diào)試系統(tǒng)以及標準的存儲映射。

  嵌套中斷向量控制器(Nested Vector Interrupt

Controller,簡稱NVIC)是Cortex-M3處理器中一個比較關鍵的組件,它為基于Cortex-M3的微控制器提供了標準的中斷架構和優(yōu)秀的中斷響應能力,為超過240個中斷源提供專門的中斷入口,而且可以賦予每個中斷源單獨的優(yōu)先級。利用NVIC從可以達到極快的中斷響應速度,從收到中斷請求到執(zhí)行中斷服務的第一條指令僅需12個周期。這種極快的響應速度一方面得益于Cortex-M3內(nèi)核對堆棧的自動處理機制,這種機制是通過固化在CPU內(nèi)部的微代碼實現(xiàn)的。另一方面,在中斷請求連續(xù)出現(xiàn)的情況下,NVIC使用一種稱為“尾鏈”的技術,使連續(xù)而來的中斷可以在6個時鐘周期內(nèi)得到服務。在中斷的壓棧階段,更高優(yōu)先級的中斷可以不耗費任何額外的CPU周期就能完成嵌入低優(yōu)先級中斷的動作。具體的細節(jié)后面我會繼續(xù)總結的。用戶可以通過設置CPU自動進入低功耗狀態(tài),而使用中斷來將其喚醒,CPU在中斷時間來臨之前會一直保持睡眠狀態(tài)。這個后面我也會再總結。

  Cortex-M3的CPU支持兩種運行模式:線程模式(Thread Mode)與處理模式(Handler

Mode)并且需要注意的是,這兩種模式都擁有各自獨立的堆棧。這種設計使得開發(fā)人員可以進行更為精密的程序設計,對實時操作系統(tǒng)的支持也就更好了。

  Cortex-M3處理器還包含了一個24位可自動重裝載定的定時器,可以為內(nèi)核(RTOS)提供一個周期中斷。

  在指令集方面,ARM7和ARM9都有兩種指令集(32位指令集和16位指令集),而Cortex-M3系列處理器支持Thumb-2指令集。由于Thumb-2指令集融合了Thumb指令集和ARM指令集,使得32位指令集的性能和16位指令集的代碼密度之間取得了平衡。

  而且,ARM Thumb-2 專門為C/C++編譯器設計,這就意味著Cortex-M3系列處理器的開發(fā)應用可以全部在C語言環(huán)境中完成。

  STM32微控制器的推出標志著ST公司在兩條產(chǎn)品主線(低價位主線和高性能主線)上邁出了重大一步。STM32最初發(fā)布時有14個不同型號,分為兩個版本:最高CPU時鐘為72MHZ的“增強型”和最高CPU時鐘為36MHZ的“基本型”。這些不同STM32型號里內(nèi)置的Flash最大可達128KB,SRAM最大為20KB,在STM32發(fā)布之初,配置更大Flash,RAM和更復雜外設的版本就已經(jīng)在規(guī)劃之中了。不管是什么版本,什么型號的STM32器件,它們在引腳功能和應用軟件上是兼容的。這就使得開發(fā)人員在使用STM32系列微控制器時,不必改動PCB就可以根據(jù)需要隨意更換器件型號。

  乍一看STM32的設備配備,與往日熟悉的51單片機倒有幾分相似。一般,STM32都會配備常見外設,諸如多通道ADC,通用定時器,I2C總線接口,SPI總線接口,CAN總線接口,USB控制器,實時時鐘RTC等。但是,它的每一個外部設備都具有獨特之處。例如,12位精度的ADC具備多種轉換模式,并帶有一個內(nèi)部溫度傳感器,帶有雙ADC的STM32器件,還可以使兩個ADC同時工作,從而衍生出了更為高級的9種轉換模式;STM32的每一個定時器都具備4個捕獲比較單元,而且每個定時器都可以和另外的定時器聯(lián)合工作以生成更為精密的時序;STM32有專門為電機控制而設的高級定時器,帶有6個死區(qū)時間可編程的PWM輸出通道,同時其帶有的緊急制動通道可以在異常情況出現(xiàn)時,強迫PWM信號輸出保持在一個預訂好的安全狀態(tài);SPI接口含有一個硬件CRC單元,支持8位字節(jié)和16位半字數(shù)據(jù)的CRC計算。在對SD或MMC等存儲介質進行數(shù)據(jù)存取時相當有用。

  而且,STM32還包含了7個DMA通道。沒惡搞通道都可以用來在設備與內(nèi)存之間進行8位,16位,32位數(shù)據(jù)的傳輸。每個設備都可以向DMA控制器請求發(fā)送或者接收數(shù)據(jù)。STM32內(nèi)部總線仲裁器和總線矩陣將CPU數(shù)據(jù)接口和DMA通道之間的連接大大的簡化了,這就意味著DMA通道單元是很靈活的其使用方法簡單,足以應付微控制器應用中常見的數(shù)據(jù)傳輸要求。

  我們前面說過了,STM32是低功耗,高性能的微控制器。在低功耗方面,STM32表現(xiàn)也是不錯的。它可以在2V供電的情況下運行,在所有設備同時打開且運行在滿速72MHZ主頻的情況下,也僅消耗36mA的電流,在與Cortex-M3內(nèi)核的低功耗模式結合之后,只有2uA的電流消耗。即便外部振蕩器處在待啟動狀態(tài),STM32使用內(nèi)部8MHZ的RC振蕩器也可迅速退出低功耗模式。這種快速進出低功耗模式的特性,也進一步降低了微控制器整體的功率消耗,同時使微控制器仍然可以保持器件的整體高性能。

  在電子領域,對器件的要求精度高是一方面,另一方面,還要求器件穩(wěn)定性要好,處于可靠性的考慮,STM32配備了一系列硬件來支持對可靠性的高度要求。這些硬件有:一個低電壓檢測器,一個時鐘安全管理系統(tǒng)和兩個看門狗定時器。時鐘管理系統(tǒng)可以檢測到外部主振蕩器的失效,并隨即安全的將STM32內(nèi)部8MHZ的RC振蕩器切換為主時鐘源。兩個看門狗定時器中的一個稱為窗口看門狗。窗口看門狗必須在事先定義好的時間上下限到達之前刷新,如果過早或過晚的刷新它,將會觸發(fā)窗口看門狗復位。第二個看門狗稱為獨立看門狗。獨立看門狗使用外部振蕩器驅動,該振蕩器與主系統(tǒng)時鐘是相互獨立的,這樣即便STM32的主系統(tǒng)時鐘崩潰,獨立看門狗也能“力挽狂瀾”。

  在現(xiàn)代電子設計行業(yè)中,有一個問題是無法逃避的,那就是你不得不想方設法提高代碼的安全性以防止被破解人員盜用。聽師傅說,在極難得電子市場,復制一個芯片只需要幾分鐘。STM32可以鎖住其內(nèi)部Flash使破解人員無法通過調(diào)試端口讀取其內(nèi)容。當Flash的讀保護功能開啟后,其寫保護功能也隨之開啟。寫保護功能常用于防止一些來歷不明的代碼寫入中斷向量表。但是,寫保護不僅可以保護中斷向量表,還可以進一步將其保護范圍延伸到整個Flash中的未被使用區(qū)域。另外,STM32還有一小塊電池備份RAM區(qū),這個RAM區(qū)域對應于一個入侵檢測引腳應用,當這個引腳上產(chǎn)生電平變化時,STM32會認為遭遇了入侵事件,隨即自動將電池備份RAM區(qū)的內(nèi)容全部清除。

  目前好多開發(fā)工具都開始支持Thumb-2指令集和STM32系列,即使不支持也沒有關系,我們只需要將軟件升級一下即可。同時,ST公司還提供了一個設備驅動固件庫和一個USB開發(fā)應用庫,以方便調(diào)用。對于STM32來說,一些早期微控制器比如早期的STR7和STR9發(fā)布的ANSI

C庫和源代碼都是可移植的。這些程序的接口已經(jīng)在許多流行的編譯工具上得到了整合。相似的,許多開源的或者商用的RTOS,還有一些中間件(比如TCP/IP棧,文件系統(tǒng))對以STM32系列微控制器來說也是可用的。

  Cortex-M3還帶有一個全新調(diào)試系統(tǒng)CoreSight。用戶可以使用標準的JTAG接口或者雙線串行接口通過調(diào)試端口(debug Access

Port)實現(xiàn)和CoreSight系統(tǒng)的對接。除了提供調(diào)試運行控制服務之外,STM32上的CoreSight還提供斷點數(shù)據(jù)查看功能以及一個指令跟蹤器。指令跟蹤器可以將用戶選擇的應用信息上傳到調(diào)試工具里。從而可以為用戶提供額外的調(diào)試信息,并且它在軟件運行期間同樣可是他們2以使用!

stm32的基礎知識,點擊下方鏈接進行學習,了解更多的stm32加QQ群1090492304

http://www.makeru.com.cn/live/4034_2561.html?s=165154

基于STM32物聯(lián)網(wǎng)項目WebServer+Zigbee組網(wǎng)開發(fā)

http://www.makeru.com.cn/live/4034_2435.html?s=165154

學了這么久,物聯(lián)網(wǎng)操作系統(tǒng)你整明白沒?

http://www.makeru.com.cn/live/4034_2420.html?s=165154

萬物智聯(lián),物聯(lián)網(wǎng)終端設備如何交流?

(stm32 USART串口應用)?????????????????????????????????????????????????????????????????????????

http://www.makeru.com.cn/live/1392_1164.html?s=165154

PWM脈寬調(diào)制技術

http://www.makeru.com.cn/live/4034_2146.html?s=165154

基于STM32講解串口操作

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,443評論 6 532
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,530評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 176,407評論 0 375
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,981評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,759評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,204評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,263評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,415評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,955評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,782評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,528評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,222評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,650評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,892評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,675評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,967評論 2 374