比前途,還是嵌入式開發(fā)比軟件開發(fā)更勝一籌
比前途,還是嵌入式開發(fā)比軟件開發(fā)更勝一籌
\\\插播一條:我自己在今年年初錄制了一套還比較系統(tǒng)的入門單片機(jī)教程,想要的同學(xué)找我(禾厶-亻言-手戈)免費的。最近比較閑,帶做畢設(shè),帶學(xué)生參加省級以上比賽///
嵌入式開發(fā)門檻高,波及的知識面廣,既要求懂硬件,又必需能寫軟件,而軟硬件波及的知識體系卻又是異常的龐大;并且進(jìn)修這些短期內(nèi)看不到成績,須要堅持?jǐn)?shù)年,執(zhí)著在一個領(lǐng)域深耕。
具備根本的電路知識,了解常用元器件、芯片,能看懂原理圖,作為嵌入式軟件開發(fā)人員也必需懂一些硬件設(shè)計方面的知識;
具備一定的MCU設(shè)計與應(yīng)用才能,從單片機(jī)到ARM再到DSP,能夠依據(jù)客戶要求設(shè)計產(chǎn)品;掌握至少一種單片機(jī)的編程與使用,假如常見的STM32,后期能夠涉獵FPGA;
進(jìn)修C語言,掌握根本的數(shù)據(jù)類型、指針、構(gòu)造體等;了解根本的MCU外圍模塊,SPI、I2C、UART、GPIO、ADC、PWM、Timer、FLASH等原理,能依據(jù)硬件原理以及芯片手冊編寫裸機(jī)設(shè)備驅(qū)動程序;掌握常用工業(yè)通訊協(xié)議假如CAN、Modbus等;
進(jìn)修至少一種操作系統(tǒng),包括但不限于uCOS、FreeRTOS、RT-Thread、Vxworks等,并且一定要進(jìn)修嵌入式linux的使用與編程,搞明白多任務(wù)調(diào)度、信號量、郵箱等的原理與使用;
進(jìn)修linux平臺下的設(shè)備驅(qū)動程序設(shè)計,掌握字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)設(shè)備的驅(qū)動框架,并能夠熟練設(shè)計這些設(shè)備驅(qū)動,假如ADC、UART、SPI、GPIO、Camera等等,視頻驅(qū)動框架一定要搞懂V4L2;
進(jìn)修GUI設(shè)計,具備根本的嵌入式產(chǎn)品GUI設(shè)計才能,能夠進(jìn)修Qt,它的跨平臺特性很合適嵌入式開發(fā);當(dāng)然也能夠轉(zhuǎn)到App設(shè)計開發(fā);
進(jìn)修多線程編程,搞明白線程池原理并應(yīng)用到實際產(chǎn)品中;具備高并發(fā)網(wǎng)絡(luò)通信編程才能,熟練掌握epoll以及libevent的使用和設(shè)計;
掌握至少一種數(shù)據(jù)庫編程才能,嵌入式能夠進(jìn)修SQlite;
掌握C/C++編程語言,能夠設(shè)計linux平臺下的應(yīng)用程序以及后臺效勞程序,并涉獵其他編程語言,能夠進(jìn)修Python;
修煉內(nèi)功,學(xué)好數(shù)學(xué),進(jìn)修各種編程算法,掌握常用數(shù)據(jù)構(gòu)造以及算法
綠色圖標(biāo)【?で】liutianwang123
的原理和實現(xiàn),鏈表、隊列、排序、查找等;掌握常用濾波算法及其實現(xiàn),比如一階互補(bǔ)濾波、卡爾曼濾波等;掌握PID原理與算法實現(xiàn);
以上即是嵌入式軟件開發(fā)的路線,當(dāng)然不一定適合每個人,但總體來講掌握這些對以后的進(jìn)一步發(fā)展有很大幫助。
嵌入式軟件開發(fā)人員的從業(yè)范圍也是異常的龐大,小到家用電器,大到工業(yè)航天設(shè)備等都有嵌入式的存在。比如手機(jī)、電視、冰箱,比如航天飛機(jī)、通信衛(wèi)星、人工智能、無人機(jī)、移動機(jī)器人、無人駕駛、激光雷達(dá)、智慧醫(yī)療、醫(yī)療儀器、可穿戴設(shè)備、物聯(lián)網(wǎng)等,也包括一些工業(yè)嵌入式產(chǎn)品,比如電力設(shè)備、新能源設(shè)備、汽車、發(fā)電、通訊等等,可以說只要需要微處理器的地方都離不開嵌入式。
對于嵌入式軟件開發(fā)來講,懂得必須要多,但更要專;要做T字形人才,在一個領(lǐng)域深耕,才能有好的發(fā)展,切勿淺嘗輒止,好高騖遠(yuǎn)。
要找到自己的興趣點,喜歡無人機(jī),那就在飛行控制算法方面做深入研究;
喜歡圖像處理,那就在圖像處理算法方面多深入研究;
喜歡人工智能,那就在機(jī)器學(xué)習(xí)、深度學(xué)習(xí)方面做深入研究;
喜歡汽車電子,那就在汽車領(lǐng)域深入研究;
總之,嵌入式不是一蹴而就,需要數(shù)年的堅持與執(zhí)著,要想在嵌入式任何一個領(lǐng)域精進(jìn),都不是一件容易的事。