博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 直接跳過(guò)51單片機(jī)學(xué)STM32,會(huì)有哪些問(wèn)題?

直接跳過(guò)51單片機(jī)學(xué)STM32,會(huì)有哪些問(wèn)題?

發(fā)布人:美男子玩編程 時(shí)間:2024-10-23 來(lái)源:工程師 發(fā)布文章

來(lái)源于小伙伴提問(wèn):



下面是我的一些看法。


放棄51直接學(xué)STM32完全可行,甚至可能更適合你。


STM32能滿(mǎn)足你做酷炫項(xiàng)目的需求,開(kāi)發(fā)門(mén)檻也沒(méi)有想象中高。


至于電路設(shè)計(jì)和PCB方面的學(xué)習(xí)曲線(xiàn),雖然略有挑戰(zhàn),但通過(guò)資源豐富的在線(xiàn)教程和工具,你可以快速上手。


1


跳過(guò)51直接學(xué)STM32的問(wèn)題?

首先,51單片機(jī)(8051架構(gòu))是個(gè)“老前輩”,很多人從它開(kāi)始學(xué),因?yàn)樗?jiǎn)單、成本低、資源豐富。但是它的性能和功能的確過(guò)時(shí)了,尤其是在如今需要更高性能、更多外設(shè)支持的項(xiàng)目里,它的局限性很明顯。


STM32屬于ARM Cortex-M系列,功能強(qiáng)大、功耗低、外設(shè)豐富,支持很多你感興趣的特性,比如無(wú)線(xiàn)通信、傳感器接口、實(shí)時(shí)數(shù)據(jù)處理等。


從51直接轉(zhuǎn)STM32,你可能會(huì)遇到以下問(wèn)題:

  • 開(kāi)發(fā)環(huán)境的復(fù)雜度增加:STM32的開(kāi)發(fā)環(huán)境和工具鏈(如STM32CubeMX、Keil等)比51要復(fù)雜一些,不過(guò)有很多資源可以幫你快速上手。而且,很多代碼配置可以自動(dòng)生成,比你手動(dòng)寫(xiě)寄存器操作要容易得多。

  • 資源和學(xué)習(xí)曲線(xiàn):STM32有更多的外設(shè)、更多的中斷、更復(fù)雜的時(shí)鐘系統(tǒng),所以一開(kāi)始你可能會(huì)感到頭大,但因?yàn)槟阋呀?jīng)對(duì)C語(yǔ)言有一定了解,所以習(xí)慣了之后,你會(huì)發(fā)現(xiàn)STM32能幫你輕松應(yīng)對(duì)各種挑戰(zhàn)。

  • 跳過(guò)匯編:雖然你說(shuō)匯編不會(huì),其實(shí)很多STM32開(kāi)發(fā)中并不需要深入了解匯編,大部分C語(yǔ)言就夠用了。很多庫(kù)和框架都為你封裝好了底層的東西,直接用C寫(xiě)高層邏輯就行。


2


為什么STM32適合你?

STM32能更好地支持你“玩”那些有意思的東西。


比如你提到的:

  • 自平衡小車(chē)、飛行器:STM32有強(qiáng)大的定時(shí)器、PWM輸出、ADC/DAC等硬件功能,可以輕松處理電機(jī)控制和傳感器輸入。

  • 無(wú)線(xiàn)通信、Wi-Fi、藍(lán)牙等功能:STM32可以用外部模塊進(jìn)行Wi-Fi和藍(lán)牙的通信,而像ESP32這種芯片直接集成了Wi-Fi和藍(lán)牙功能,可能對(duì)你這種項(xiàng)目更合適。

  • 圖像處理、紅外線(xiàn)感應(yīng):STM32能處理復(fù)雜的傳感器輸入,處理速度比51要高得多,這對(duì)實(shí)時(shí)的控制和數(shù)據(jù)處理至關(guān)重要。


3


額外疑問(wèn)回答

STM32學(xué)習(xí)推薦

開(kāi)發(fā)板:STM32F103(入門(mén)經(jīng)典款)、STM32F4(更高性能,適合復(fù)雜應(yīng)用),或者試試STM32 Nucleo開(kāi)發(fā)板,兼容Arduino擴(kuò)展板,適合從簡(jiǎn)單項(xiàng)目入手。


教程推薦:看一些YouTube教程或者B站上的STM32入門(mén)課程。可以從正點(diǎn)原子、野火的教學(xué)資料入手,他們都有詳細(xì)的硬件和軟件講解。


畫(huà)板、焊接、PCB流程

如果你要自己畫(huà)板和做硬件開(kāi)發(fā),得學(xué)點(diǎn)模擬電路和數(shù)字電路。可以參考《電子工程師基礎(chǔ)教程》和《電路基礎(chǔ)》這類(lèi)書(shū)籍。像你提到的PCB設(shè)計(jì),確實(shí)是你設(shè)計(jì)好電路圖后,通過(guò)像EasyEDA、Altium Designer之類(lèi)的工具畫(huà)出PCB,然后可以找廠(chǎng)家做板子,像JLCPCB等網(wǎng)站很方便。


至于焊接,你需要學(xué)點(diǎn)焊接基礎(chǔ),學(xué)會(huì)用烙鐵手工焊接簡(jiǎn)單的元件,或者直接把設(shè)計(jì)好的PCB送去焊接廠(chǎng)做SMT貼片。


多久能達(dá)到熟練?

學(xué)習(xí)速度因人而異,但你有編程基礎(chǔ),這是一大優(yōu)勢(shì)。大概半年到一年你就能做一些簡(jiǎn)單的自制硬件項(xiàng)目,比如自平衡小車(chē)或傳感器的集成。


如果想完全掌握從設(shè)計(jì)電路到實(shí)現(xiàn)復(fù)雜功能,可能需要更長(zhǎng)時(shí)間,比如2年左右能熟練掌握電路設(shè)計(jì)、PCB制作和固件編程。


收入問(wèn)題

嵌入式開(kāi)發(fā)行業(yè)的薪資差距較大,初級(jí)工程師(剛轉(zhuǎn)行或新手)月薪大概在8K-12K人民幣,而熟練的嵌入式開(kāi)發(fā)者可以拿到15K-25K人民幣甚至更多。


如果你有了這方面經(jīng)驗(yàn),不僅能做自己感興趣的項(xiàng)目,還能進(jìn)入物聯(lián)網(wǎng)、智能硬件等高薪行業(yè)。

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



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

相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉