<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 嵌入式系統開(kāi)發(fā)者需要掌握什么技術(shù)?

嵌入式系統開(kāi)發(fā)者需要掌握什么技術(shù)?

發(fā)布人:電子禪石 時(shí)間:2023-02-14 來(lái)源:工程師 發(fā)布文章

說(shuō)實(shí)話(huà),問(wèn)題中嵌入式開(kāi)發(fā)這個(gè)話(huà)題有點(diǎn)龐大,畢竟它涵蓋的領(lǐng)域和范圍很寬泛。作為一個(gè)在嵌入式軟件開(kāi)發(fā)方面工作了十多年的老程序猿,這么多年過(guò)來(lái)也在通過(guò)不停的自學(xué)和各類(lèi)項目的歷練中,不斷積累自己的嵌入式軟件開(kāi)發(fā)的技能棧。


這里也借題主的問(wèn)題寶地,梳理一下嵌入式軟件開(kāi)發(fā)方向的技能棧,以期對題主和廣大嵌入式軟件愛(ài)好者有所幫助。畢竟是站在個(gè)人的經(jīng)歷角度分享,如有缺失敬請諒解。

作為嵌入式軟件開(kāi)發(fā),其實(shí)可以細分為:

  1. 嵌入式MCU軟件開(kāi)發(fā)工程師;

  2. 嵌入式Linux底層(BSP)軟件開(kāi)發(fā)工程師;

  3. 嵌入式Linux應用開(kāi)發(fā)工程師;

  4. 嵌入式FPGA算法開(kāi)發(fā)工程師

我這么多年,從MCU開(kāi)發(fā)及Linux應用開(kāi)發(fā)起步,在合伙創(chuàng )業(yè)過(guò)程中自學(xué)并通過(guò)項目實(shí)踐構建了Linux底層驅動(dòng)技能棧,FPGA算法工程師僅僅因為與公司的相應同事有過(guò)交際集,這里就不過(guò)多闡述FPGA算法工程師的技能棧,防止給大家帶跑偏了。

1. 嵌入式MCU軟件開(kāi)發(fā)工程師

【基本武器】

  • C語(yǔ)言編碼能力(數據結構,常用算法,指針和數組,結構體和位域等)

  • MCU的理論知識(時(shí)鐘樹(shù),內存,中斷,GPIO,功能外設(uart,iic,dma等)等)

  • MCU的編碼方式(寄存器/庫函數),編譯下載過(guò)程(根據題主選擇的MCU來(lái)學(xué)習)

  • 基本的電路連線(xiàn)圖能看懂(MCU的管腳如何連接到外界器件等)

  • 實(shí)時(shí)操作系統編碼能力(ucos,freertos,liteos等等)

  • 業(yè)務(wù)場(chǎng)景知識(根據題主嵌入式產(chǎn)品場(chǎng)景而定)

【升級武器】

  • 軟件架構設計能力

  • 示波器,邏輯分析儀使用(調試通信器件使用)

  • 讀取反匯編能力(定位Bug時(shí)候可能用到)

  • 掌握通信協(xié)議(串口232通信,485通信,iic協(xié)議,spi協(xié)議,tcp/ip,can協(xié)議等等)

2. 嵌入式Linux應用開(kāi)發(fā)工程師

【基本武器】

  • Linux C語(yǔ)言編碼能力(數據結構,常用算法,指針和數組,結構體和位域等)

  • Linux常用功能API(多線(xiàn)程,多進(jìn)程,鎖類(lèi),進(jìn)程/線(xiàn)程通信機制相關(guān)等)

  • Linux Shell使用(基本的Linux操作能力)

  • Makefile/GDB調試

  • 掌握通信協(xié)議(串口232通信,485通信,iic協(xié)議,spi協(xié)議,tcp/ip,can協(xié)議等等)

  • 業(yè)務(wù)場(chǎng)景知識(根據題主嵌入式產(chǎn)品場(chǎng)景而定)(比如視頻,那么rtsp,h264編碼,視頻基礎)

【升級武器】

  • 軟件架構設計能力

  • 讀取反匯編能力(定位Bug時(shí)候可能用到)

  • Linxu操作系統理解(用戶(hù)態(tài),內核態(tài),中斷機制,內存機制等)

3. 嵌入式Linux底層(BSP)開(kāi)發(fā)工程師

【基本武器】

  • Linux C語(yǔ)言編碼能力(數據結構,常用算法,指針和數組,結構體和位域等)

  • Linux裁剪,移植,編譯

  • Linxu操作系統理解(用戶(hù)態(tài),內核態(tài),中斷機制,內存機制等)

  • Linux Shell使用(Linux操作能力)

  • bootloader(uboot等)修改

  • 基本調試用通信方法(uart,tcp/ip)

【升級武器】

  • Linux驅動(dòng)開(kāi)發(fā)能力

  • Linux內核機制

  • 等等

以上根據個(gè)人的工作經(jīng)歷中使用的技能??偨Y,難免存在遺漏。畢竟每個(gè)嵌入式工程師從事的行業(yè)不同,技能棧也會(huì )有所不同。


以上建議,也僅供題主和廣大嵌入式軟件愛(ài)好者參考。

作者:snowdream
鏈接:https://www.zhihu.com/question/449050796/answer/1782550929
來(lái)源:知乎
著(zhù)作權歸作者所有。商業(yè)轉載請聯(lián)系作者獲得授權,非商業(yè)轉載請注明出處。


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



關(guān)鍵詞: 職業(yè)發(fā)展

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>