400-650-7353
您所在的位置:首頁 > IT干貨資料 > linux > 【Linux基礎(chǔ)知識】如何成為一名優(yōu)秀的嵌入式工程師

【Linux基礎(chǔ)知識】如何成為一名優(yōu)秀的嵌入式工程師

  • 來源:Linux干貨資料
  • 2019-12-05 14:16:22
  • 閱讀()
  • 分享
  • 手機(jī)端入口

一、嵌入式工程師必備技能總覽

在介紹學(xué)習(xí)路徑之前,我們先來了解一下要成為一個(gè)優(yōu)秀的嵌入式開發(fā)工程師,需要具備哪些技能。我們從硬件和軟件兩部分來介紹。

v 硬件部分:

1. 了解主要器件(電阻、電容、電感、各類二極管、三極管、場效應(yīng)管、邏輯門電路等)。

2. 熟悉萬用表的用法,熟悉以上器件的測試方法和測試原理。

3. 了解器件封裝的常見類型和特點(diǎn)(直插、表貼、QFNP、BGA、SOT等)。

4. 掌握使用示波器、邏輯分析儀進(jìn)行測量的方法。

5. 熟知常見器件間通信方式和總線。

6. 能熟練閱讀器件手冊(datasheet)并根據(jù)項(xiàng)目需求對器件進(jìn)行選型、電路原理圖繪制、電路板布局布線,配合結(jié)構(gòu)工藝完成電路板設(shè)計(jì)。

7. 能根據(jù)故障現(xiàn)象對電路板進(jìn)行測量排查,找出錯(cuò)誤并修正。

8. 掌握基本的手焊、拆焊、飛線技能。

v 軟件部分:

1. 熟練掌握C語言,熟悉位操作,位段和對齊方式等概念。

2. 掌握基本的匯編語言。

3. 熟悉編譯連接的過程和編譯指令。

4. 理解程序運(yùn)行中堆與棧的分配和使用。

5. 熟悉linux系統(tǒng)操作和gcc編譯工具、Makefile編寫。

6. 熟悉主流嵌入式CPU的架構(gòu)(如ARM)

7. 熟悉內(nèi)核態(tài)和用戶態(tài),了解不同程序運(yùn)行的狀態(tài)和編程注意事項(xiàng)。

8. 熟悉系統(tǒng)引導(dǎo)流程,能移植uboot和操作系統(tǒng),構(gòu)建根文件系統(tǒng)和設(shè)備樹。

9. 掌握各類驅(qū)動(dòng)程序模塊的編寫方法和編譯方法。

10. 熟悉網(wǎng)絡(luò)編程原理和數(shù)據(jù)庫編程。

11. 了解UART,IIS,IIC,CAN,SPI等接口協(xié)議并能調(diào)試相關(guān)設(shè)備。

12. 了解至少一種物聯(lián)網(wǎng)應(yīng)用層協(xié)議如MQTT等。

13. 了解常見的低功耗無線通信模塊的使用如wifi,藍(lán)牙,ZigBee。

嵌入式開發(fā)的學(xué)習(xí)路線(上)

二、學(xué)習(xí)路徑和重點(diǎn)

確實(shí),我們嵌入式工程師需要掌握的知識很多,上述的每個(gè)知識點(diǎn)都可以展開作為一個(gè)單獨(dú)學(xué)科或者專題進(jìn)行討論。上面繁多的技能要求可能讓很多同學(xué)望而生畏,不過我們嵌入式工程師的任務(wù)主要是工程實(shí)現(xiàn),而不是理論研究,因此對于上面的知識點(diǎn),我們不需要特別深入的了解,只需要在概念、原理和實(shí)踐方向進(jìn)行理解和轉(zhuǎn)化,讓我們在工程實(shí)踐中能受這些理論的指導(dǎo),利用這些理論完成設(shè)計(jì)和調(diào)試即可。

有一些同學(xué)有這樣的疑問:我以后的工作目標(biāo)是嵌入式軟件工程師,那我還需要硬件部分的知識嗎?這個(gè)問題的答案是肯定的,主要有以下2個(gè)原因:

1. 嵌入式工程師沒有嚴(yán)格的軟硬件區(qū)分。

嵌入式工程師在實(shí)際工作中要不斷和硬件打交道,硬件工程師提供了原理圖和PCB布局布線圖,我們嵌入式工程師要根據(jù)數(shù)據(jù)手冊,器件編程指南以及硬件工程師提供的原理圖進(jìn)行軟件設(shè)計(jì),需要對設(shè)計(jì)進(jìn)行上板驗(yàn)證,需要調(diào)試除錯(cuò),這都需要我們有扎實(shí)的硬件設(shè)計(jì)功底,否則就需要不斷的去找硬件工程師來咨詢,必然會拖慢整個(gè)項(xiàng)目的進(jìn)度。

2. 要想成為優(yōu)秀的嵌入式軟件工程師,一定要熟知硬件知識。

優(yōu)秀的嵌入式工程師會參與項(xiàng)目的需求分析,器件選型等硬件設(shè)計(jì)工作,這不僅需要我們有豐富的行業(yè)經(jīng)驗(yàn),更需要我們有扎實(shí)的硬件基礎(chǔ)。

另外,驅(qū)動(dòng)編寫等工作要求我們必須清晰的了解硬件的特性,如總線速度、時(shí)延、單雙工模式、是否有緩沖、是否支持DMA等等,了解硬件的特性才能充分挖掘硬件潛力,提升速度和穩(wěn)定性。

又如,在和硬件工程師一起調(diào)試設(shè)備問題時(shí),嵌入式軟件工程師需要根據(jù)硬件特點(diǎn)編寫對應(yīng)的測試程序,如并行總線的數(shù)據(jù)相位測試、串行差分信號的眼圖測試,都需要嵌入式軟件工程師編寫對應(yīng)的測試程序。如果嵌入式軟件工程師沒有相應(yīng)的硬件知識,溝通成本會陡然增加,項(xiàng)目延期風(fēng)險(xiǎn)也就大大增加了。

綜上,要做優(yōu)秀的嵌入式工程師,而不是渾渾噩噩混日子的小工,就要嚴(yán)格要求自己,把硬件知識也補(bǔ)上來。

 

文章“【Linux基礎(chǔ)知識】如何成為一名優(yōu)秀的嵌入式工程師”已幫助

>>本文地址:http://m.hqfphsz.com/zhuanye/2019/48087.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營銷互聯(lián)網(wǎng)營銷
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營全域電商運(yùn)營
  • 軟件測試軟件測試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁設(shè)計(jì)網(wǎng)頁設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開發(fā)智能機(jī)器人
 

快速通道fast track

近期開班時(shí)間TIME