IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
一、嵌入式工程師必備技能總覽
在介紹學(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。
二、學(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ǔ)上來。
>>本文地址:http://hqfphsz.com/zhuanye/2019/48087.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?