我是大四的,馬上就要畢業(yè)了。我學的是嵌入式系統(tǒng)軟件開發(fā),側(cè)重于軟件方面,個人以為是這樣:
C語言是基礎(chǔ),先學習一點C語言,得是嵌入式C語言(嵌入式C著重于理解為什么,而不只是會用),再學習一點面向?qū)ο缶幊獭?
然后稍微涉獵一點電子技術(shù)基礎(chǔ)的東西,不用把數(shù)字與模擬電路學精通,只要能看明白簡單的電路原理圖就可以了。(因為我學的是嵌入式軟件開發(fā),所以側(cè)重于軟件方面,你可以依據(jù)自己的情況,如果側(cè)重于硬件方面,數(shù)字模擬電路當然要學精啦)
其次再學習一種嵌入式處理器架構(gòu),個人推薦32位處理器,像ARM,因為做嵌入式軟件開發(fā)8位處理有點太低端,大多數(shù)只能用作簡單的工控,沒有復雜的軟件系統(tǒng),不能稱為嵌入式系統(tǒng)。
最后再學習一種嵌入式操作系統(tǒng),像linux,wince等都可以,linux可能更好一點,因為它是開源的嘛,呵呵。
其它的就按自己的愛好啦,像嵌入式的網(wǎng)絡(luò)應(yīng)用,操作系統(tǒng)研究了什么的自己看著先好了
你要是學電子的 那你選擇嵌入式吧 這個是今年嵌入式的考試大綱 呵呵別暈啊 一點一點來 嵌入式系統(tǒng)設(shè)計師考試大綱 一、考試說明 1、考試要求: (1)掌握科學基礎(chǔ)知識; (2)掌握嵌入式系統(tǒng)的硬件、軟件知識; (3)掌握嵌入式系統(tǒng)分析的方法; (4)掌握嵌入式系統(tǒng)設(shè)計與開發(fā)的方法及步驟; (5)掌握嵌入式系統(tǒng)實施的方法 (6)掌握嵌入式系統(tǒng)運行維護知識; (7)了解信息化基礎(chǔ)知識、信息技術(shù)引用的基礎(chǔ)知識; (8)了解信息技術(shù)標準、安全,以及有關(guān)法律的基本知識; (9)了解嵌入式技術(shù)發(fā)展趨勢; (10)正確閱讀和理解計算機及嵌入式領(lǐng)域的英文資料。
2、通過本考試的合格人員能根據(jù)項目管理和工程技術(shù)的實際要求,按照系統(tǒng)總體設(shè)計規(guī)格進行軟、硬件實際,編寫系統(tǒng)開發(fā)規(guī)格說明書等相應(yīng)的文檔;組織和指導嵌入式系統(tǒng)靠法實施人員實施硬件電路、編寫和調(diào)試程序,并對嵌入式系統(tǒng)硬件設(shè)備和程序進行優(yōu)化和集成測試,開發(fā)出符合系統(tǒng)總體設(shè)計要求的高質(zhì)量嵌入式系統(tǒng);具有工程師的實際工作能力和業(yè)務(wù)水平。 二、考試范圍 考試科目1:嵌入式系統(tǒng)基礎(chǔ)知識 1.計算機科學基礎(chǔ) 1.1數(shù)制及轉(zhuǎn)換 o 二進制、八進制、十進制和十六進制等常用數(shù)制及其相互轉(zhuǎn)換 1.2數(shù)據(jù)的表示 o 數(shù)的機內(nèi)表示(原碼、反碼、補碼、移碼,定點和浮點,精度和溢出) o 字符、漢字、聲音、圖像的編碼方式 o 校驗方法和校驗碼(奇偶驗碼、海明校驗碼、循環(huán)校驗碼) 1.3算術(shù)和邏輯運算 o 計算機中的二進制數(shù)運算方法 o 邏輯代數(shù)的基本運算和邏輯表達式的化簡 1.4計算機系統(tǒng)結(jié)構(gòu)和重要部件的基本工作原理 o CPU和存儲器的組成、性能、基本工作原理 o 常用I/O設(shè)備、通信設(shè)備的性能,以及基本工作原理 o I/O接口的功能、類型和特點 o 虛擬存儲存儲基本工作原理,多級存儲體系 1.5安全性、可靠性與系統(tǒng)性能評測基礎(chǔ)知識 o 診斷與容錯 o 系統(tǒng)可靠性分析評價 o 計算機系統(tǒng)性能評測方法 2.嵌入式系統(tǒng)硬件知識 2.1數(shù)字電路和邏輯電路基礎(chǔ) 2.1.1組合電路和時序電路 2.1.2總線電路與電平轉(zhuǎn)換電路 2.1.3可編程邏輯器件 2.2嵌入式微處理器基礎(chǔ) 2.2.1嵌入式微處理器體系結(jié)構(gòu) o 馮.諾伊曼結(jié)構(gòu)與哈佛結(jié)構(gòu) o CISC與RISC o 流水線技術(shù) o 信息存儲的字節(jié)順序(大端存儲法和小端存儲法) 2.2.2嵌入式系統(tǒng)處理器的結(jié)構(gòu)和類型 o 常用8位處理器的體系結(jié)構(gòu)和類型 o 常用16位處理器的體系結(jié)構(gòu)特點 o 常用32位處理器的體系結(jié)構(gòu)特點 o 常用DSP處理器的體系結(jié)構(gòu)特點 o 多核處理器的體系結(jié)構(gòu)特點 2.2.3異常 o 同步異常(陷阱、故障、終止) o 異步異常(中斷) o 可屏蔽中斷、不可屏蔽中斷 o 中斷優(yōu)先級、中斷嵌套 2.3 嵌入式系統(tǒng)的存儲體系 2.3.1存儲器系統(tǒng) o 存儲器系統(tǒng)的層次結(jié)構(gòu) o 高速緩存(Cache) o 內(nèi)存管理單元(MMU) 2.3.2 ROM的種類與選型 o 常見ROM的種類 o PROM、EPROM、E2PROM型ROM的典型特征和不同點 2.3.3 Flash Memory的種類與選型 o Flash Memory的種類 o NOR和NAND型Flash Memory的典型特征和不同點 2.3.4 RAM的種類與選型 o 常見RAM的種類 o SRAM、DRAM、DDRAM、NVRAM的典型特征和不同點 2.3.5 外存 o 常見外存的種類 o 磁盤、光盤、CF、SD等的典型特征和不同點 2.4 嵌入式系統(tǒng)I/O接口 2.4.1 定時器和計數(shù)器基本原理與結(jié)構(gòu) 2.4.2 GPIO、PWM接口基本原理與結(jié)構(gòu) 2.4.3 A/D、D/A接口基本原理與結(jié)構(gòu) 2.4.4鍵盤、顯示、觸摸屏接口基本與結(jié)構(gòu) 2.4.5嵌入式系統(tǒng)音頻接口 2.5嵌入系統(tǒng)通信及網(wǎng)絡(luò)接口 o PCI、USB、串口、紅外、并口、SPI、IIC、PCMCIA的基本原理與結(jié)構(gòu) o 以太網(wǎng)、CAN、WLAN、藍牙、1394的基本原理與結(jié)構(gòu) 2.6嵌入式系統(tǒng)電源分類及電源原理 2.7電子電路設(shè)計 2.7.1電子電路設(shè)計基礎(chǔ)知識 o 電子電路設(shè)計原理 o 電子電路設(shè)計方法及步驟 o 電子電路設(shè)計中的可靠知識 2.7.2 PCB設(shè)計基礎(chǔ)知識 o PCB設(shè)計原理 o PCB設(shè)計方法及步驟 o 多層PCB設(shè)計的注意事項及布線原則 o PCB設(shè)計中的可靠性知識 2.7.3電子電路測試基礎(chǔ)知識 o 電子電路測試原理與方法 o 硬件抗干擾測試 3. 嵌入式系統(tǒng)軟件知識 3.1嵌入式軟件基礎(chǔ)知識 3.1.1嵌入式軟件的分類(系統(tǒng)軟件、支撐軟件、應(yīng)用軟件) 3.1.2無操作系統(tǒng)支持的嵌入式軟件體系結(jié)構(gòu)(輪詢、中斷、前后臺) 3.1.3有操作系統(tǒng)支持的嵌入式軟件體系結(jié)構(gòu) 3.1.4板極支持包基礎(chǔ)知識(系統(tǒng)初始化、設(shè)備驅(qū)動程序) 3.1.5嵌入式中間件(GUI、數(shù)據(jù)庫) 3.2 嵌入式操作系統(tǒng)基礎(chǔ)知識 3.2.1嵌入式操作系統(tǒng)體系結(jié)構(gòu) o 單體結(jié)構(gòu)、分層結(jié)構(gòu)和微內(nèi)核結(jié)構(gòu) 3.2.2任務(wù)管理 o 多道程序技術(shù) o 進程、線程、任務(wù)的概念 o 任務(wù)的實現(xiàn)(任務(wù)的層次結(jié)構(gòu)、任務(wù)控制塊、任務(wù)的狀態(tài)及狀態(tài)轉(zhuǎn)換、任務(wù)隊列) o 任務(wù)調(diào)度(調(diào)度算法的性能指標、可搶占調(diào)度、不可搶占調(diào)度、先來先服務(wù)、短作業(yè)優(yōu)先算法、時間片輪轉(zhuǎn)算法、優(yōu)先級算法) o 實時系統(tǒng)及任務(wù)調(diào)度(RMS、EDF算法) o 任務(wù)間通信(共享內(nèi)存、消息、管道、信號) o 同步與互斥(競爭條件、臨界區(qū)、互斥、信號量、死鎖) 3.2.3存儲管理 o Flat存儲管理方式 o 分區(qū)存儲管理(固定分區(qū)、可變分區(qū)) o 地址重定位(邏輯地址、物理地址、地址映射) o 頁式存儲管理 。
對于嵌入式來說,C語言是一個工具,就像如果你想從事出租車司機或者公交車司機,駕駛技術(shù)就是你的一個工具。
現(xiàn)回答你問的問題: 如應(yīng)該掌握C語言:C語言基礎(chǔ)部分的難度并不大,只要有時間,估計正常的初學者1-2個星期的認真學習,都可以數(shù)量掌握基本語法和語句,C語言的關(guān)鍵在于“數(shù)據(jù)結(jié)構(gòu)”,例如:鏈表、圖、位、樹等等,這些都是實際工作中變化性比較大的知識點,但是實際工作中,根據(jù)你的工作類別,要求并不會非常高。 還應(yīng)掌握什么基礎(chǔ):當你的C語言(包括數(shù)據(jù)結(jié)構(gòu))等有了一定的知識積累,那么你就可以學習系統(tǒng)編程和網(wǎng)絡(luò)編程了,這是日后應(yīng)用類程序開發(fā)公司比較常用的知識點;然后就是學習匯編語言、C++、內(nèi)核、嵌入式系統(tǒng)開發(fā)等,當然,你的操作平臺首先是需要你了解的,基本上常用的是linux平臺,而你對linux的熟悉程度,也需要時間的積累,以上這些知識都不是幾天、幾個星期或者幾個月就可以完全掌握的,要根據(jù)你未來想從事的工作具體去學習,因為每一個知識點都可以工作。
數(shù)據(jù)庫要嗎? :如果你會當然最好,基本上一般工作單位不會要求你學習,因為畢竟嵌入式開發(fā)跟數(shù)據(jù)庫開發(fā)是兩個不同的類別。 最后送你一句話:請根據(jù)自己的實際情況考慮是否進入這一行,因為如果你想從事嵌入式開發(fā)工作,以上說的每一個知識點你都需要掌握,這是一個非常漫長的過程,不要心急,多看好的參考書,不要亂看書。
上嵌基地的嵌入式培訓不錯,你可以去看看。
做嵌入式應(yīng)用的話一般的編程就可以了。
那么嵌入式驅(qū)動開發(fā)與內(nèi)核開發(fā)的話就需要學習多個方面的知識。我就把這方面的要求給你交流一下:(一家之言啊,自己多年從事嵌入式開發(fā)的一點感悟)嵌入式驅(qū)動開發(fā)需要了解的知識大概有以下幾類:1 嵌入式操作系統(tǒng)驅(qū)動框架。
每一個操作系統(tǒng)都有自己的構(gòu)架,應(yīng)該了解驅(qū)動在整個系統(tǒng)中的具體位置與構(gòu)建驅(qū)動程序的主要事項2 總線知識,比如PCI、USB總線。3 芯片知識。
驅(qū)動其實就是對設(shè)備上一些寄存器的配置、CPU與設(shè)備本身的通訊以及對不同命令的處理4 要做好驅(qū)動,必須對所使用的CPU體系結(jié)構(gòu)有一個比較深刻的認識5 C++基本用不上,主要是C和匯編。6 做驅(qū)動最好要懂內(nèi)核調(diào)試(比如說linux)。
嵌入式Linux操作系統(tǒng)學習規(guī)劃ARM+LINUX路線,主攻嵌入式Linux操作系統(tǒng)及其上應(yīng)用軟件開發(fā)目標:()掌握主流嵌入式微處理器的結(jié)構(gòu)與原理(初步定為arm9)(2)必須掌握一個嵌入式操作系統(tǒng)(初步定為uclinux或linux,版本待定)(3)必須熟悉嵌入式軟件開發(fā)流程并至少做一個嵌入式軟件項目。
從事嵌入式軟件開發(fā)的好處是:(1)目前國內(nèi)外這方面的人都很稀缺。這一領(lǐng)域入門門檻較高,所以非專業(yè)IT人員很難切入這一領(lǐng)域;另一方面,是因為這一領(lǐng)域較新,目前發(fā)展太快,大多數(shù)人無條件接觸。
(2)與企業(yè)計算等應(yīng)用軟件不同,嵌入式領(lǐng)域人才的工作強度通常低一些(但收入不低)。(3)哪天若想創(chuàng)業(yè),搞自已的產(chǎn)品,嵌入式不像應(yīng)用軟件那樣容易被盜版。
硬件設(shè)計一般都是請其它公司給訂做(這叫“貼牌”:OEM),都是通用的硬件,我們只管設(shè)計軟件就變成自己的產(chǎn)品了。(4)興趣所在,這是最主要的。
從事嵌入式軟件開發(fā)的缺點是:(1)入門起點較高,所用到的技術(shù)往往都有一定難度,若軟硬件基礎(chǔ)不好,特別是操作系統(tǒng)級軟件功底不深,則可能不適于此行。(2)這方面的企業(yè)數(shù)量要遠少于企業(yè)計算類企業(yè)。
(3)有少數(shù)公司經(jīng)常要碩士以上的人搞嵌入式,主要是基于嵌入式的難度。但大多數(shù)公司也并無此要求,只要有經(jīng)驗即可。
(4)平臺依托強,換平臺比較辛苦。興趣的由來:1、成功觀念不同,不虛度此生,就是我的成功。
2、喜歡思考,挑戰(zhàn)邏輯思維。3、喜歡CC是一種能發(fā)揮思維極限的語言。
關(guān)于C的精神的一些方面可以被概述成短句如下:相信程序員。不要阻止程序員做那些需要去做的。
保持語言短小精干。一種方法做一個操作。
使得它運行的夠快,盡管它并不能保證將是可移植的。4、喜歡底層開發(fā),討厭vb類開發(fā)工具(并不是說vb不好)。
5、發(fā)展前景好,適合創(chuàng)業(yè),不想自己要死了的時候還是一個工程師。方法步驟:1、基礎(chǔ)知識:目的:能看懂硬件工作原理,但重點在嵌入式軟件,特別是操作系統(tǒng)級軟件,那將是我的優(yōu)勢。
科目:數(shù)字電路、計算機組成原理、嵌入式微處理器結(jié)構(gòu)。匯編語言、C/C++、編譯原理、離散數(shù)學。
數(shù)據(jù)結(jié)構(gòu)和算法、操作系統(tǒng)、軟件工程、網(wǎng)絡(luò)、數(shù)據(jù)庫。方法:雖科目眾多,但都是較簡單的基礎(chǔ),且大部分已掌握。
不一定全學,可根據(jù)需要選修。主攻書籍:thec++programminglanguage(一直沒時間讀)、數(shù)據(jù)結(jié)構(gòu)-C2。
2、學習linux:目的:深入掌握linux系統(tǒng)。方法:使用linux—〉linxu系統(tǒng)編程開發(fā)—〉驅(qū)動開發(fā)和分析linux內(nèi)核。
先看深,那主講原理。看幾遍后,看情景分析,對照深看,兩本交叉,深是綱,情是目。
剖析則是0.11版,適合學習。最后深入代碼。
主攻書籍:linux內(nèi)核完全剖析、unix環(huán)境高級編程、深入理解linux內(nèi)核、情景分析和源代。3、學習嵌入式linux:目的:掌握嵌入式處理器其及系統(tǒng)。
方法:(1)嵌入式微處理器結(jié)構(gòu)與應(yīng)用:直接arm原理及匯編即可,不要重復x86。(2)嵌入式操作系統(tǒng)類:ucOS/II簡單,開源,可供入門。
而后深入研究uClinux。(3)必須有塊開發(fā)板(arm9以上),有條件可參加培訓(進步快,能認識些朋友)。
主攻書籍:毛德操的《嵌入式系統(tǒng)》及其他arm9手冊與arm匯編指令等。4、深入學習:A、數(shù)字圖像壓縮技術(shù):主要是應(yīng)掌握MPEG、mp3等編解碼算法和技術(shù)。
B、通信協(xié)議及編程技術(shù):TCP/IP協(xié)議、802.11,Bluetooth,GPRS、GSM、CDMA等。2010-8-2116:46回復122.90.173.*2樓C、網(wǎng)絡(luò)與信息安全技術(shù):如加密技術(shù),數(shù)字證書CA等。
D、DSP技術(shù):DigitalSignalProcess,DSP處理器通過硬件實現(xiàn)數(shù)字信號處理算法。說明:太多細節(jié)未說明,可根據(jù)實際情況調(diào)整。
重點在于1、3,不必完全按照順序作。對于學習c++,理由是c++不只是一種語言,一種工具,她還是一種藝術(shù),一種文化,一種哲學理念、但不是拿來炫耀得東西。
對于linux內(nèi)核,學習編程,讀一些優(yōu)秀代碼也是有必要的。注意:要學會舉一反多,有強大的基礎(chǔ),很多東西簡單看看就能會。
想成為合格的程序員,前提是必須熟練至少一種編程語言,并具有良好的邏輯思維。一定要理論結(jié)合實踐。
不要一味鉆研技術(shù),雖然擠出時間是很難做到的,但還是要留點余地去完善其他的愛好,比如宇宙,素描、機械、管理,心理學、游戲、科幻電影。還有一些不愿意做但必須要做的!技術(shù)是通過編程編程在編程編出來的。
永遠不要夢想一步登天,不要做浮躁的人,不要覺得路途漫上。而是要編程編程在編程,完了在編程,在編程!等機會來了在創(chuàng)業(yè)(不要相信有奇跡發(fā)生,盲目創(chuàng)業(yè)很難成功,即便成功了發(fā)展空間也不一定很大)。
嵌入式書籍推薦Linux基礎(chǔ)1、《Linux與UnixShell編程指南》C語言基礎(chǔ)1、《CPrimerPlus,5thEdition》【美】StephenPrata著2、《,2ndEdition》【美】BrianW.KernighanDavidM.Rithie(K&R)著3、《,2ndEdition》(APUE)4、《嵌入式Linux應(yīng)用程序開發(fā)詳解》Linux內(nèi)核1、《深入理解Linux內(nèi)核》(第三版)2、《Linux內(nèi)核源代碼情景分析》毛德操胡希明著研發(fā)方向1、《。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:2.383秒