作者 | strongerHuang
不知道什么時(shí)候開(kāi)始,我有一種莫名的感覺(jué),突然有大批人跑來(lái)學(xué)單片機(jī)。為啥會(huì)有這種感覺(jué),因?yàn)樽罱粏?wèn)的問(wèn)題,很多都是些基礎(chǔ)的問(wèn)題,比如今天的這個(gè):?jiǎn)纹瑱C(jī)學(xué)到什么程度可以找工作?你說(shuō)這是問(wèn)題嗎?它確實(shí)是一個(gè)問(wèn)題,但不知道怎么回答。學(xué)會(huì)用單片機(jī)點(diǎn)燈,也許都能找到工作。
掌握單片機(jī)大部分外設(shè)資源、RTOS、各種協(xié)議棧,可能三個(gè)月都還找不到工作。所以,學(xué)到什么程度,能學(xué)到哪里,就看你能不能堅(jiān)持,有沒(méi)有耐心。能不能找到工作,就看你的要求(比如薪資待遇、加班等)高不高。
單片機(jī)(MCU)開(kāi)發(fā)是嵌入式領(lǐng)域的一個(gè)重要分支,就業(yè)門(mén)檻相對(duì)Linux要低。單片機(jī)學(xué)到什么程度可以找工作,我沒(méi)法明確回答你,主要看基礎(chǔ)技能熟練度和項(xiàng)目實(shí)戰(zhàn)能力,下面分享一些針對(duì)初學(xué)者的學(xué)習(xí)建議。
一、必備核心技能
1.單片機(jī)基礎(chǔ)能力熟練C語(yǔ)言:能獨(dú)立完成裸機(jī)編程,掌握指針、結(jié)構(gòu)體、內(nèi)存管理等,熟悉中斷、串口、定時(shí)器、ADC/DAC等外設(shè)配置。掌握常用MCU:至少熟練一種主流單片機(jī)(如STM32、51單片機(jī)、ESP32),熟悉其開(kāi)發(fā)工具(Keil、IAR)。掌握外設(shè)驅(qū)動(dòng):掌握單片機(jī)常見(jiàn)外設(shè)(如UART、SPI、I2C、PWM等)的底層驅(qū)動(dòng),同時(shí),能理解數(shù)據(jù)手冊(cè)中的寄存器配置邏輯。
2.硬件基礎(chǔ)能力看懂原理圖:能根據(jù)芯片手冊(cè)和原理圖配置引腳功能,排查硬件接線問(wèn)題?;A(chǔ)電路設(shè)計(jì):了解電阻、電容、二極管、MCU等元件的選型,能設(shè)計(jì)簡(jiǎn)單的外圍電路(如按鍵消抖、LED驅(qū)動(dòng))。熟悉調(diào)試工具的使用:熟練使用萬(wàn)用表、示波器、邏輯分析儀定位硬件故障或通信異常。
3.通信協(xié)議與接口掌握基礎(chǔ)協(xié)議:UART、SPI、I2C的時(shí)序及代碼實(shí)現(xiàn)。進(jìn)階協(xié)議:CAN、Modbus、RS485等工業(yè)常用協(xié)議,或MQTT、HTTP等物聯(lián)網(wǎng)協(xié)議。
4.掌握RTOS熟悉RTOS基礎(chǔ):至少熟悉一種RTOS(UCOS、FreeRTOS或RT-Thread等)基礎(chǔ)概念。移植RTOS:能獨(dú)立移植一款RTOS,熟悉底層接口,并成功在單片機(jī)上運(yùn)行多個(gè)任務(wù)。掌握RTOS底層機(jī)制和原理:熟悉RTOS任務(wù)調(diào)度、消息隊(duì)列、信號(hào)量等機(jī)制。
5.項(xiàng)目經(jīng)驗(yàn)獨(dú)立完成2-3個(gè)完整項(xiàng)目:例如:智能家居控制(溫濕度傳感器+WiFi模塊+云平臺(tái))、電機(jī)控制(PID算法+PWM驅(qū)動(dòng)直流/步進(jìn)電機(jī))、數(shù)據(jù)采集系統(tǒng)(ADC采集+OLED/LCD顯示+SD卡存儲(chǔ))等。項(xiàng)目需求能力:需求分析、代碼架構(gòu)設(shè)計(jì)、硬件調(diào)試、問(wèn)題解決全流程。以上是針對(duì)初學(xué)者的學(xué)習(xí)建議或指導(dǎo),前4項(xiàng)算是基礎(chǔ),后面項(xiàng)目經(jīng)驗(yàn)建議還是自己獨(dú)立完成一個(gè)或多個(gè)。
二、該如何學(xué)習(xí)?
很多同學(xué)有這樣的誤區(qū),我要學(xué)完xxx技術(shù),才去找工作。剛畢業(yè)的應(yīng)屆畢業(yè)生,覺(jué)得工作難找,是自己在學(xué)校沒(méi)認(rèn)真學(xué)習(xí),然后就想花三、五個(gè)月認(rèn)真惡補(bǔ)一下大學(xué)沒(méi)學(xué)的知識(shí),然后再找工作。
我可能明確告訴你,不到一個(gè)月你都會(huì)放棄。為啥?你大學(xué)四年都沒(méi)認(rèn)真,你想通過(guò)三、五個(gè)月補(bǔ)回來(lái),現(xiàn)實(shí)嗎?
這種情況,不只是應(yīng)屆畢業(yè)生,有些工作兩三年的同學(xué),也會(huì)有這種想法:我裸辭,認(rèn)真學(xué)習(xí)一段時(shí)間,再去找個(gè)高薪的工作······
我的建議是:一邊工作,一邊學(xué)習(xí),在工作中提升技能,在工作之余,惡補(bǔ)落下的知識(shí),這樣才能做到工作學(xué)習(xí)兩不誤。我們基礎(chǔ)較差,就要多花點(diǎn)時(shí)間和精力,別人工作之余玩的時(shí)間,你用來(lái)彌補(bǔ)基礎(chǔ),才能逐漸成長(zhǎng),才能慢慢超越別人。我們看到的那些牛人、大老板,你看到有哪個(gè)不勤奮嗎?