本文中,小編將對嵌入式予以介紹,如果你想對它的詳細情況有所認識,或者想要增進對嵌入式的了解程度,不妨請看以下內容哦。
一、嵌入式
在工程師看來:著重理解“嵌入”的概念,主要從三個方面上來理解。
1.從硬件上,將基于CPU的處圍器件,整合到CPU芯片內部,比如早期基于X86體系結構下的計算機,CPU只是有運算器和累加器的功能,一切芯片 要靠外部橋路來擴展實現,象串口之類的都是靠外部的16C550/2的串口控制器芯片實現。目前的這種串口控制器芯片早已集成到CPU內部,還有PC機有 顯卡,而多數嵌入式處理器都帶有LCD控制器,但其種意義上就相當于顯卡。比較高端的ARM類Intel Xscale架構下的IXP網絡處理器CPU內部集成PCI控制器(可配成支持4個PCI從設備或配成自身為CPI從設備);還集成3個NPE網絡處理器 引擎,其中兩個對應于兩個MAC地址, 可用于網關交換用,而另外一個NPE網絡處理器引擎支持DSL,只要外面再加個PHY芯片即可以實現DSL上網功能。IXP系列最高主頻可以達到 1.8G,支持2G內存,1G×10或10G×1的以太網口或Febre channel的光通道。IXP系列應該是目標基于ARM體系統(tǒng)結構下由 intel進行整合后成Xscale內核的最高的處理器了。
2、從軟件上前,就是在定制操作系統(tǒng)內核里將應用一并選入,編譯后將內核下載到ROM中。而在定制操作系統(tǒng)內核時所選擇的應用程序組 件就是完成了軟件的“嵌入”,比如WinCE在內核定制時,會有相應選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇 了,在CE啟動后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。
3、把軟件內核或應用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺中的ROM中就實現了一個真正的“嵌入”。
以上的定義是我在6、7年前給嵌入式系統(tǒng)下自話側重于理解型的定義,書上的定義也有很多,但在這個領域范圍內,誰都不敢說自己的定義是十分確切的,包括那些專家學者們,因為畢竟嵌入式系統(tǒng)是計算機范疇下的一門綜合性學科。
二、嵌入式工程師發(fā)展路線
(一)入門嵌入式工程師
此階段主要是前期的入門過程,主要針對入行沒多久的新人。其實成功沒有捷徑,所以打好基礎才是關鍵。主要包含以下4個方面的內容:
1.電路知識首先你要學習電路、模電、數電,認識電阻、電容、三極管,基礎器件要知道,放大電路、集成運放、時序電路基本電路能看懂,不然看電路圖一定是云里霧里,也就無法進行后續(xù)的工作。硬件產品的設計實現,包括器件選型、原理圖和PCB設計、電路調試,都需要過硬的電路基礎。
2.C語言
C語言是嵌入式開發(fā)中最重要的編程語言,要對這門語言有深入的理解,畢竟不僅僅要會寫程序,看懂他人程序也很重要。最基本的數據類型、數組、指針、結構體,鏈表、文件操作等都要會,掌握基本語法和語句,不然你要能區(qū)分指針數組與數組指針嗎?
3.單片機單片機入門相對簡單,通過單片機的學習可以熟悉單片機的硬件結構,包括I/O口、AD轉換、通信(串口、并口、I2C、CAN、USB、以太網、ZigBee技術等)、顯示(LED、LCD等)、控制(PWM等控制技術)、數據處理(圖形、圖像、語音、視頻等的處理或識別)等,學好單片機可以為采用嵌入式系統(tǒng)奠定良好的基礎。
4Linux基礎
Linux的源碼和架構都是開放的,在嵌入式系統(tǒng)中應用尤為廣泛,學習Linux對于系統(tǒng)的開發(fā)會有很大的幫助。詳細了解Linux下的目錄結構、基本命令、編輯器VI、編譯器GCC、調試器GDB和 Make 項目管理工具,Shell Makefile腳本編寫等知識,以及嵌入式開發(fā)環(huán)境的搭建。
(二)中級嵌入式工程師
經過第一個階段的學習,你已經可以進行嵌入式開發(fā)工作了,但是要進階依舊還有很多知識要學,而這個階段也將是第一個分水嶺,使得優(yōu)秀的嵌入式工程師得以脫穎而出。此階段雖然只有三項,但涉及的知識非常廣,要想學好需要花費大量的精力。
1.Linux編程
系統(tǒng)編程可以直接跟內核及核心系統(tǒng)程序庫對話,深入了解Linux內核。掌握Linux系統(tǒng)編程主要提升對Linux應用開發(fā)的理解和代碼調試的能力。由于網絡應用開發(fā)越來越廣泛,通過Linux網絡發(fā)展、TCP/IP協(xié)議、socket編程、TCP網絡編程、UDP網絡編程、Web編程開發(fā)等方面入手,可以全面了解Linux網絡應用程序開發(fā)。
2數據結構與算法數據結構及算法在嵌入式底層驅動、通信協(xié)議及各種引擎開發(fā)中得到了廣泛的應用,語言編譯要使用棧、散列表以及語法樹;操作系統(tǒng)中用隊列、存儲管理表及目錄樹等;數據庫系統(tǒng)運用線型表、多鏈表及索引表進行數據管理等等,對其掌握的好壞直接影響程序的效率、簡潔及健壯性。
3.QT、DSP、FPGA
Linux沒有自己界面,學習QT編程可以創(chuàng)建藝術級的圖形用戶界面所需的所有功能,從而更好的實現人機交互控制。而如今用戶對于圖形圖像的要求也越來越高,這就需要DSP、FPGA技術來設計開發(fā)更好的嵌入式視覺系統(tǒng)。
至于嵌入式高級工程師,暫時無需多說,操之過急而言并不是好事,當你到達這個位置的時候,可以說你已經是一個人生贏家了,而真正的學習過程如同一場漫長的修行,在這個過程中,必定有各種各樣的困難。當然了,嵌入式工作中更多的需要實踐以及經驗的積累,相信守得云開見月明,你也可成為一名優(yōu)秀的嵌入式工程師。
以上所有內容便是小編此次為大家?guī)淼挠嘘P嵌入式的所有介紹,如果你想了解更多有關它的內容,不妨在我們網站或者百度、google進行探索哦。