博客專欄

        EEPW首頁 > 博客 > 單片機入門還能從51開始嗎?

        單片機入門還能從51開始嗎?

        發(fā)布人:xiaomaidashu 時間:2024-04-28 來源:工程師 發(fā)布文章

        大家好,我是麥鴿,最近網(wǎng)友的一個提問,非常貼近很多初學者。

        問題是這樣的。

        單片機入門還能從51開始嗎? 現(xiàn)在ARM核和RISC核那么便宜,資料那么豐富,是不是沒有必要學51單片機了?瀉藥,當然可以。

        這里簡單說說我的看法。

        雖然ARM核和RISC核越來越便宜了,相對來說硬件成本下降很多,并且配套的資料也很多了,看起來也是可以很快上手的。這里,對于新手來說,往往難住他們可能是這些;

        1. 開發(fā)環(huán)境的搭建;
        2. 代碼中帶有中文的標點符號,比如“ ;”
        3. 燒錄程序到單片機上時,各種驅(qū)動沒裝對,導致燒錄器或者串口無法識別,一臉懵 (′?_?`)
        4. 遇到一些硬件問題或者軟件問題就會感覺無從下手;

        這是大多數(shù)和我交流過的同學的遭遇,包括我自學的時候,也會有這樣那樣的弱智問題。解決之后才發(fā)現(xiàn)自己是真的愚蠢。

        先說51單片機

        架構(gòu)相比ARM和RISC沒有那么復雜,特別是IO是雙向輸出的,雖然功能簡單,不像ARM的GPIO那樣,首先要配置時鐘,然后還要配置模式,輸入輸出,上拉下拉。七七八八配一堆,對于新手來說,這無疑增加了出錯的概率。

        同樣都是點個燈,51單片機幾個文件就夠了,幾行代碼,所以它的優(yōu)勢就是簡單。上手難度小。

        不過ARM架構(gòu),拿STM32來說,就有寄存器開發(fā),標準庫,HAL庫,LL庫,這些開發(fā)方式。

        1. 使用寄存器開發(fā),寄存器挺多的,要配置不少寄存器才能實現(xiàn)功能,對新手不太友好。

        2. 使用庫函數(shù)開發(fā),比如標準庫,HAL庫,LL庫這些,那么一個工程模板一大堆C文件,還有一堆宏定義,還有封裝了很多的結(jié)構(gòu)體,指針的使用。需要一定C語言基礎,如果這里基礎沒打好,可能調(diào)用庫都調(diào)不明白,云里霧里的,對不起,再去好好學學C語言吧。

        所以,用51單片機入門很不錯 的,雖然與目前市面上主流的脫節(jié)了,但是作為教學和入門還是很不錯的。就像當初微機原理,用的還是8086來做平臺進行教學,這也是一款很老舊的硬件平臺了。

        最后

        學習51單片機作為入門真的很不錯,如果基礎比較好的同學可以直接上STM32進行學習,學習資料也多,資源也比較豐富,因人而異。

        對于新手來說,還是把項目先跑起來,建立正反饋,培養(yǎng)興趣,這樣才有繼續(xù)學習下去的動力。

        不然一上來就給自己上強度,難免會打擊信心,以上是我的看法。

        對此,大家怎么看?歡迎在評論區(qū)留言討論。


        *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



        關(guān)鍵詞: 單片機

        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 合川市| 雷波县| 东至县| 怀宁县| 新闻| 格尔木市| 察隅县| 湘乡市| 松潘县| 尚志市| 景德镇市| 陕西省| 峨眉山市| 民勤县| 特克斯县| 友谊县| 濮阳市| 泗洪县| 东光县| 新竹市| 自贡市| 威远县| 醴陵市| 绥化市| 嘉峪关市| 新兴县| 瑞安市| 横山县| 唐河县| 乌拉特中旗| 遂川县| 鄯善县| 浦东新区| 威信县| 抚松县| 金乡县| 喜德县| 黔西| 固阳县| 龙游县| 太康县|