初學(xué)者如何開始學(xué)習(xí)嵌入式開發(fā)一般要學(xué)多久 呢?新手入門全干貨!零基礎(chǔ)小白入門學(xué)ARM嵌入式系統(tǒng)開發(fā),應(yīng)該要學(xué)什么啊,嵌入式開發(fā)學(xué)習(xí)如果自學(xué)要多久啊?,嵌入式開發(fā)要學(xué)什么東東?,計(jì)算機(jī)嵌入式軟件開發(fā)專業(yè)要學(xué)什么程序設(shè)計(jì)語言??必看
1.學(xué)ARM嵌入式系統(tǒng)開發(fā),應(yīng)該要學(xué)什么啊
FinC 是什么 A Langauge & with C-like Syntax 一款類似 C 語言的解釋器 國人自己開發(fā)的嵌入式編成語言,短小精干實(shí)時(shí),同時(shí)兼顧大家操作習(xí)慣。作者就像龍芯開發(fā)者一樣,有這樣執(zhí)著科學(xué)、實(shí)踐和探索精神,值得我們尊敬和支持。 項(xiàng)目簡介 FinC 是一套語法類似 C 語言的編程語言解釋器(The of A Language)。FinC的初始目標(biāo)是面向嵌入式領(lǐng)域的編程語言,所以它非常強(qiáng)調(diào)小、小、再小,實(shí)時(shí)、實(shí)時(shí)、再實(shí)時(shí)。 FinC 是一個(gè)實(shí)現(xiàn)非常短小的解釋器,編譯后二進(jìn)制文件大小在 100k 左右,剪裁版本 Finsh 可完全用于嵌入式設(shè)備實(shí)現(xiàn) vxWorks shell 類似的功能,而其大小僅在幾k。 FinC 0.3 已被移植到多個(gè)系統(tǒng),Linux/Win32/vxWorks/Nucleus以及DOOLOO RTOS…… 功能介紹 0.3 系列版本內(nèi)部完全解釋執(zhí)行,不產(chǎn)生任何中間代碼,支持C語言的基本數(shù)據(jù)類型(char/short/int/long/float),基本指針,字符串,結(jié)構(gòu)體,一維數(shù)組等,支持?/:三項(xiàng)式語句,逗號(hào)語句,if/else 條件語句,for/while 循環(huán),支持函數(shù),支持調(diào)用系統(tǒng)函數(shù)。0.3 系列的目標(biāo)就是和 C89 完全兼容。 0.4 系列版本將能夠直接運(yùn)行于 Java 虛擬機(jī),并給出一個(gè)完全嵌入式設(shè)備上的 Java 虛擬機(jī)實(shí)現(xiàn)(二進(jìn)制代碼尺寸:32k、64k及以上級別)。 應(yīng)用方向 FinC 0.3 系列的應(yīng)用方向主要向兩個(gè)方向發(fā)展: #1. 全功能的 FinC,用于 C 語言應(yīng)用程序的測試(),可以把一個(gè)動(dòng)態(tài)鏈接庫直接導(dǎo)入到解釋器中,采用交互式或批處理的方式執(zhí)行測試;交互式,能通過 shell 的形式直接調(diào)用動(dòng)態(tài)鏈接庫中的函數(shù),查看/修改全局變量。 #2. 剪裁版本的 Finsh,用于和 配合使用,能夠在 shell 狀態(tài)下交互的執(zhí)行嵌入式設(shè)備中的函數(shù),查看/修改變量、內(nèi)存數(shù)據(jù)、設(shè)備寄存器等等。 盡力而為??!我也不懂??!我只知道不論要學(xué)什么,學(xué)習(xí)c語言是首要的!!
2.嵌入式開發(fā)學(xué)習(xí)如果自學(xué)要多久?。?/h3>
我去年報(bào)了個(gè)嵌入所培訓(xùn)班,學(xué)習(xí)了5個(gè)月,沒去上課前連c語音的if語句都不會(huì)寫,可以說所從零開始,學(xué)習(xí)課程包括c語音,高級編程,網(wǎng)絡(luò)編程,數(shù)據(jù)結(jié)構(gòu),c++,內(nèi)核驅(qū)動(dòng),qt等。前面3個(gè)是最主要的,我們上課時(shí)間是每周6天,從白天9點(diǎn)到晚上9點(diǎn)?;境鰜淼膶W(xué)員進(jìn)相關(guān)公司研發(fā)部沒問題,單獨(dú)承擔(dān)項(xiàng)目還是有難度的。如果你要自學(xué)的話得看你現(xiàn)在的水平了。還有你想學(xué)習(xí)到什么程度和每天用于學(xué)習(xí)的時(shí)間。不過這個(gè)自學(xué)如果沒基礎(chǔ)的話還是很麻煩的。
3.嵌入式開發(fā)要學(xué)什么東東?
我是做嵌入式的,我覺得學(xué)的最快的方法就是買套開發(fā)板自己開發(fā)練習(xí),如果單考看書,應(yīng)該學(xué)起來很慢且沒什么效果.因?yàn)榫唧w到開發(fā)不同的產(chǎn)品硬件會(huì)不一樣,編譯的過程中也不一定會(huì)是書上寫的那么順利不出錯(cuò)誤.而且錯(cuò)誤也是不定的,只有自己真正做過一編才能夠深入了解.
4.計(jì)算機(jī)嵌入式軟件開發(fā)專業(yè)要學(xué)什么程序設(shè)計(jì)語言
一、定義 嵌入式技術(shù)就是"專用"計(jì)算機(jī)技術(shù),這個(gè)專用,是指針對某個(gè)特定的應(yīng)用,如針對網(wǎng)絡(luò)、針對通信、針對音頻、針對視頻,針對工業(yè)控制等,從學(xué)術(shù)的角度,嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),并且軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng),它一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入 式操作系統(tǒng)以及用戶的應(yīng)用程序等四個(gè)部分組成。二、分層嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用層。1、硬件層,是整個(gè)嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機(jī)及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對容易,硬件層也是驅(qū)動(dòng)層的基礎(chǔ),一個(gè)優(yōu)秀的驅(qū)動(dòng)工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設(shè)計(jì)的,同時(shí)還要對操作系統(tǒng)內(nèi)核及其調(diào)度性相當(dāng)?shù)氖煜さ摹5布脚_(tái)是基礎(chǔ),增值還要靠軟件。硬件層比較適合于,電子、通信、自動(dòng)化、機(jī)電一體、信息工程類專業(yè)的人來搞,需要掌握的專業(yè)基礎(chǔ)知識(shí)有,單片機(jī)原理及接口技術(shù)、微機(jī)原理及接口技術(shù)、C語言。2、驅(qū)動(dòng)層,這部分比較難,驅(qū)動(dòng)工程師不僅要能看懂電路圖還要能對操作系統(tǒng)內(nèi)核十分的精通,以便其所寫的驅(qū)動(dòng)程序在系統(tǒng)調(diào)用時(shí),不會(huì)獨(dú)占操作系統(tǒng)時(shí)間片,而導(dǎo)至其它任務(wù)不能動(dòng)行,不懂操作系統(tǒng)內(nèi)核架構(gòu)和實(shí)時(shí)調(diào)度性,沒有良好的驅(qū)動(dòng)編寫風(fēng)格,按大多數(shù)書上所說添加的驅(qū)動(dòng)的方式,很多人都能做到,但可能連個(gè)初級的驅(qū)動(dòng)工程師的水平都達(dá)不到,這樣所寫的驅(qū)動(dòng)在應(yīng)用調(diào)用時(shí)就如同windows下我們打開一個(gè)程序運(yùn)行后,再打開一個(gè)程序時(shí),要不就是中斷以前的程序,要不就是等上一會(huì)才能運(yùn)行后來打開的程序。想做個(gè)好的驅(qū)動(dòng)人員沒有三、四年功底,操作系統(tǒng)內(nèi)核不研究上幾編,不是太容易成功的,但其工資在嵌入式系統(tǒng)四層中可是*的。驅(qū)動(dòng)層比較適合于電子、通信、自動(dòng)化、機(jī)電一體、信息工程類專業(yè)尤其是計(jì)算機(jī)偏體系結(jié)構(gòu)類專業(yè)的人來搞,除硬件層所具備的基礎(chǔ)*外,還要對數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。3、操作系統(tǒng)層,對于操作系統(tǒng)層目前可能只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū)動(dòng)工程師來完成。操作系統(tǒng)是負(fù)責(zé)系統(tǒng)任務(wù)的調(diào)試、磁盤和文件的管理,而嵌入式系統(tǒng)的實(shí)時(shí)性十分重要。據(jù)說,XP操作系統(tǒng)是微軟投入300人用兩年時(shí)間才搞定的,總時(shí)工時(shí)是600人年,中科院軟件所自己的女媧Hopen操作系統(tǒng)估計(jì)也得花遇幾百人年才能搞定。因此這部分工作相對來講沒有太大意義。4、應(yīng)用層,相對來講較為容易的,如果會(huì)在windows下如何進(jìn)行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應(yīng)的變化而已。如果涉及Jave方面的編程也是如此的。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫、基于嵌入式系統(tǒng)的網(wǎng)絡(luò)編程和基于某此應(yīng)用層面的協(xié)議應(yīng)用開發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復(fù)雜,并且有難度了。
看了以上有關(guān)的嵌入式開發(fā)一般要學(xué)多久講解,如果還有什么疑問可以直接來電咨詢。