<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

      先學51還是先學STM32?STM32和51單片機的區別

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2022-11-15

      之前無際在網上看了一些老工程師給初學者的一些建議。

      其中一個就是新手可不可以直接跳過51單片機學習STM32。

      很多無知的老鳥教唆初學者說51已經過時了,建議直接學STM32單片機。

      如果新手信了他的邪,能學會才怪!

      當他說出51過時的時候,我就知道這個人是個外行。

      所以在信息爆炸的時代,如何學會去甄別哪些是對的,哪些是錯的特別重要,方向不對毀一生!

       

      創客海社區一直提倡初學者從51開始學習,目的在于讓大家能對單片機的原理有一個深入的理解。51和STM32僅僅是單片機選型的性能上的區別,并不代表了技術水平和能力。

      51單片機是通過C語言或者匯編語言配置寄存器來控制外設,實際上目前大多數單片機都是這樣做的,區別就是寄存器不一樣,51單片機內的寄存器數量非常少,比較容易入手。

      STM32單片機可以通過C語言來配置寄存器來控制外設,但是STM32實際上有數千個左右的寄存器,如果用51單片機的學習方式會效率非常低下。所以要用到庫函數這種直接調用的黑盒式編程方式,而無需了解深層原理。

      單片機的領域是相通的,當我們懂了其中一種以后,其他的都是大同小異。但是51單片機更多的是學會了單片機內層的深層工作原理,可以直觀看到C語言、匯編語言、機器語言的差異,能學到沒有黑盒的知識。如果式有51單片機基礎的學生再應用其它的單片機會很得心應手。但是如果上來就學習STM32,可能不是很好理解單片機的底層原理,對于更換其它的單片機有些難度。

       

      一、51和stm32單片機的區別

      Intel 8051 單片機 

      Intel 8051 單片機

      STM32F103C8T6單片機 
      STM32F103C8T6


      51和stm32的區別還是挺大的,51是屬于低端單片機,stm32算是中高端單片機了,他們面向的產品也不一樣,真要區別,一篇文章遠遠不夠。

      這里只說對我們開發息息相關的。

      1. 內核

      51是Intel的8051的內核架構,而STM32有Cortex-M1/M2/M3/M4/M7/M33這么多內核版本,像我們常用的STM32F1系列就是Cortex-M3的內核。

      2. 資源

      51是入門級單片機,各方面資源都不如stm32,比如說主頻、ROM、RAM、IO口、外設資源。

      3. 開發模式不同

      51是直接操作寄存器使用外設,而stm32是直接調用庫函數使用外設,相對51開發更加效率。

      4. 操作系統

      51只能運行Tiny51微型任務調度操作系統;而stm32可以跑主流的RTOS比如uCOS、FreeRTOS、RTthread、CoOS、Nuttx,但是依然不足以運行Linux操作系統。

      5. 后期維護

      傳統的51不能通過代碼來自我燒寫內部固件,需要專用的下載電路下載整個固件。

      而STM32可以通過編寫自舉方式的程序來編輯內部下載好了的固件,如果軟件有bug,可以通過更新固件實現,直接升級程序解決。

      6. 開發環境

      51和STM32都可以用Keil或者IAR開發,但是版本不同,比如51是Keil-C51,STM32是MDK-ARM。這是因為CPU內核的指令集不同。

      除了Keil、IAR以外的編譯器還有GCC編譯器、可配套的編輯器有Code::Blocks、VScode、eclipse等等。

      7. 程序架構

      資源很緊張的51單片機,產品開發時一般以功能實現為主,不會考慮程序架構可擴展性和可移植性,因為ROM和RAM不允許。而STM32有充足的空間做容錯機制。

      8. 難易度

      STM32雖然是通過庫函數就能把芯片外設用起來,但是學不到最底層的原理,代碼高度封裝。開發難度卻比51難很多,因為STM32的資源豐富,涉及的技術點就多。

       

      所以,兩者廠家對芯片的定位不同,51除了偏向低端產品以外,開發也更接近底層。

      而STM32的定位是幫助工程師快速做出產品。

      基于這些特點,如果你剛開始就直接去STM32的話,會有很多基礎知識的缺失。

      導致你學起來比較吃力,很多東西也掌握不透,在學習的過程中會很痛苦,覺得這玩意太難了。

      一般有51基礎,并且做過一些小項目,學習STM32會快很多。也不用系統地把所有外設都學習一遍,最好的方法就是通過項目去學習,項目用到什么外設,就相應去看這個外設怎么開起來。

      基本上一個項目下來,你就能掌握STM32了,其實歸根到底就是把它當做一個工具熟悉而已。

      Tags:51單片機,單片機,STM32  
      責任編輯:admin
    4. 上一篇文章:
    5. 下一篇文章: 沒有了
    6. 請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 亚洲综合一区无码精品| 熟天天做天天爱天天爽综合网| 香蕉尹人综合在线观看| 亚洲日韩在线中文字幕综合| 天天做天天爱天天综合网| 91精品国产91久久综合| 99久久综合狠狠综合久久aⅴ| 色综合色狠狠天天综合色| 天天做天天爱天天爽综合区| 亚洲综合区图片小说区| 狠狠做深爱婷婷综合一区| 亚洲国产日韩综合久久精品| 伊人久久大香线蕉综合爱婷婷| 天天影视综合网色综合国产| 国产成人精品综合久久久| 涩涩色中文综合亚洲| 91探花国产综合在线精品| 国产综合精品久久亚洲 | 加勒比色综合久久久久久久久 | 狠狠色丁香婷婷综合久久来来去| 狠狠色综合色综合网络| 色婷婷综合久久久久中文字幕| 久久久亚洲裙底偷窥综合| 久久婷婷综合中文字幕| 国产AV综合影院| 一本大道道无香蕉综合在线| 天天躁日日躁狠狠躁综合| 一本色道久久88—综合亚洲精品 | 综合欧美五月丁香五月 | 色噜噜狠狠狠综合曰曰曰| 日日狠狠久久偷偷色综合0| 激情婷婷成人亚洲综合| 亚洲 欧洲 日韩 综合在线| 亚洲国产品综合人成综合网站| 亚洲国产精品成人综合久久久| 91精品国产综合久久四虎久久无码一级 | 亚洲色偷偷综合亚洲AV伊人| 天天综合久久一二三区| 老色鬼久久综合第一| 麻豆久久婷婷综合五月国产| 色综合久久精品亚洲国产|