STM32的核心Cortex-M3處理器是一個標準化的微控制器結(jié)構(gòu),希望思考一下,何為標準化?簡言之,Cortex-M3處理器擁有32位CPU,并行總線結(jié)構(gòu),嵌套中斷向量控制單元,調(diào)試系統(tǒng)以及標準的存儲映射。
嵌套中斷向量控制器(NestedVectorInterruptController,簡稱NVIC)是Cortex-M3處理器中一個比較關鍵的組件,它為基于Cortex-M3的微控制器提供了標準的中斷架構(gòu)和優(yōu)秀的中斷響應能力,為超過240個中斷源提供專門的中斷入口,而且可以賦予每個中斷源單獨的優(yōu)先級。利用NVIC從可以達到極快的中斷響應速度,從收到中斷請求到執(zhí)行中斷服務的第一條指令僅需12個周期。這種極快的響應速度一方面得益于Cortex-M3內(nèi)核對堆棧的自動處理機制,這種機制是通過固化在CPU內(nèi)部的微代碼實現(xiàn)的。另一方面,在中斷請求連續(xù)出現(xiàn)的情況下,NVIC使用一種稱為“尾鏈”的技術(shù),使連續(xù)而來的中斷可以在6個時鐘周期內(nèi)得到服務。在中斷的壓棧階段,更高優(yōu)先級的中斷可以不耗費任何額外的CPU周期就能完成嵌入低優(yōu)先級中斷的動作。用戶可以通過設置CPU自動進入低功耗狀態(tài),而使用中斷來將其喚醒,CPU在中斷時間來臨之前會一直保持睡眠狀態(tài)。
Cortex-M3的CPU支持兩種運行模式:線程模式(ThreadMode)與處理模式(HandlerMode)并且需要注意的是,這兩種模式都擁有各自獨立的堆棧。這種設計使得開發(fā)人員可以進行更為精密的程序設計,對實時操作系統(tǒng)的支持也就更好了。
Cortex-M3處理器還包含了一個24位可自動重裝載定的定時器,可以為內(nèi)核(RTOS)提供一個周期中斷。在指令集方面,ARM7和ARM9都有兩種指令集(32位指令集和16位指令集),而Cortex-M3系列處理器支持Thumb-2指令集。由于Thumb-2指令集融合了Thumb指令集和ARM指令集,使得32位指令集的性能和16位指令集的代碼密度之間取得了平衡。而且,ARMThumb-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,通用定時器,IC總線接口,SPI總線接口,CAN總線接口,USB控制器,實時時鐘RTC等。但是,它的每一個外部設備都具有獨特之處。例如,12位精度的ADC具備多種轉(zhuǎn)換模式,并帶有一個內(nèi)部溫度傳感器,帶有雙ADC的STM32器件,還可以使兩個ADC同時工作,從而衍生出了更為高級的9種轉(zhuǎn)換模式;STM32的每一個定時器都具備4個捕獲比較單元,而且每個定時器都可以和另外的定時器聯(lián)合工作以生成更為精密的時序;STM32有專門為電機控制而設的高級定時器,帶有6個死區(qū)時間可編程的PWM輸出通道,同時其帶有的緊急制動通道可以在異常情況出現(xiàn)時,強迫PWM信號輸出保持在一個預訂好的安全狀態(tài);SPI接口含有一個硬件CRC單元,支持8位字節(jié)和16位半字數(shù)據(jù)的CRC計算。在對SD或MMC等存儲介質(zhì)進行數(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)核的低功耗模式結(jié)合之后,只有2uA的電流消耗。即便外部振蕩器處在待啟動狀態(tài),STM32使用內(nèi)部8MHZ的RC振蕩器也可迅速退出低功耗模式。這種快速進出低功耗模式的特性,也進一步降低了微控制器整體的功率消耗,同時使微控制器仍然可以保持器件的整體高性能。
在電子領域,對器件的要求精度高是一方面,另一方面,還要求器件穩(wěn)定性要好,處于可靠性的考慮,STM32配備了一系列硬件來支持對可靠性的高度要求。這些硬件有:一個低電壓檢測器,一個時鐘安全管理系統(tǒng)和兩個看門狗定時器。時鐘管理系統(tǒng)可以檢測到外部主振蕩器的失效,并隨即安全的將STM32內(nèi)部8MHZ的RC振蕩器切換為主時鐘源。兩個看門狗定時器中的一個稱為窗口看門狗。窗口看門狗必須在事先定義好的時間上下限到達之前刷新,如果過早或過晚的刷新它,將會觸發(fā)窗口看門狗復位。第二個看門狗稱為獨立看門狗。獨立看門狗使用外部振蕩器驅(qū)動,該振蕩器與主系統(tǒng)時鐘是相互獨立的,這樣即便STM32的主系統(tǒng)時鐘崩潰,獨立看門狗也能“力挽狂瀾”。
在現(xiàn)代電子設計行業(yè)中,有一個問題是無法逃避的,那就是你不得不想方設法提高代碼的安全性以防止被破解人員盜用。聽師傅說,在極難得電子市場,復制一個芯片只需要幾分鐘。STM32可以鎖住其內(nèi)部Flash使破解人員無法通過調(diào)試端口讀取其內(nèi)容。當Flash的讀保護功能開啟后,其寫保護功能也隨之開啟。寫保護功能常用于防止一些來歷不明的代碼寫入中斷向量表。但是,寫保護不僅可以保護中斷向量表,還可以進一步將其保護范圍延伸到整個Flash中的未被使用區(qū)域。另外,STM32還有一小塊電池備份RAM區(qū),這個RAM區(qū)域?qū)谝粋€入侵檢測引腳應用,當這個引腳上產(chǎn)生電平變化時,STM32會認為遭遇了入侵事件,隨即自動將電池備份RAM區(qū)的內(nèi)容全部清除。
目前好多開發(fā)工具都開始支持Thumb-2指令集和STM32系列,即使不支持也沒有關系,我們只需要將軟件升級一下即可。同時,ST公司還提供了一個設備驅(qū)動固件庫和一個USB開發(fā)應用庫,以方便調(diào)用。
對于STM32來說,一些早期微控制器比如早期的STR7和STR9發(fā)布的ANSIC庫和源代碼都是可移植的。這些程序的接口已經(jīng)在許多流行的編譯工具上得到了整合。相似的,許多開源的或者商用的RTOS,還有一些中間件(比如TCP/IP棧,文件系統(tǒng))對以STM32系列微控制器來說也是可用的。
Cortex-M3還帶有一個全新調(diào)試系統(tǒng)CoreSight。用戶可以使用標準的JTAG接口或者雙線串行接口通過調(diào)試端口(DebugAccessPort)實現(xiàn)和CoreSight系統(tǒng)的對接。除了提供調(diào)試運行控制服務之外,STM32上的CoreSight還提供斷點數(shù)據(jù)查看功能以及一個指令跟蹤器。指令跟蹤器可以將用戶選擇的應用信息上傳到調(diào)試工具里。從而可以為用戶提供額外的調(diào)試信息,并且它在軟件運行期間同樣可以使用!
上一篇:基于STM32和S3C6410的無線節(jié)水滴灌自動控制系統(tǒng)
下一篇:STM32 GPIO相關知識點
推薦閱讀
史海拾趣
在汽車制造領域,福特一直是技術(shù)創(chuàng)新的領導者。20世紀60年代,福特開始將電子設備集成到汽車中,包括車載電話、導航系統(tǒng)以及早期的娛樂系統(tǒng)。這些創(chuàng)新不僅提升了駕駛的便捷性和舒適性,也預示著未來汽車電子化、智能化的趨勢。雖然這些技術(shù)并不直接屬于航空通信范疇,但它們展示了福特在電子技術(shù)應用方面的前瞻性和實力。
在電子產(chǎn)品行業(yè)日益關注環(huán)保和可持續(xù)發(fā)展的背景下,ElectronicsCorp采取了一系列積極措施。公司開始使用環(huán)保材料制造產(chǎn)品,并優(yōu)化生產(chǎn)流程以減少能源消耗和廢物排放。此外,ElectronicsCorp還推出了一系列回收計劃,鼓勵消費者將舊電子產(chǎn)品回收再利用。這些措施不僅提高了公司的環(huán)保形象,還增強了消費者對公司品牌的忠誠度。
Conditioning Semiconductor Devices Corp(簡稱CSDC)起初是一家小型半導體公司,專注于研發(fā)低功耗的芯片技術(shù)。隨著智能設備的普及,市場對節(jié)能型半導體的需求激增。CSDC通過不斷的研發(fā)投入,成功開發(fā)了一種全新的低功耗技術(shù),顯著降低了設備的能耗,迅速在市場上獲得認可,從而實現(xiàn)了業(yè)務的快速增長。
自成立以來,ASPEED Technology一直致力于自主創(chuàng)新技術(shù)的研發(fā)與客戶需求的快速響應。公司擁有一支專業(yè)的研發(fā)團隊,不斷推出具有競爭力的新產(chǎn)品和解決方案。同時,ASPEED還積極拓展全球市場,與眾多知名企業(yè)和機構(gòu)建立了合作關系,為公司的發(fā)展奠定了堅實的基礎。正是這種持續(xù)的創(chuàng)新與研發(fā)精神,使得ASPEED在電子行業(yè)中不斷發(fā)展壯大,成為了一家備受矚目的企業(yè)。
以上五個故事均基于ASPEED Technology公司發(fā)展起來的相關事實,展現(xiàn)了公司在并購、產(chǎn)品創(chuàng)新、合作研發(fā)等方面的努力和成果。這些故事不僅反映了ASPEED在電子行業(yè)中的成長軌跡,也展示了其不斷追求卓越、推動行業(yè)發(fā)展的決心和實力。
在成功推出首款產(chǎn)品后,DEMMELPRODUCTS公司開始積極拓展市場。公司管理層敏銳地捕捉到全球化的發(fā)展趨勢,積極尋求與國際知名企業(yè)的合作機會。通過與跨國公司的技術(shù)交流和項目合作,DEMMELPRODUCTS公司的產(chǎn)品逐漸進入國際市場,并獲得了良好的口碑。同時,公司還積極參加國際電子展會和論壇,提升品牌知名度和影響力。
在追求高性能與業(yè)務和諧的道路上,Cavium Networks 與 Wind River 公司展開了深度合作。兩家公司共同制定了長期的產(chǎn)品研發(fā)路線,Wind River 為 Cavium 的 OCTEON II 等多核處理器提供了商業(yè)級支持。通過合作,雙方共同調(diào)整和優(yōu)化了領先的多核硬件和軟件解決方案,為用戶提供了世界領先的多核解決方案。這一合作不僅提升了 Cavium Networks 的技術(shù)實力和市場地位,也推動了整個電子行業(yè)的發(fā)展。
pxa270,wince5.0,由于硬件連接不同,修改了PCMCIA的驅(qū)動,插入aircard 555r cdma無線卡,彈出對話框“未經(jīng)確定的適配器”,要求寫入驅(qū)動的名稱,打印信息看程序,一直在DWORD CPcmciaBusBridge::ThreadRun()這個函數(shù)里運行。 有幾個問題: 1、 ...… 查看全部問答∨ |
哪位大俠有Windows Automotive UI Toolkit 哪位大俠有Windows Automotive UI Toolkit,是一個開發(fā)包,不知道哪里能下載到,想學習一下… 查看全部問答∨ |
make: *** No rule to make target `vxWorks.h\', needed by `*.o\'. Stop. 一開始沒有問題,后來才這樣的。重新建工程,重新添加文件。都不行。。 請問各位大哥是什么原因,怎么解決?… 查看全部問答∨ |
|
這個會是第一個版本,下一個版本會對程序優(yōu)化加強功能,并且制作上位機,敬請期待。其實這個也是一個一個新用戶的體驗,大概講一下怎么用lib用開發(fā)你自己的應用。 首先說一下做這個的原因,剛好之前想做一個開門器,所以手頭有一個RFID的讀卡模塊 ...… 查看全部問答∨ |
|
如題,看資料上講把flash分塊,第一塊放啟動代碼,后邊的塊放核心,在后邊放跟文件系統(tǒng)。 bootloader不也是放在flash的最開始的位置嗎?所以問系統(tǒng)的啟動代碼和bootloader是不是一個東西,多謝啦… 查看全部問答∨ |
quartus11.1調(diào)用modelsim-altera10.0c仿真不出波形 大家好,我最近在學習FPGA,用quartus11.1調(diào)用modelsim-altera10.0c仿真不出波形,quartus里面需要設置的都設置好了,并且跟網(wǎng)上下的資料做了多次對比,覺得設置沒問題。用quartus11.1調(diào)用modelsim-altera10.0c,仿真不出波形仿真的結(jié)果圖如圖 ...… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- 保障工業(yè)核心命脈:深度解讀工業(yè)交換機QoS的“智能流量治理”之道
- WAIC 直擊|Arm 鄒挺:突破基礎設施、數(shù)據(jù)安全與人才三重挑戰(zhàn),釋放 AI 發(fā)展新潛能
- 鎧俠第九代 BiCS FLASH? 512Gb TLC 存儲器開始送樣
- 基于PPEC32系列芯片的10kW純正弦波車載逆變器應用方案
- 新唐科技推出全新KM1M4BF6x系列單電機控制MCU
- 伺服電機中的回原點方式
- 芯科集成CX3288系列車規(guī)MCU在旋轉(zhuǎn)變壓器的應用
- AI玩具DC-DC芯片,安全與成本雙突圍
- 訂單暴增800%!消費芯片新風口:東北裝空調(diào)
- 機器人也能純視覺控制?MIT華人博士團隊登上Nature主刊
- 安世半導體理想二極管與負載開關,保障物聯(lián)網(wǎng)應用的穩(wěn)健高效運行
- 有獎直播 | 羅徹斯特電子為您細說:半導體停產(chǎn)后的挑戰(zhàn)與解決方案
- 【已結(jié)束】直播“戴”“芯”:英飛凌可穿戴設備保姆級解決方案
- 答題贏獎:日圖科技低功耗測試系統(tǒng)介紹
- 下載汽車電氣化精品文章,贏【體脂秤、羅技鼠標、手持風扇】,開啟MPS汽車技術(shù)進階之旅!
- 羅姆有獎直播 | 高輸出功率激光二極管—助力激光雷達性能提升
- 有獎直播|TI 使用 DLP® 微型投影技術(shù)設計增強現(xiàn)實智能眼鏡
- ST工業(yè)峰會開啟報名中?。?0月29日,深圳)