芝士大人
嵌入式系統(tǒng)軟件工程 方法實用技術(shù)及應(yīng)用,免費下載
鏈接:
《嵌入式系統(tǒng)軟件工程:基礎(chǔ)知識、方法和應(yīng)用》系統(tǒng)地闡述嵌入式系統(tǒng)軟件工程所涉及的過程、方法、內(nèi)容,以及在典型工業(yè)領(lǐng)域中的應(yīng)用。全書內(nèi)容分為兩大部分:第一部分介紹嵌入式系統(tǒng)軟件工程方法論,主要包括嵌入式軟件的開發(fā)過程(需求工程、軟件和系統(tǒng)體系結(jié)構(gòu)、編程和測試等內(nèi)容),開發(fā)和測試中所采用的標(biāo)準(zhǔn),與安全性相關(guān)的軟件系統(tǒng)的準(zhǔn)入,以及嵌入式軟件所涉及的法律問題:第二部分介紹嵌入式系統(tǒng)軟件在汽車領(lǐng)域、軌道交通領(lǐng)域、航天領(lǐng)域、醫(yī)療器械、工業(yè)自動化、通信系統(tǒng)中的應(yīng)用,在每個應(yīng)用領(lǐng)域重點介紹具體應(yīng)用領(lǐng)域的一些特定需求、技術(shù)和限制條件,以及它們對于嵌入式系統(tǒng)軟件開發(fā)過程的影響。
熊大熊二喜羊羊
嵌入式硬件工程師需要掌握以下技能:
1、由需求分析至總體方案、詳細(xì)設(shè)計的規(guī)劃能力;
2、熟練運用設(shè)計工具、設(shè)計原理圖、PCB板的能力;
3、熟練運用單片機(jī)、DSP、PLD、FPGA等進(jìn)行軟硬件開發(fā)調(diào)試的能力;
4、熟練運用仿真工具、示波器、信號發(fā)生器、邏輯分析儀等調(diào)測硬件的能力;
5、掌握常用的標(biāo)準(zhǔn)電路的設(shè)計能力,如復(fù)位電路、常用濾波器電路、功放電路、高速信號傳輸線的匹配電路等;
6、故障定位、解決問題的能力;
7、設(shè)計文檔的組織編寫技能。
嵌入式硬件工程師在開發(fā)中要注意的事項:
1、啟動一個硬件開發(fā)項目
作為一個硬件系統(tǒng)設(shè)計者,要主動去了解各個方面的需求,并且綜合起來,提出最合適的硬件解決方案。
項目開始之初需要召開討論會議,應(yīng)盡量邀請所有相關(guān)部門參與,好處有三:第一可以充分了解大家的需要,以免在設(shè)計上遺漏重要的功能;第二可以讓各部門了解項目的情況,提早做好時間和人員上協(xié)作的準(zhǔn)備;第三從感情方面講,在設(shè)計之初各部門就參與,項目就成了大家共同的心血結(jié)晶,會得到大家的良好合作,對完成工作很有幫助。
2、原理圖設(shè)計中要注意的問題
現(xiàn)在的芯片廠家一般都提供參考設(shè)計的原理圖,要借助這些資源,在充分理解參考設(shè)計的基礎(chǔ)上,做一些發(fā)揮。主要芯片選定后,最關(guān)鍵的外圍設(shè)計包括電源、時鐘和芯片間的互連。
電源是保證硬件正常工作的基礎(chǔ),設(shè)計中要詳細(xì)分析:系統(tǒng)能夠提供的電源輸入,單板需要產(chǎn)生的電源輸出,各個電源需要提供的電流大小等。
3、PCB設(shè)計中要注意的問題
要做到目的明確,重要信號線要嚴(yán)格要求布線長度和處理地環(huán)路,對于低速和不重要信號線可以放在稍低的布線優(yōu)先級上。重要部分包括:電源的分割,內(nèi)存的時鐘線,高速差分線的布線等。
如果設(shè)計中所有重要布線要求明確,可以轉(zhuǎn)換成整體的布線約束,利用CAD中的自動布線工具軟件來實現(xiàn)PCB設(shè)計。
4、檢查和調(diào)試
在進(jìn)行調(diào)試時,一定要認(rèn)真目視檢查,檢查在焊接過程中是否有可見的短路和管腳搭錫等故障,是否有元器件型號放置錯誤等問題。然后,用萬用表測量各個電源到地的電阻,以檢查是否有短路。調(diào)試過程要心態(tài)平和,多做比較和分析,逐步排除可能的原因,直至最后調(diào)試成功。
5、一些總結(jié)的話
從技術(shù)的角度,每個設(shè)計最終都可以做出來,但是一個項目成功與否,不僅取決于技術(shù)上的實現(xiàn),還與完成時間、產(chǎn)品質(zhì)量、團(tuán)隊配合密切相關(guān)。所以,良好的團(tuán)隊協(xié)作、透明坦誠的項目溝通、精細(xì)周密的研發(fā)安排、充裕的物料和人員安排,才能保證一個項目的成功。
晶瑩剔透0702
嵌入式軟件工程師需要學(xué)什么?對嵌入式LINUX操作系統(tǒng)及其上應(yīng)用軟件開發(fā)目標(biāo):1、 掌握主流嵌入式微處理器的結(jié)構(gòu)與原理(ARM9相對比較容易)。2、 必須掌握一個嵌入式操作系統(tǒng),如LINUX系統(tǒng),這是一個開源的系統(tǒng)。3、 必須熟悉嵌入式軟件開發(fā)流程并做一些嵌入式軟件項目。學(xué)習(xí)路線:1、硬件知識對于硬件部分要求并不高,只要能看懂原理圖,看懂通信協(xié)議,看懂芯片手冊就可以。不求能設(shè)計原理圖,更不求能設(shè)計電路板。如果能有一些《數(shù)字電路》的基礎(chǔ)就更好,沒有也沒關(guān)系。我們主要掌握硬件工作原理。要掌握常見硬件,如ADC,PWM,UART、I2C、SPI等。2、編程語言學(xué)習(xí)學(xué)習(xí)C語言,推薦C語言的設(shè)計者Dennis M. Ritchie和著名計算機(jī)科學(xué)家Brian W. Kernighan編寫的一部介紹標(biāo)準(zhǔn)C語言及其程序設(shè)計方法的著作,《C程序設(shè)計語言》。3、學(xué)習(xí)LINUX系統(tǒng)編程首先學(xué)會使用了解LINUX,學(xué)習(xí)LINUX命令,軟件安裝,工具使用。學(xué)習(xí)文件IO,多進(jìn)程多線程,進(jìn)程間通信,套接字等。推薦《UNIX環(huán)境高級編程》,《TCP/IP詳解 卷一》4、學(xué)習(xí)LINUX設(shè)備驅(qū)動首先需要學(xué)習(xí)LINUX內(nèi)核基礎(chǔ)部分,包括內(nèi)核配置編譯,內(nèi)核模塊,并發(fā)控制,字符設(shè)備,設(shè)備模型,平臺設(shè)備等。在學(xué)習(xí)常用驅(qū)動框架,如INPUT系統(tǒng),幀緩沖驅(qū)動,網(wǎng)絡(luò)設(shè)備驅(qū)動,塊設(shè)備驅(qū)動,音頻設(shè)備驅(qū)動等,掌握這些驅(qū)動框架,了解原理,總結(jié)哪些部分需要我們實現(xiàn)?;A(chǔ)部分可以參考《Linux設(shè)備驅(qū)動 第三版》,該書雖然老,但是原理講的比較透徹,還可以參考。驅(qū)動框架可以到網(wǎng)上搜素資料,網(wǎng)上有很多關(guān)于驅(qū)動框架的介紹,這里就不推薦具體的文章,大家可以自己找一下。
優(yōu)質(zhì)工程師考試問答知識庫