新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > 嵌入式系統(tǒng)設(shè)計(jì)中的“團(tuán)隊(duì)技能”

嵌入式系統(tǒng)設(shè)計(jì)中的“團(tuán)隊(duì)技能”

作者:paradoxfx 時間:2013-09-02 來源:電子產(chǎn)品世界 收藏

  前一陣看了幾本有關(guān)系統(tǒng)設(shè)計(jì)的書,包括RTOS,算法,硬件設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)等,感覺這個系統(tǒng)是相當(dāng)復(fù)雜的,所以在此分享一些心得。

本文引用地址:http://2s4d.com/article/164528.htm

  首先,系統(tǒng)的設(shè)計(jì)經(jīng)常是一項(xiàng)很艱巨的任務(wù)。一個復(fù)雜的系統(tǒng)。例如,一個電機(jī)控制的系統(tǒng)在由一個開發(fā)團(tuán)隊(duì)來負(fù)責(zé)的時候,有的工程師會負(fù)責(zé)RTOS的移植、調(diào)度等工作,有的專門負(fù)責(zé)硬件電路和接口設(shè)計(jì),有的專門負(fù)責(zé)電機(jī)的控制等等。對于其中的軟件工程師來說,他可以熟練掌握C、C++等編程語言和RTOS的設(shè)計(jì)等,但是對于電機(jī)的控制就未必了解很多了(看我們國內(nèi)現(xiàn)狀,很多是計(jì)算機(jī)專業(yè)的來從事這方面工作)。而對于控制工程師來說,電機(jī)的控制他很熟練,而C++里面那些復(fù)雜的面向?qū)ο缶幊逃治幢睾苁煜?。這樣在工作中,就不可避免地存在一些交流、溝通上的“鴻溝”。為了不至于在出現(xiàn)一些難以的問題時,大家互相指責(zé)對方是“豬一樣的隊(duì)友”,就需要隊(duì)員們對開發(fā)一個嵌入式系統(tǒng)需要的技能有一些宏觀的了解;對于初學(xué)者來說,了解開發(fā)這樣的一個復(fù)雜系統(tǒng)需要哪些技能,也是非常有幫助的。這些技能從宏觀上講,可以分為5大類:

  1. 閱讀數(shù)據(jù)手冊(即)

  做產(chǎn)品開發(fā)的工程師和做研究的工程師有一個比較明細(xì)的區(qū)別,就是做研究往往不會把時間定的特別緊迫,或者說研究的往往是至少1-2年以后采用的技術(shù)。而做產(chǎn)品的就不行,產(chǎn)品往往就是工程師們的“催命鬼”,每天看看時間進(jìn)度表,哪還有時間去沉下心來去仔細(xì)閱讀?但是確實(shí)是很關(guān)鍵的,它相當(dāng)于芯片或者器件的接口“API”。在設(shè)計(jì)開始之前,至少要通過讀最新的datasheet來確認(rèn)選擇的器件滿足工作環(huán)境的要求,并且知道那些最有可能出現(xiàn)各種奇怪現(xiàn)象的部分在哪里,以便在發(fā)現(xiàn)問題時快速定位。

  2. 了解所使用的

  1) 往往是復(fù)雜的,但是學(xué)習(xí)資源也是非常豐富的,我們可以使用很多資源來加速學(xué)習(xí),例如入門指南和初學(xué)者套件:一般的公司都會提供這些東西,而且初學(xué)者套件一般并不貴

  2) 論壇,以及制造廠商的wiki

  3) 培訓(xùn)活動

  4) 用戶指南和應(yīng)用指南

  一般在學(xué)習(xí)一個新的處理器之前,把上面這些資料備齊,學(xué)習(xí)條件就很充分了。

  3. 閱讀原理圖

  一部分純軟件工程師并不需要去閱讀原理圖,但是大部分團(tuán)隊(duì)成員還是需要了解的。例如,一個bug可能表現(xiàn)為軟件里某個變量的值異常,但是這有可能是硬件電路某個電平不對,導(dǎo)致了后面的一系列異常。

  4.

  工具既包含軟件里的debugger,也包含包括硬件調(diào)試使用的鉗子、刀、膠帶、放大鏡、螺絲刀、萬用表、示波器、邏輯分析儀等。

  5.

  為了不讓重大隱患或者煩人的bug在用戶手里頻繁出現(xiàn),工作的重要性自然是不言而喻的。國外有相關(guān)的專門職位,例如qualification工程師和verification工程師,往往都是由一些年紀(jì)比較大但是富有經(jīng)驗(yàn)的工程師擔(dān)任,但是國內(nèi)貌似還不怎么重視這部分工作。

  引用一句名言,“越是不經(jīng)意的錯誤,越有可能需要花費(fèi)相當(dāng)長的時間去查找和修復(fù)”。所以,整個團(tuán)隊(duì)的工程師都首先要把自己負(fù)責(zé)的部分測試好,然后再進(jìn)行組合測試。

  最后說明,這里的幾個技巧是從O’REILLY出版的《Making Embeded Systems》一書里面提煉的。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

c++相關(guān)文章:c++教程




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉