STC單片機和STM32單片機哪個更適合入門?

2021-01-08 愛搗鼓

1、引言

在當今這個模擬電子技術看似被冷落(其實無處不在)和數字電子技術主導的資訊時代,對於剛入電子信息相關專業的大中專學生或需要轉型進入電子產品硬體研發行業的工程師而言,首先面對的第一個問題是:8位的51單片機和32位的基於Cortex-M3內核的STM32單片機哪一個作為電子技術入門的硬體平臺更合適?在綜合收集網上相關信息後,我相信很多剛入行的朋友,都應該被支持51單片機和STM32單片機任一種硬體平臺作為入門的理由搞得不知所措。

我雖不才,但是,也從事硬體研發工作十年之久。因此,我也想從自己的角度給各位剛入行或準備進入電子產品硬體研發行業的工程師和大中專學生一個儘可能全面的參考依據。當然,我發布的言論,也僅僅是代表我個人的觀點,各位朋友如何做出抉擇,依舊要考各位朋友自己斟酌。

由於在國內,STC系列的51單片機市場佔有率最高,參考資料和使用人群眾多,因此,在下文中,我們將以STC單片機作為51單片機的代表。正如,STM32單片機作為基於ARM公司Cortex-M3內核單片機的代表一樣。在這裡STC單片機是51單片機的代表,STM32是基於ARM公司Cortex-M3內核單片機的代表。

2、從易到難的學習規律

我想各位朋友都應該知道學習的基本規律就是:從易到難。無論我們學習任何知識、經驗和技能,都要遵循這個規律,否則,好高騖遠的後果就是:要麼面對重重困難,選擇放棄,或者,從頭再來。

圖1

STC單片機與STM32單片機相比,具備以下優點:

(1)STC單片機內部結構比STM32單片機簡單,便於初學者理解單片機的經典結構。雖然STC單片機和STM32單片機都是哈弗計算機結構,但是,STC單片機的內部結構相對而言,更為簡單。

(2)STC單片機寄存器數量比STM32單片機少了很多很多。STC單片機的寄存器只有幾十個,可是STM32單片機的寄存器有幾百個。兩者完全不在一個數量級上。由於MCS-51、Cortex-M3、Cortex-M4、Cortex-A9、Cortex-A73或者MIPS等等單片機內核及片內外設,都是通過程序操作寄存器實現特定功能的,因此,寄存器數量只有幾十個的STC單片機,相對而言,更容易讓初學者入門學習。

(3)STC單片機採用MCS-51指令集,其彙編指令一百多條,比STM32少了很多很多。相對少的彙編指令集,能夠讓初學者相對快速的了解運算處理器彙編指令的功能、結構與計算機體系結構之間的關係。

(4)最新版本的STC8系列單片機具備下載程序方便和自身就是仿真器的特點,節約初學電子產品設計技術的資金投入,學習開發技術方便快捷。STM32需要單獨購買獨立的Jlink仿真器才可以仿真。

(5)STC單片機具備相對簡單的經典體系結構,使初學者不必花費太多精力在其硬體本身,可以集中精力掌握好後續任何類型單片機開發的基礎語言:C語言。同時,也可以掌握電子產品基本的設計思想、經驗和技能。

因此,綜上所述,根據我們由淺入深和從易到難的學習規律可知:初學電子產品開發技術的工程師和大中專學生,應先學習和掌握採用STC單片機開發電子產品的技能。這是基礎技能。

3、魚和熊掌需依次兼得

STC單片機和STM32單片機都是採用獨立的數據和地址總線訪問數據和程序存儲器的哈弗計算機結構。STC單片機是基於MCS-51內核的8位單片機,STM32是基於Cortex-M3內核的32位單片機。兩者都具備單晶片內集成計算機的核心運算處理器和不同功能的外設。STC單片機和STM32單片機在國內應用都非常廣泛,資料也非常多,入門需要的信息、資源、工具和軟體等等都比較豐富。這兩種晶片的這些特點和現實,決定了當前一個非常重要的現實:硬體研發工程師有必要全部掌握採用STC單片機和STM32單片機開發產品的技能。

4、總結

入門學習建議:學習和掌握採用STC單片機研發產品的思想、知識、經驗和技能。這是硬體研發工程師的基本技能,也是學習32位和64位SOC晶片的基礎。

當前技術發展的現實告訴我們一個現實:硬體研發工程師有必要全部掌握採用STC單片機和STM32單片機開發產品的技能。

愛搗鼓科技

愛搗鼓科技,探索集成電路晶片的科技知識和信息,修煉和分享採用集成電路晶片開發產品的技藝!

相關焦點

  • stm32為什麼短短幾年就佔領了單片機的大半江山?來了解一下
    一、前言還記得12年的時候,當時市場上8位機還很多,尤其51單片機在stc的帶領下,佔據著大片的單片機市場,學單片機大家都用51,大學教材也是以51來入門,雖然此時Atmel系列51單片機已經不太常見了,但國產51任佔據著90%的國內51市場,可謂是51單片機經久不衰,低端8位機市場基本不可替代
  • stm32與pic單片機比較_哪個好
    >   stm32單片機特性   1、內核:ARM32位Cortex-M3CPU,最高工作頻率72MHz,1.25DMIPS/MHz,單周期乘法和硬體除法   2、存儲器:片上集成32-512KB的Flash存儲器。
  • avr單片機和stm32區別與優缺點分析
    摘要:avr單片機和stm32單片機是目前使用較廣泛的單片機,那麼avr單片機和stm32單片機有什麼區別呢?有什麼優劣勢呢?   二、stm32單片機介紹   由ST廠商推出的stm32系列單片機,行業的朋友都知道,這是一款性價比超高的系列單片機,應該沒有之一,功能及其強大。
  • 吃透單片機編程軟體,IAR單片機編程軟體創建stm32工程
    Keil和IAR單片機編程軟體,是當前流通度龐大的兩款單片機編程軟體。而對於單片機編程軟體的使用,各自存在一定區別。本文中,將為大家講解IAR單片機編程軟體建立stm32工程的詳細方法,希望大家通過本文能夠有所收穫哦。
  • 學習單片機,為什麼我建議你從51單片機開始
    因此經過我的教學經驗,如果想開始學習單片機,最好從51單片機開始學起,我都推薦STC系列的51單片機學習。原因就是一句話,因為51系列單片機簡單,學習起來也簡單。但是簡單不代表它功能少,51單片機雖然簡單,但體系是完備的。所以當你學會51單片機,會非常快速入門其它單片機學習。
  • 初次接觸單片機,你會選擇哪款呢
    工科專業的同學,主要課程有c語言、c++、模擬電子、數字電子、電路、彙編等,單片機也是絕大多數,工科專業學生的課程。其實,模擬電子、數字電子、c語言、彙編這些課程,就是為學單片機課程打下基礎。單片機課程涉及到眾多專業知識。總體來說,可以分2類,硬體和軟體。
  • 51單片機、STM32單片機、PIC單片機性能對比
    51單片機 應用最廣泛的8位單片機當然也是初學者們最容易上手學習的單片機,最早由Intel推出,由於其典型的結構和完善的總線專用寄存器的集中管理,眾多的邏輯位操作功能及面向控制的豐富的指令系統,堪稱為一代「經典」,為以後的其它單片機的發展奠定了基礎。
  • STM32單片機編程printf()函數重定向
    在stm32單片機編程中,可以重定向printf()函數來輸出調試信息。編寫fputc()函數其實printf()函數在頭文件中被定義成了一個宏,會調用到fputc()函數,但在stm32單片機編程中不可以直接調用標準庫的fputc()函數進行輸出信息,需要自己編寫fputc()函數供printf()函數來調用。編譯器進行編譯時首先會調用自己編寫的fputc()函數,而不是庫函數。
  • 關於調試stm32和stm8(51單片機)的i2c和spi協議的之間的區別
    在調試STM32的i2c和io口模擬spi協議時發現時序是很關鍵的。stm32在72M運行下可以實現i2c或者spi協議,但並不代表把相同的代碼移植到51單片機上就會成功的跑起來,因為51單片機的速讀最塊8M,所以在時序上會產生很多大的區別。經過測試,在stm32上的spi協議時鐘線可達到20Khz,移植到51後,頻率會降到<10hz。
  • STC單片機免斷電下載程序的另一種更簡單的方法
    看到網上有一些STC單片機免斷電下載程序的例子。但是都是要用串口中斷來完成。}else if(cdd==0x55){ISP_CONTR=0x20; //軟復位,從用戶程序區啟動}else{senddata(cdd);}}else{TI=0;}}另外還要在stc
  • 單片機(STM32)使用ADC,對鋰電池採集思路分析
    我們在開發相關產品過程中,考慮到隨身攜帶,以及方便使用,一般會在設計之初,就會考慮使用鋰電池供電,那麼使用鋰電池供電,就一定要使用到鋰電池電源管理晶片,會硬體和軟體的開發過程,都會對鋰電池的管理,充電,放電,充滿,充電中等狀態能進行檢測。
  • 51/STM32/MSP430/STC/TMS/PIC/AVR,七大主流單片機最全面對比
    個人感覺不容易上手,不適合初學者入門,資料也比較少,只能跑官網去找  2. 佔的指令空間較大,因為是16位單片機,程序以字為單位,有的指令竟然佔6  個字節。低工作功耗CMOS技術,寬工作溫度範圍,噪聲抑制,再加上高性能和豐富的片上外設功能,使TMS370C系列單片機在汽車電子,工業電機控制,電腦,通信和消費類具有一定的應用。  STM32單片機  由ST廠商推出的STM32系列單片機,行業的朋友都知道,這是一款性價比超高的系列單片機,應該沒有之一,功能及其強大。
  • 如何正確的學習STM32單片機
    如何正確的學習STM32單片機?不管學什麼單片機,了解這款晶片的系統結構是必須,而要了解晶片的系統結構,我們必須要閱讀晶片的閱讀書冊。所以學習STM32單片機,兩個手冊是必須認真閱讀的,它們分別是《STM32F103xxx參考手冊》和《STM32固件庫使用手冊》。
  • 51單片機過時了嗎?如何零基礎快速入門?
    本文不敢妄加評論,只是想以一個學習者和愛好者一路走過來的親身經歷告訴關心這個問題的朋友們:51單片機和ARM(本身也是一種單片機)各有自身的優勢與不足,各有各的特點和適用領域,至少在一定的時期,不存在51單片機過時的問題,但隨著技術的飛速發展,沒有什麼技術是永恆不變的。
  • 怎麼學習STM32單片機?看老司機是怎麼說的!
    本文引用地址:http://www.eepw.com.cn/article/201705/359058.htm  我不是說STM32不好,而是這種為了學習單片機而去學習單片機的思路不對。  你問,如何系統地入門學習stm32?  本身就是一個錯誤的問題。假如你會使用8051 , 會寫C語言,那麼STM32本身並不需要刻意的學習。
  • 51單片機玩轉物聯網基礎篇01-開發環境搭建
    前言上至航天,下至兒童玩具,凡事沾一點智能的東西,都離不開單片機的身影......,本文開始,我們學習STC89C52單片機,這款單片機屬於8051系列單片機,51單片機作為入門級單片機不僅在教學實驗中應用廣泛,在實際項目中應用亦是十分廣泛。
  • 玩轉電子DIY,樹莓派和單片機開發板你究竟pick誰?
    說到電子DIY,從工程師到業餘愛好者都不難想到電烙鐵、麵包板、單片機開發板等。隨著科技的發展,開發板的選擇也越來越豐富,近年來,也出現了一方面是以Arduino和樹莓派為首的開源硬體陣營,另一方面,則是以STM32、51和S3C2440為首的傳統單片機開發板陣營。
  • 入門教程03—Microbit和Arduino有什麼關係?
    在Arduino出現前,電子電路板很多都是採用51單片機,stm32單片機呀(即使現在做消費類產品也是),後邊由於Arduino的易用性,Arduino火起來了。Arduino和其它單片機的區別在哪裡。首先從安裝上,以前喵人兒用過一款stc的51單片機。用個過程大概是這樣的,首先你要下載一個編程環境。例如Keil,這個是付費軟體,好吧,你需要PJ。。。
  • 淺談STM32和51單片機之間的區別
    打開APP 淺談STM32和51單片機之間的區別 發表於 2019-01-30 09:36:46 單片微型計算機簡稱單片機,簡單來說就是集
  • 如何編寫STC單片機的ISP協議
    STC單片機包含兩個Flash塊,在一塊Flash中運行的程序可對另一塊Flash進行擦除和重新編程.一般都將ISP程序存放在容量較小的一塊Flash中(Block1),而將用戶代碼存放在容量較大的一塊Flash中(Block0).Block1中的ISP程序對Block0中的用戶代碼進行擦除和重新編程.在做STC單片機解密或是使用的朋友都知道,在STC單片機的程序存儲區後,還有一段大約