一、基礎介紹
Cortex-M3是英特爾公司ARM全套Cortex-M型處理器中功能最強大的一種。它的最大特點就是具備良好的低功耗性能和極高的性價比。作為重新設計過的ARM Cortex-R4中斷延遲時間更短的處理器,Cortex-M3完美地平衡了性能和功耗之間的關係。此外,它還具備著板載器的斷電模式,可以單獨地控制內部的外設,在系統從一個低功耗模式到運行狀態轉換時有效地減小功耗。
Cortex-M3還擁有一些特殊的處理單元來處理特定的任務,比如內存保護單元(MPU)和越界異常檢測單元(FPD)等。同時,它還集成了一個強大的調試器,保證了開發過程的順暢進行。
Cortex-M3的主要技術參數如下表:
參數名稱 | 參數值 |
---|---|
CPU頻率 | up to 120MHz |
代碼密度 | 最長指令32位,最短指令16位 |
SRAM/FALSH/MIBI大小 | Up to 512KB/Up to 1MB/Up to 4MB |
斷電模式 | 睡眠模式,靜態模式,停機模式 |
二、Cortex-M3在嵌入式系統中的應用
Cortex-M3通常應用於高值物品追蹤、汽車輪胎壓力監測等注重安全性、穩定性和實時性的領域。由於Cortex-M3是一種低功耗型CPU,它非常適合於解決電池續航能力的問題,比如手錶、智能家居等。此外,Cortex-M3還適用於以下領域:
1. 汽車電子
在汽車電子系統中,Cortex-M3的高精度定時器和內存保護單元(MPU)等內置功能能夠有效地幫助設計者實現更精準的數據採集和更安全的數據處理。
2. 工業工程設備
在工業工程設備領域,Cortex-M3的強大的計算和存儲能力能夠幫助工程師更高效地進行數據處理和演算法編寫,幫助工廠合理配置資源,並且有效地實現人員、物品管理。
3. 安防系統
在安防系統中,Cortex-M3的低功耗性能能夠延長系統的運行時間,並且實時處理採集的數據,並根據數據給出相應的報警提示,提高系統的精度。
三、Cortex-M3與其它架構的比較
1. Cortex-M3 與Cortex-M0+
Cortex-M3是比Cortex-M0+更高端的嵌入式處理器, 它具有更大的存儲器(128KB~256KB),更高的時鐘頻率(100MHz~120MHz),更多的匯流排帶寬 ,更快的執行速度,以及更強的處理能力和應付更加複雜應用場景的需求。
2. Cortex-M3 與Cortex-M4
Cortex-M3和Cortex-M4都是屬於 具備硬體浮點運算能力的Cortex-M系列,以實現快速的可靠的實時運算和處理。Cortex-M3適合於應用界面存儲器足夠的嵌入式應用場景。而Cortex-M4和Cortex-M3相比,則主要優勢在於浮點運算的加速。
四、常式
以下是一個簡單的Cortex-M3實現時鐘初始化的代碼:
void CLK_init(void) { //設置系統時鐘到最大的值 //FOSC = FCPU *(PLL +1) = 8M *(9+1) = 80Mhz //CLK_DIVR: CPUDIV(CLK_DIVR_CPUDIV) = 0(不分頻) CLK_DeInit(); CLK_HSICmd(ENABLE); CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSI, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE); CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1); CLK_SYSCLKConfig(CLK_SYSCLKSOURCE_HSI); }
以上就是一個簡單的時鐘初始化程序的代碼示例。我們可以在此基礎上進行開發。同時當我們把Cortex-M3嵌入實際系統時,還需要特別關注安全性和穩定性方面的設計和實現。
原創文章,作者:MYONN,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/349284.html