stm32屬於arm嗎_arm和stm32的區別

2021-01-06 電子發燒友
打開APP
stm32屬於arm嗎_arm和stm32的區別

發表於 2017-10-10 11:34:35

       stm32屬於arm嗎?在回答這個問題前,我們先來看下STM32和ARM的定義。

  STM32是基於ARM® Cortex® M 3處理器內核的 32位快閃記憶體微控制器,為MCU用戶開闢了一個全新的自由開發空間,並提供了各種易於上手的軟硬體輔助工具。STM32 MCU融高性能、實時性、數位訊號處理、低功耗、低電壓於一身,同時保持高集成度和開發簡易的特點。業內最強大的產品陣容,基於工業標準的處理器,大量的軟硬體開發工具,讓STM32單片機成為各類中小項目和完整平臺解決方案的理想選擇。按內核架構分為不同產品系列。

  ARM本意是微處理器行業的一家知名企業,英國ARM公司是全球領先的半導體智慧財產權 (IP) 提供商。全世界超過95%的智慧型手機和平板電腦都採用ARM架構。ARM設計了大量高性價比、耗能低的RISC處理器、相關技術及軟體。在智能機、平板電腦、嵌入控制、多媒體數字等處理器領域擁有主導地位。

  在此ARM指的是ARM處理器。ARM處理器是英國Acorn有限公司設計的低功耗成本的第一款RISC微處理器。全稱為Acorn RISC Machine。ARM處理器本身是32位設計,但也配備16位指令集,一般來講比等價32位代碼節省達35%,卻能保留32位系統的所有優勢。ARM處理器的三大特點是:耗電少功能強、16位/32位雙指令集和合作夥伴眾多。

  1、體積小、低功耗、低成本、高性能;

  2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;

  3、大量使用寄存器,指令執行速度更快;

  4、大多數數據操作都在寄存器中完成;

  5、尋址方式靈活簡單,執行效率高;

  6、指令長度固定。

  ARM處理器核當前有6個系列產品ARM7, ARM9, ARM9E, ARM10E, SecurCore以及最新的ARM11系列。而stm32使用的就是其中的Cortex-M3內核。

  就一般來看,STM32屬於高性能的單片機,一般運用的場合多為應用控制,它主要是和51,AVR等競爭低端單片機市場,優勢在於處理速度相對較高(F4現在最高180M),片上資源較為豐富。ARM的話,一般人們說ARM都是指的片上系統,如果把ARM當單片機用,性價比是不夠高的。

stm32屬於arm嗎?

  此前的arm7能效低,arm9的硬體和編程太複雜,所以為了滿足消費電子的要求而改進arm7,代號為cortex-m,這樣st或nxp等廠家以這個新的核心來加自己的外設就得到了stm32或lpc系列的單片機了。

        總而言之,STM32是基於ARM Cortex-M3內核的,但是不是屬於ARM 。stm32使用cortex-m構架,而cortex-m是arm7的增強改進型,所以也可以算是屬於arm的一個分支。

  STM32的內核是ARM推出的基於專為要求高性能、低成本、低功耗的嵌入式應用專門設計的ARM Cortex-M3內核。STM32是ARM7架構中的一員。

  stm32開發難度介於ARM7跟ARM9之間,功能比一般的ARM7強,跟ARM9相比主要是性價比高,外設多接口方便,還有功耗低。

stm32和arm7的區別_arm和stm32的區別

  很多網友覺得ARM7會被STM32取代,STM32偏向不帶系統的工業控制,外圍設備甚至比ARM7、ARM9更豐富,而ARM7帶不了大系統,想帶系統至少也要從ARM9開始。要麼直接上ARM9學學系統,下面我們把兩者的區別做了詳細對比。

  STM32是現在市場上性價比非常高的一款ARM產品,使用的是Cortex-M3內核,在同等價位下,其內部資源比51要豐富更多。STM32同系列的產品,在軟體和硬體上兼容性很好,尤其是從PIN腳少的晶片更換為PIN腳多的晶片的時候,代碼都無需修改就能直接應用。

  而從開發角度來講,STM32比51的編程更加簡單,廠家的工程代碼中提供了很多的庫函數來操作GPIO,UART,SPI,AD,TIMER等資源,不需要像51一樣去記憶各個特殊寄存器的屬性和用途。

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • STM32學習之路(二)——MDK-ARM開發過程簡介
    一,準備MDK-ARM+JLINK+STM32軟體包1,在arm%2F200908%2F505.html" rel="nofollow">http://www.mcu123.com/
  • stm32為什麼短短幾年就佔領了單片機的大半江山?來了解一下
    ,arm9等,各種單片機都「安分守己,各守其位,一片祥和」,可是到了14年,當我再次進行單片機開發的時候,發展stm32非常火爆了,企業都在用stm32來做開發,曾經用8位機開發的產品大部分轉而用stm32開發,曾經只能用arm9能做的產品,現在stm32照樣可以做,而且做起來比arm9+linux簡單,讓我實在是又驚喜又嘆息,驚喜的是可以用性能更為強勁的mcu,嘆息的是我曾經學的51已無用武之地了
  • ARM DS-5開發STM32程序(Eclipse配合Keil插件使用)
    http://pan.baidu.com/s/1mgHX2JY補充:社區版激活代碼:http://ds.arm.com/zh-cn/ds-5-community-edition/getting-started/3.運行DS-5安裝Keil插件安裝好Keil插件後只是使用了Keil的調試和下載功能,真正與DS-5合體需要在Eclipse
  • JFlash ARM對stm32程序的讀取和燒錄
    關鍵字:JFlash  ARM  stm32程序  讀取和燒錄 編輯:什麼魚 引用地址:http://news.eeworld.com.cn/mcu/2019/ic-news021343192.html
  • 關於調試stm32和stm8(51單片機)的i2c和spi協議的之間的區別
    在調試STM32的i2c和io口模擬spi協議時發現時序是很關鍵的。stm32在72M運行下可以實現i2c或者spi協議,但並不代表把相同的代碼移植到51單片機上就會成功的跑起來,因為51單片機的速讀最塊8M,所以在時序上會產生很多大的區別。經過測試,在stm32上的spi協議時鐘線可達到20Khz,移植到51後,頻率會降到<10hz。
  • IAR STM32 函數和變量的絕對地址定位
    昨天我突然冒出個想法,能否利用函數和變量的絕對定位,實現程序的模塊化更新。也就是說,如果我要改變某個函數,只需要更新flash裡面一個局部,也許只需要更新幾百個字節,而無須重新下載整個上百K的程序。經過查找資料和反覆實驗,終於實現了,現總結如下:1) 把函數定位在FLASH高端的指定位置,以後更新,只更新那小塊地方就可以了。方法一: IAR裡面進行函數定位, 必須要在.icf裡面,進行定義。
  • avr單片機和stm32區別與優缺點分析
    摘要:avr單片機和stm32單片機是目前使用較廣泛的單片機,那麼avr單片機和stm32單片機有什麼區別呢?有什麼優劣勢呢?   二、stm32單片機介紹   由ST廠商推出的stm32系列單片機,行業的朋友都知道,這是一款性價比超高的系列單片機,應該沒有之一,功能及其強大。
  • STM32關於GPIO的問題
    問:stm32中GPIO口的最大輸出速度如何理解?答:1、是這樣的,2M、10M和50M是指GPIO口的採樣頻率。不知這樣理解對不對,我就是這樣做的。 2、我通過PB6採集80KBPS/S的方波,通過中斷計採集,完全勝任。9、STM32 GPIO 弱上拉能做輸入輸出嗎問:STM32 GPIO 弱上拉能做輸入輸出嗎?答:32隻有上拉輸入,用在外部連接的是下路輸出的,這樣才能正確讀取。
  • 關於ARM MDK使用STM32F4xx 硬體浮點單元的話題
    包含arm_math.h頭文件。 b. 在工程選項的C/C++選項卡的define 中繼續加入語句ARM_MATH_CM4。 c. 在工程選項的C/C++選項卡的define 中繼續加入語句__CC_ARM。
  • STM32讀保護功能和清除讀保護功能設置
    1、STM32對內部Flash的保護措施所有STM32的晶片都提供對Flash的保護,防止對Flash的非法訪問 - 防寫和讀保護。
  • 吃透單片機編程軟體,IAR單片機編程軟體創建stm32工程
    Keil和IAR單片機編程軟體,是當前流通度龐大的兩款單片機編程軟體。而對於單片機編程軟體的使用,各自存在一定區別。本文中,將為大家講解IAR單片機編程軟體建立stm32工程的詳細方法,希望大家通過本文能夠有所收穫哦。
  • 使用ST-Link Utility去除STM32晶片讀防寫
    在ubuntu下利用eclipse搭建stm32開發環境和st-link調試 一、下載eclipse:我們選擇的工具為Eclipse
  • linux上搭建stm32開發環境 vscode+gcc+stm32cubeMX 和 vscode+...
    :sudo apt-get install gcc-arm-none-eabisudo apt-get install gdb-arm-none-eabi  或 手動下載安裝:https://launchpad.net/gcc-arm-embedded/+download( 補充:VSCode的PlatformIO
  • STM32編程與51編程一樣嗎?區別是什麼?
    當代單片機系統已經不再只在裸機環境下開發和使用,大量專用的嵌入式作業系統被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單片機甚至可以直接使用專用的Windows和Linux作業系統。
  • STLINK-V3SET|用於STM32 / STM8的在線程式開發工具和燒錄器
    微控制器的模塊化獨立調試和編程。它由一個主模塊和一個互補的適配器板組成。SWIM和JTAG / SWD接口用於與應用板上的任何STM8或STM32微控制器進行通信。STLINK-V3SET還提供了一個虛擬COM埠接口,允許主機PC通過一個UART與目標微控制器進行通信,還提供了橋接接口(例如SPI,I2C,CAN,GPIO),可以通過引導加載程序bootloader對目標進行編程。
  • STM32單片機的定時器和ADC的應用方法介紹
    主要的幾個函數 //tim_num=0對應 定時器2,tim_num=1對應 定時器3;tim_us:定時器uS數 void stm32_timer_start(uint16_t tim_num { PCLK1=36MHz TIM CLK = 72 MHz, Prescaler = 72, 72M/72=1M,即計數1000000為1S,即計數加1為1uS /* Time base configuration */ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; stm32