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