嵌入式技術(shù)實(shí)習(xí)心得
嵌入式實(shí)習(xí)即嵌入式Linux系統(tǒng)、Android系統(tǒng)開發(fā),主要講述嵌入式學(xué)習(xí)的方法,嵌入式學(xué)習(xí)路線、和興趣學(xué)習(xí)嵌入式的必要性。以下是小編為您整理的嵌入式技術(shù)實(shí)習(xí)心得,歡迎您的參閱。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇1)
我懷著激動(dòng)的心情踏上了期待已久的實(shí)習(xí)之路,當(dāng)我坐上離開學(xué)校的的班車那一刻起,我就知道我將經(jīng)歷一段特殊而不平凡,并且充滿收獲的人生旅程。那旅程必定在我的生命中寫下濃墨重彩的一筆,必定會(huì)在我的生命中留下絢爛多彩的回憶,并定會(huì)給我?guī)砩袩o與倫比的財(cái)富。那時(shí)候?qū)ψ约旱奈磥沓錆M希望,希望在那里能大展拳腳,實(shí)現(xiàn)自己的抱負(fù)。那時(shí)候想的是多么多么的美好,直到現(xiàn)在我才知道,當(dāng)時(shí)的自己是那么的幼稚。
在幾個(gè)月的實(shí)習(xí)生活里,我學(xué)會(huì)了很多東西,也懂得了很多在學(xué)校沒法體會(huì)到的知識(shí)和道理?;仡檸讉€(gè)月以來,從那天真的我到經(jīng)歷了生活中的挫折和失敗,到現(xiàn)在穩(wěn)重和冷靜的我,使我明白了一個(gè)道理:人生不可能是一帆風(fēng)順的,只有自己勇敢地面對(duì)人生中的每一個(gè)挫折和失敗,才能通往自己的羅馬大道。在這幾個(gè)月里,我有失落過,煩惱過,悲傷過,失敗過,但我知道這是上天對(duì)我的一個(gè)考驗(yàn),在每次失敗的時(shí)候我都會(huì)反省自己,告訴自己清楚自己應(yīng)該做什么,在挫折面前我們應(yīng)該善于用揚(yáng)長避短的方法來促進(jìn)自己,提高自己的綜合水平能力。在學(xué)習(xí)方面雖然自己普通平凡,但我會(huì)努力提高,做到最好,不管遇到什么困難我都不會(huì)氣餒,我會(huì)努力不懈,爭取做到最好。
在幾個(gè)月的實(shí)習(xí)里,我學(xué)會(huì)了適應(yīng)生存環(huán)境,樂觀面對(duì)生活,還提高了自己的交流能力,知識(shí)技能和動(dòng)手能力,我知道這些給我的僅是初步的經(jīng)驗(yàn)積累,對(duì)于邁向社會(huì)還是遠(yuǎn)遠(yuǎn)不夠的,所以在學(xué)習(xí)生活除外,在假日我會(huì)積極參加社會(huì)各種實(shí)踐活動(dòng),以獲取更多學(xué)習(xí)的經(jīng)驗(yàn)和社會(huì)實(shí)踐能力,我的未來不是夢,只要自己努力過,成功是不會(huì)把你拒之門外的。
人總是在失敗中才會(huì)成長,不經(jīng)歷風(fēng)雨怎能看見彩虹啊,所以在面對(duì)失敗時(shí)我會(huì)勇往直前,越挫越勇,別人能做到的我一樣也可以,別人做不到的我會(huì)努力去做到,因此,面對(duì)過去,我無怨無悔,面對(duì)現(xiàn)在,我努力拼搏,面對(duì)將來,我期待更多的挑戰(zhàn),戰(zhàn)勝困難,抓住每一個(gè)機(jī)遇,相信自己一定會(huì)演繹出精彩的一幕。在今后的學(xué)習(xí)生活里,我會(huì)繼續(xù)努力,做好社會(huì)主義的接班人,在生活上自覺嚴(yán)格要求自己,艱苦樸素,遵紀(jì)守法,作風(fēng)正派,各方面表現(xiàn)良好。為社會(huì)主義現(xiàn)代化建設(shè),貢獻(xiàn)自己的力量。
在整個(gè)實(shí)習(xí)過程中,我每天都有很多的新的體會(huì),想說的很多,我總結(jié)下來主要有以下幾點(diǎn):
1、心態(tài)的轉(zhuǎn)變
學(xué)校的生活相對(duì)而言較為單純,無需我們擔(dān)憂很多的問題,學(xué)校三點(diǎn)一線的生活,學(xué)習(xí)跟得上就可以,而在實(shí)際的運(yùn)作中當(dāng)中則不然,實(shí)際中,我們要考慮的則更多,及時(shí)的轉(zhuǎn)變心態(tài)會(huì)讓我們工作更加順利。
2、不以事小而不為
做大事小事有不同的階段,要想做大事,小事情必須做好。我們正是實(shí)習(xí)的階段,做一些繁瑣的小事情,很有必要。這些小事情值得我去做。事情雖小,可過程至關(guān)重要。
3、多聽、多看、多想、多做、少說
我們到實(shí)習(xí)單位工作以后,要知道自己能否勝任這份工作,關(guān)鍵是看你自己對(duì)待工作的態(tài)度。態(tài)度對(duì)了,即使自己以前沒學(xué)過的知識(shí)也可以在工作中逐漸的掌握。態(tài)度不好,就算自己有知識(shí)基礎(chǔ)也不會(huì)把工作做好,我剛到這個(gè)崗位工作,根本不清楚該做些什么。剛開始我覺得很頭痛,可經(jīng)過工作過程中多看別人怎樣做,多聽別人怎樣說,多想自己應(yīng)該怎樣做,然后自己親自動(dòng)手去多做,終于在短短幾天里對(duì)工作有了一個(gè)較系統(tǒng)的認(rèn)識(shí),慢慢的自己也可以完成相關(guān)的工作了,光用嘴巴去說是不行的,所以,我們今后不管干什么都要端正自己的態(tài)度,這樣才能把事情做好。
4、少埋怨
在條件艱苦的實(shí)習(xí)地方,也許有的人會(huì)覺得這里不好那里不好,同事也不好相處工作也不如愿,經(jīng)常埋怨,這樣只會(huì)影響自己的工作情緒,不但做不好工作,還增加了自己的壓力,所以,我們應(yīng)該少埋怨,要看到好的一面,對(duì)存在的問題應(yīng)該想辦法去解決而不是去埋怨,這樣才能保持工作的激情。
5、與他人和睦相處,加強(qiáng)和同事以及他人之間的溝通
學(xué)校里成績不錯(cuò)的學(xué)生變成了未知領(lǐng)域里從頭學(xué)起的實(shí)習(xí)生,而熟悉的校園也變成了陌生的企業(yè)單位,身邊接觸的人同樣改變了角色:老師變成了領(lǐng)導(dǎo),同學(xué)變成了同事,相處之道完全不同。在這樣的轉(zhuǎn)變中,對(duì)于溝通的認(rèn)知顯得非常蒼白。于是第一次覺得自己并沒有本以為的那么善于溝通。當(dāng)然,適應(yīng)新的環(huán)境是需要過程的,所以我相信時(shí)間和實(shí)踐會(huì)讓我很快完成這種角色的轉(zhuǎn)變,真正融入到工作單位這個(gè)與學(xué)校全然不同的社會(huì)大環(huán)境中。在很多地方,由于地區(qū)和文化的差異,會(huì)存在語言交流的障礙。我們說什么,他們不知道;他們說什么,我們也是模糊不清。這不僅影響到和他們之間的知識(shí)交流,更會(huì)影響到一切工作順利完成。另外,和同事之間如果沒有共同的語言,不能正常的交流,在工作的時(shí)候,每個(gè)人之間就不能相互配合,影響工作效率,同事之間也會(huì)感覺很陌生。
6、虛心學(xué)習(xí)
在這次實(shí)習(xí)過程中,我們碰到很多問題,有的是我們懂得的,也有很多是我們不懂的,不懂的東西我們要虛心向同事或領(lǐng)導(dǎo)請(qǐng)教,當(dāng)別人教我們知識(shí)的時(shí)候,我們也應(yīng)該虛心的接受,不要認(rèn)為自己懂得一點(diǎn)雞毛蒜皮就飄飄然,要把社會(huì)實(shí)踐當(dāng)著我們真實(shí)的老師。
7、錯(cuò)不可怕,就怕一錯(cuò)再錯(cuò)
每一個(gè)人都有犯錯(cuò)的時(shí)候,工作中第一次做錯(cuò)了不要緊,領(lǐng)導(dǎo)會(huì)糾正并原諒你,但下次你還在同一個(gè)問題上犯錯(cuò)誤,那你就享受不到第一次犯錯(cuò)時(shí)的待遇了。
此次的畢業(yè)實(shí)習(xí),為我以后深入社會(huì),體驗(yàn)生活提供了難得的機(jī)會(huì),讓我在實(shí)際的社會(huì)活動(dòng)中感受生活,了解在社會(huì)中生存所應(yīng)該具備的各種能力,為以后自己在社會(huì)中打拼,奠定堅(jiān)實(shí)的基礎(chǔ)。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇2)
這學(xué)期才接觸嵌入式系統(tǒng)感覺還稱不上入門,我通過學(xué)習(xí)知道了嵌入式的發(fā)展前景很大,各個(gè)領(lǐng)域都用到了嵌入式,學(xué)好嵌入式不愁沒飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統(tǒng)都是嵌入式系統(tǒng)。如各類單片機(jī)和DSP系統(tǒng)。從狹義上講,那些使用嵌入式微處理器構(gòu)成獨(dú)立系統(tǒng),具有自己操作系統(tǒng),具有特定功能,用于特定場合的專用軟硬件系統(tǒng)稱為嵌入式系統(tǒng)。嵌入式系統(tǒng)由嵌入式硬件與嵌入式軟件組成;嵌入式硬件以芯片、模板、組件、控制器形式埋藏于設(shè)備內(nèi)部。
理解“嵌入”的概念 主要從三個(gè)方面上來理解。
1、從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,比如早期基于X86體系結(jié)構(gòu)下的計(jì)算機(jī),CPU只是有運(yùn)算器和累加器的功能,一切芯片要造外部橋路來擴(kuò)展實(shí)現(xiàn),象串口之類的都是靠外部的16C550/2的串口控制器芯片實(shí)現(xiàn),而目前的這種串口控制器芯片早已集成到CPU內(nèi)部,還有PC機(jī)有顯卡,而多數(shù)嵌入式處理器都帶有LCD控制器,但其種意義上就相當(dāng)于顯卡。比較高端的ARM類IntelXscale架構(gòu)下的IXP網(wǎng)絡(luò)處理器CPU內(nèi)部集成PCI控制器(可配成支持4個(gè)PCI從設(shè)備或配成自身為CPI從設(shè)備);還集成3個(gè)NPE網(wǎng)絡(luò)處理器引擎,其中兩個(gè)對(duì)應(yīng)于兩個(gè)MAC地址,可用于網(wǎng)關(guān)交換用,而另外一個(gè)NPE網(wǎng)絡(luò)處理器引擎支持DSL,只要外面再加個(gè)PHY芯片即可以實(shí)現(xiàn)DSL上網(wǎng)功能。IXP系列最高主頻可以達(dá)到1.8G,支持2G內(nèi)存,1G×10或10G×1的以太網(wǎng)口或Febrechannel的光通道。IXP系列應(yīng)該是目標(biāo)基于ARM體系統(tǒng)結(jié)構(gòu)下由intel進(jìn)行整合后成Xscale內(nèi)核的最高的處理器了。
2、從軟件上前,就是在定制操作系統(tǒng)內(nèi)核里將應(yīng)用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時(shí)所選擇的應(yīng)用程序組件就是完成了軟件的“嵌入”,比如WinCE在內(nèi)核定制時(shí),會(huì)有相應(yīng)選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇了,在CE啟動(dòng)后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。
3、把軟件內(nèi)核或應(yīng)用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺(tái)中的ROM中就實(shí)現(xiàn)了一個(gè)真正的“嵌入”。。
嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用層
1、硬件層,是整個(gè)嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機(jī)及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對(duì)容易,硬件層也是驅(qū)動(dòng)層的基礎(chǔ),一個(gè)優(yōu)秀的驅(qū)動(dòng)工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設(shè)計(jì)的,同時(shí)還要對(duì)操作系統(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)工程師不僅要能看懂電路圖還要能對(duì)操作系統(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è)初級(jí)的驅(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ǔ)學(xué)科外,還要對(duì)數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。
3、操作系統(tǒng)層,對(duì)于操作系統(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ì)也得花遇幾百人年才能搞定。因此這部分工作相對(duì)來講沒有太大意義。
4、應(yīng)用層,相對(duì)來講較為容易的,如果會(huì)在windows下如何進(jìn)行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應(yīng)的變化而已。如果涉及Java方面的編程也是如此的。嵌入式系統(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ù)雜,并且有難度了。
通過網(wǎng)上查詢我發(fā)現(xiàn)目前國內(nèi)外這方面的人都很稀缺。一方面,是因?yàn)檫@一領(lǐng)域入門門檻較高,不僅要懂較底層軟件(例如操作系統(tǒng)級(jí)、驅(qū)動(dòng)程序級(jí)軟件),對(duì)軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對(duì)軟件設(shè)計(jì)的時(shí)間和空間效率要求較高),而且必須懂得硬件的工作原理,所以非專業(yè)IT人員很難切入這一領(lǐng)域;另一方面,是因?yàn)檫@一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)出現(xiàn)時(shí)間不長或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)等),掌握這些新技術(shù)的人當(dāng)然很少。嵌入式人才稀缺,身價(jià)自然就高,越有經(jīng)驗(yàn)價(jià)格就越高。其實(shí)嵌入式人才稀少,根本原因可能是大多數(shù)人無條件接觸,這需要相應(yīng)的嵌入式開發(fā)板和軟件,另外需要有經(jīng)驗(yàn)的人進(jìn)行指導(dǎo)開發(fā)流程。我們軟件系的人學(xué)習(xí)嵌入式,顯然應(yīng)偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面。對(duì)于搞嵌入式軟件的人,最重要的技術(shù)顯然是掌握主流嵌入式微處理器的結(jié)構(gòu)與原理,必須掌握一個(gè)嵌入式操作系統(tǒng),必須熟悉嵌入式軟件開發(fā)流程并至少做過一個(gè)嵌入式軟件項(xiàng)目。
然而我們都沒有做過一個(gè)嵌入式軟件項(xiàng)目,甚至連嵌入式的開發(fā)流程我也不清楚,我只了解了使用簡單工具做一個(gè)簡單的實(shí)驗(yàn)。只有去專研才能在嵌入式的領(lǐng)域站住腳,只有知道的比別人多才會(huì)更有競爭力。通過網(wǎng)上了解,我查詢了嵌入式的入門和所需要的知識(shí),其中C語言尤為重要,不管是做嵌入式軟件還是硬件開發(fā)的人員,對(duì)C語言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開發(fā)的人,現(xiàn)在絕大部分都是用C語言。其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來分配資源的,系統(tǒng)如何來管理硬件的;知道了c語言和操作系統(tǒng)之后,再來看看嵌入式系統(tǒng),我們主要學(xué)的是ARM,用的是ARM7,深入理解ARM不是件容易的事,只有在知道ARM相關(guān)知識(shí)之后才能稱得上嵌入式已經(jīng)入門了。與嵌入式有關(guān)的知識(shí)我也學(xué)了不少就是不能夠綜合在一起運(yùn)用,組成原理,數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),C++,這3門與嵌入式密切相關(guān)的學(xué)科都系統(tǒng)的學(xué)了一遍,但由于長時(shí)間沒用到都有點(diǎn)忘記了,從網(wǎng)上得知嵌入式的學(xué)習(xí)與這些書有很大關(guān)系之后,我把嵌入式與以前學(xué)過的知識(shí)結(jié)合起來發(fā)現(xiàn)嵌入式的實(shí)驗(yàn)中很多都是共通的,我對(duì)嵌入式有了初步的理解。
我以為學(xué)習(xí)嵌入式應(yīng)該分為2個(gè)部分:軟件和硬件。關(guān)于硬件方面我接觸到了數(shù)字電路教材和模擬電路方面的知識(shí),但由于沒有嵌入式CPU很難親自動(dòng)手來實(shí)現(xiàn)嵌入式的相關(guān)理論;嵌入式入門則需要不斷地實(shí)驗(yàn)與分析,我只在實(shí)驗(yàn)課時(shí)做幾個(gè)與所給的程序相關(guān)的小程序來實(shí)現(xiàn)一下;而軟件方面則學(xué)過C語言,里面通常的語法曾今熟悉過;我通過下列方法來適應(yīng)C語言在嵌入式中應(yīng)用:首先重新翻看了下C的教材,看了些常見的語法,接著在編譯器的角度來看待C,編譯原理我剛學(xué)過,其中將高級(jí)語言與低級(jí)語言的翻譯感覺在嵌入式中用到了很多;最后沖硬件的角度來看待C。嵌入式的核心包括嵌入式操作系統(tǒng),嵌入式軟件開發(fā)平臺(tái)及工具以及嵌入式應(yīng)用軟件。這些決定怎樣才能開發(fā)一個(gè)好的嵌入式系統(tǒng)。下面談?wù)勎伊私獾那度胧降南嚓P(guān)知識(shí)與應(yīng)用:
首先,嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),且軟硬件可裁減,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式有如下幾個(gè)突出的有點(diǎn)1.系統(tǒng)內(nèi)核小,2專用性強(qiáng),3系統(tǒng)精簡4高實(shí)時(shí)性O(shè)S5嵌入式系統(tǒng)的應(yīng)用程序可以沒有操作系統(tǒng)直接在芯片上運(yùn)行,6嵌入式系統(tǒng)需要開發(fā)工具和環(huán)境。
嵌入式系統(tǒng)是近幾年才風(fēng)靡起來的,但是這個(gè)概念并非新近才出現(xiàn)。從20世紀(jì)七十年代單片機(jī)(最早的單片機(jī)是Intel公司的8048,出現(xiàn)在1976年)的出現(xiàn)到今天各式各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史。經(jīng)過30年的發(fā)展,嵌入式技術(shù)已經(jīng)日趨成熟,在中國嵌入式機(jī)一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等四個(gè)部分組成,用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理等功能。
其次,嵌入式系統(tǒng)無疑是當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。嵌入式系統(tǒng)用在一些特定專用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)對(duì)實(shí)時(shí)響應(yīng)要求很高等。特別是隨著消費(fèi)家電的智能化,嵌入式更顯重要。嵌入式系統(tǒng)是軟硬結(jié)合的學(xué)科,通常有兩類人會(huì)去專研嵌入式:一類是學(xué)電子工程、通信工程等偏硬件專業(yè)的,另一類是學(xué)軟件、計(jì)算機(jī)專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開發(fā)。我是軟件專業(yè)的學(xué)習(xí)嵌入式,越是智能設(shè)備越是復(fù)雜系統(tǒng),軟件越起關(guān)鍵作用,而且這是目前的趨勢。嵌入式應(yīng)用在很多方面,具體的可以分為工業(yè)控制,交通管理,信息家電,家庭智能管理系統(tǒng),POS網(wǎng)絡(luò)及電子商務(wù),環(huán)境工程與自然,機(jī)器人,機(jī)電產(chǎn)品方面應(yīng)用等方面。其中目前在服務(wù)領(lǐng)域,如遠(yuǎn)程點(diǎn)菜器等已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢。例外還有很多地方用到了嵌入式系統(tǒng),最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業(yè)控制,采用最先進(jìn)的0.18微米CMOS嵌入式閃存處理技術(shù),操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業(yè)領(lǐng)域中對(duì)最終用戶而言是一套極具成本效益的解決方案。
那么該如何學(xué)好嵌入式我覺得應(yīng)該從以下幾點(diǎn)入手:
首先C語言,這個(gè)是毋庸置疑的,不管是做嵌入式軟件還是硬件開發(fā)的人員,對(duì)C語言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開發(fā)的人,現(xiàn)在絕大部分都是用C語言,你說不掌握它可以嗎?至于如何學(xué)習(xí)C語言,我想這些基礎(chǔ)的知識(shí)每個(gè)人都有自己的方法,關(guān)鍵要去學(xué)習(xí),看書也好,網(wǎng)上找些視頻看也好。很多人會(huì)問,C語言要學(xué)到怎么樣,我覺得這沒有標(biāo)準(zhǔn)的答案。我想至少你在明白了一些基礎(chǔ)的概念后,就該寫代碼了,動(dòng)手才是最重要的,當(dāng)你動(dòng)手了,遇到問題了,再反過來學(xué)習(xí),反過來查查課本,那時(shí)的收獲就不是你死看書能得到的。
其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來分配資源的,系統(tǒng)如何來管理硬件的,當(dāng)然,不是看書就能把這些理解透,如果不是一時(shí)能理解,沒關(guān)系,多看看,結(jié)合以后的項(xiàng)目經(jīng)驗(yàn),會(huì)有更好的理解的。
還有應(yīng)該學(xué)習(xí)下linux或者wince下的編程,這些對(duì)以后做應(yīng)用的編程很有幫助,當(dāng)然,如果做手機(jī)的話,那可以學(xué)習(xí)MTK、塞班、Android等操作系統(tǒng),Android是以后發(fā)展的趨勢,現(xiàn)在很熱門,Android也是基于linux系統(tǒng)封裝的,所以建議先學(xué)習(xí)下linux。
還有,應(yīng)該學(xué)習(xí)下單片機(jī)或者ARM或者M(jìn)IPS,很多人說我沒有單片機(jī)的經(jīng)驗(yàn),直接學(xué)ARM可以嗎?我覺得那完全沒有問題的,當(dāng)然如果你學(xué)習(xí)過單片機(jī),那最好不過了,以后學(xué)習(xí)ARM就更簡單了。
最后如果你把以上的知識(shí)都有所了解后,就該去閱讀閱讀一些優(yōu)秀的代碼,比如結(jié)合arm芯片手冊學(xué)習(xí)去學(xué)習(xí)下UBOOT的源代碼,了解下最小的系統(tǒng)開發(fā),那對(duì)你整個(gè)嵌入式開發(fā)的非常有幫助的,可以的話,還可以學(xué)習(xí)下linux的源代碼,當(dāng)然如果你直接閱讀2.6的代碼,我想你會(huì)很痛苦的,可以先看看linux代碼早期的版本,比如0.12 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇3)
4月10號(hào),為期一個(gè)階段的Linux開發(fā)基礎(chǔ)培訓(xùn)課程圓滿結(jié)束,回首這些天所留下的點(diǎn)點(diǎn)滴滴,感觸深深,學(xué)習(xí)上知識(shí)點(diǎn)的積累,靈活運(yùn)用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!
當(dāng)初初涉培訓(xùn)課程的第一門課程時(shí),都說Linux操作很繁瑣復(fù)雜,心里總有些顧忌,帶著種種不安與些許拼博的決心,開始了自我提升階段的“充電”,由徐海兵老師教授我們基礎(chǔ)課程的培訓(xùn),我們則像著小學(xué)生般認(rèn)真的記著筆記,仔細(xì)聽著并學(xué)會(huì)如何去在實(shí)踐中運(yùn)用所學(xué)的Linux下的各種強(qiáng)大的命令集。
在Unit 1中,徐老師詳細(xì)生動(dòng)的為我們講述了有關(guān)Linux的誕生、初成長以及輝煌的發(fā)展至今,今后應(yīng)用范圍則愈來愈廣泛,講解了為Linux這個(gè)偉大的OS做出巨大貢獻(xiàn)的一位位出色的、偉大的人物,他們那種學(xué)習(xí)鉆研的精神、鍥而不舍的信念、勇于把握住難得的機(jī)會(huì),從小處著手,踏踏實(shí)實(shí)的創(chuàng)造出了對(duì)人類科技發(fā)展做出卓越貢獻(xiàn)的Linux(Unix)系統(tǒng),他們的種種,都值得我們?nèi)ド羁谭词?、刻苦學(xué)習(xí)、傳承并永遠(yuǎn)發(fā)展下去。
查看ip地址和重啟網(wǎng)絡(luò)服務(wù)是我學(xué)的第一個(gè)命令: ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到遠(yuǎn)程登錄軟件可用xmanager。
secureCRT是我們常用的,安裝好后利用其登錄到了Red hat Linux,需要知道Linux主機(jī)的ip 地址。徐老師為我們介紹了重要內(nèi)容:SHELL,即運(yùn)行程序的程序,如echo $$SHELL可查看SHELL的環(huán)境變量是csh還是bash。指令pwd可查看當(dāng)前所在路徑,passwd:更改Linux下的密碼,僅限r(nóng)oot用戶有此權(quán)限,當(dāng)然我們是利用虛擬機(jī)VMware程序來運(yùn)行Linux OS的,懂得了如何設(shè)置虛擬機(jī)的網(wǎng)卡設(shè)置、暫停、恢復(fù)、全屏等。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇4)
以下主要是講在嵌入式開發(fā)學(xué)習(xí)和應(yīng)用階段,需要注意的一些細(xì)節(jié)和一些習(xí)慣,相信我的嵌入式開發(fā)學(xué)習(xí)心得對(duì)你會(huì)有幫助。
都說字如其人,但作為嵌入式工程師來講,編制程序的習(xí)慣同樣能夠反應(yīng)出其水平,每位工程師都會(huì)有自己的程序設(shè)計(jì)風(fēng)格和邏輯思路,所以想要成為一名合格的嵌入式工程師,形成良好的編程習(xí)慣是非常有必要的,如果便編寫的程序結(jié)構(gòu)合理、清晰、便于執(zhí)行,便于調(diào)試和維護(hù),不僅自己看得懂,別人也可以看懂,這樣的程序何樂而不為呢?下面就簡單來了解下基本的編程習(xí)慣需注意的幾點(diǎn)內(nèi)容,也就是我的嵌入式開發(fā)學(xué)習(xí)心得。
1、模塊化的程序結(jié)構(gòu)編程習(xí)慣。
模塊化設(shè)計(jì)簡單來講就是程序的編寫用主程序、子程序和子過程等框架把軟件的主要結(jié)構(gòu)和流程描述出來,同時(shí)定義和調(diào)試好各個(gè)框架之間的輸入和輸出鏈接關(guān)系,通過一些列的以功能塊為單位的算法描述進(jìn)行設(shè)計(jì),使程序復(fù)雜度、程序設(shè)計(jì)、調(diào)試和維護(hù)等等操作過程更為簡單化。
說到這里我想起了學(xué)習(xí)時(shí)實(shí)操項(xiàng)目的一些經(jīng)歷,如果要設(shè)計(jì)一款單片機(jī)控制器,該控制器接收串口發(fā)送來的文字信息,顯示在128X64的單色液晶屏上。通過約定的協(xié)議方式來確定文字的字體、大小、文字內(nèi)容等什么位置顯示、終這些信息會(huì)以什么樣的方式顯示出來。根據(jù)模塊化的程序設(shè)計(jì)思想,程序代碼分布在串口數(shù)據(jù)收發(fā)模塊、數(shù)據(jù)協(xié)議解析處理模塊、LCD文字顯示處理模塊和主程序模塊四個(gè)模塊內(nèi)。經(jīng)過簡單的分析和設(shè)計(jì)思想,使每個(gè)模塊都形成目的明確、功能單一的程序代碼,然后每個(gè)模塊再通過頭文件,將模塊中的接口函數(shù)、全局變量、結(jié)構(gòu)體等內(nèi)容導(dǎo)出。終系統(tǒng)功能就會(huì)很好地實(shí)現(xiàn)。
2、清晰移動(dòng)的命名規(guī)則編程習(xí)慣
命名規(guī)則對(duì)于嵌入式工程師來講在工作中扮演者不可或缺的角色,對(duì)于一般的事物來講,我們可以通過名字便可知道與它相關(guān)的一系列信息,同樣在編寫程序的過程中,我們也可以通過簡單的命名來實(shí)現(xiàn)所寫程序的可讀性,但在命名過程中我們要注意程序當(dāng)中的這些函數(shù)、變量、和常量等元素不能夠隨意命名,如果你只是簡單隨意的命名就會(huì)使程序的易讀性大大降低,當(dāng)然程序的維護(hù)性也會(huì)大打折扣。
講到命名規(guī)則的相關(guān)內(nèi)容,大家不妨可以了解了解華清遠(yuǎn)見授課老師的一則案例講解內(nèi)容,通過簡單的了解之后,肯定獲益良多,命名管道的簡單使用。
3、簡潔明了的注釋方法編程習(xí)慣
在編寫程序的過程中注釋是相當(dāng)有必要的,恰當(dāng)?shù)淖⑨尶梢院芎玫膶⒊绦蚰K清晰的描述出來,當(dāng)然在編寫程序過程中,復(fù)雜的算法需要加上流程說明,這時(shí)候恰當(dāng)?shù)淖⑨尵涂梢詫⒑瘮?shù)的功能作用描述的非常具體了,同時(shí)還可將重要的變量作用與用途標(biāo)注的清晰具體是非常有幫助的。
4、清晰易讀的文本格式編程習(xí)慣
無規(guī)矩不成方圓,通過程序代碼書寫的格式就可以大概了解你的程序質(zhì)量,程序代碼并不是你隨意堆砌在,必須要格式工整。程序書寫時(shí),必須要有縮進(jìn),而且每一條語句必須要換行。通過恰當(dāng)?shù)乃钥梢院芮逦淖x懂代碼的嵌套關(guān)系。程序是復(fù)雜的東西,是需要用智力去把握的智力產(chǎn)品。良好的格式能使程序結(jié)構(gòu)一目了然,幫助你和別人理解它,幫助你的思維,也幫助你發(fā)現(xiàn)程序中不正常的地方,使程序中的錯(cuò)誤更容易被發(fā)現(xiàn)。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇5)
這學(xué)期才接觸嵌入式系統(tǒng)感覺還稱不上入門,我通過學(xué)習(xí)知道了嵌入式的發(fā)展前景很大,各個(gè)領(lǐng)域都用到了嵌入式,學(xué)好嵌入式不愁沒飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統(tǒng)都是嵌入式系統(tǒng)。如各類單片機(jī)和DSP系統(tǒng)。從狹義上講,那些使用嵌入式微處理器構(gòu)成獨(dú)立系統(tǒng),具有自己操作系統(tǒng),具有特定功能,用于特定場合的專用軟硬件系統(tǒng)稱為嵌入式系統(tǒng)。嵌入式系統(tǒng)由嵌入式硬件與嵌入式軟件組成; 嵌入式硬件以芯片、模板、組件、控制器形式埋藏于設(shè)備內(nèi)部。
理解“嵌入”的概念 主要從三個(gè)方面上來理解。
1、從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,比如早期基于X86體系結(jié)構(gòu)下的計(jì)算機(jī),CPU只是有運(yùn)算器和累加器的功能,一切芯片要造外部橋路來擴(kuò)展實(shí)現(xiàn),象串口之類的都是靠外部的16C550/2的串口控制器芯片實(shí)現(xiàn),而目前的這種串口控制器芯片早已集成到CPU內(nèi)部,還有PC機(jī)有顯卡,而多數(shù)嵌入式處理器都帶有LCD控制器,但其種意義上就相當(dāng)于顯卡。比較高端的ARM類Intel Xscale架構(gòu)下的IXP網(wǎng)絡(luò)處理器CPU內(nèi)部集成PCI控制器(可配成支持4個(gè)PCI從設(shè)備或配成自身為CPI從設(shè)備);還集成3個(gè)NPE網(wǎng)絡(luò)處理器引擎,其中兩個(gè)對(duì)應(yīng)于兩個(gè)MAC地址,可用于網(wǎng)關(guān)交換用,而另外一個(gè)NPE網(wǎng)絡(luò)處理器引擎支持DSL,只要外面再加個(gè)PHY芯片即可以實(shí)現(xiàn)DSL上網(wǎng)功能。IXP系列最高主頻可以達(dá)到1.8G,支持2G內(nèi)存,1G10或10G1的以太網(wǎng)口或Febre channel的光通道。IXP系列應(yīng)該是目標(biāo)基于ARM體系統(tǒng)結(jié)構(gòu)下由intel進(jìn)行整合后成Xscale內(nèi)核的最高的處理器了。
2、從軟件上前,就是在定制操作系統(tǒng)內(nèi)核里將應(yīng)用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時(shí)所選擇的應(yīng)用程序組件就是完成了軟件的“嵌入”,比如WinCE在內(nèi)核定制時(shí),會(huì)有相應(yīng)選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇了,在CE啟動(dòng)后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。
3、把軟件內(nèi)核或應(yīng)用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺(tái)中的ROM中就實(shí)現(xiàn)了一個(gè)真正的“嵌入”。。
嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用層
1、硬件層,是整個(gè)嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機(jī)及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對(duì)容易,硬件層也是驅(qū)動(dòng)層的基礎(chǔ),一個(gè)優(yōu)秀的驅(qū)動(dòng)工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設(shè)計(jì)的,同時(shí)還要對(duì)操作系統(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)工程師不僅要能看懂電路圖還要能對(duì)操作系統(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è)初級(jí)的驅(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ǔ)學(xué)科外,還要對(duì)數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。
3、操作系統(tǒng)層,對(duì)于操作系統(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ì)也得花遇幾百人年才能搞定。因此這部分工作相對(duì)來講沒有太大意義。
4、應(yīng)用層,相對(duì)來講較為容易的,如果會(huì)在windows下如何進(jìn)行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應(yīng)的變化而已。如果涉及Java方面的編程也是如此的。嵌入式系統(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ù)雜,并且有難度了。
通過網(wǎng)上查詢我發(fā)現(xiàn)目前國內(nèi)外這方面的人都很稀缺。一方面,是因?yàn)檫@一領(lǐng)域入門門檻較高,不僅要懂較底層軟件(例如操作系統(tǒng)級(jí)、驅(qū)動(dòng)程序級(jí)軟件),對(duì)軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對(duì)軟件設(shè)計(jì)的時(shí)間和空間效率要求較高),而且必須懂得硬件的工作原理,所以非專業(yè)IT人員很難切入這一領(lǐng)域;另一方面,是因?yàn)檫@一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)出現(xiàn)時(shí)間不長或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)等),掌握這些新技術(shù)的人當(dāng)然很少。嵌入式人才稀缺,身價(jià)自然就高,越有經(jīng)驗(yàn)價(jià)格就越高。其實(shí)嵌入式人才稀少,根本原因可能是大多數(shù)人無條件接觸,這需要相應(yīng)的嵌入式開發(fā)板和軟件,另外需要有經(jīng)驗(yàn)的人進(jìn)行指導(dǎo)開發(fā)流程。我們軟件系的人學(xué)習(xí)嵌入式,顯然應(yīng)偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面。對(duì)于搞嵌入式軟件的人,最重要的技術(shù)顯然是掌握主流嵌入式微處理器的結(jié)構(gòu)與原理,必須掌握一個(gè)嵌入式操作系統(tǒng),必須熟悉嵌入式軟件開發(fā)流程并至少做過一個(gè)嵌入式軟件項(xiàng)目。
然而我們都沒有做過一個(gè)嵌入式軟件項(xiàng)目,甚至連嵌入式的開發(fā)流程我也不清楚,我只了解了使用簡單工具做一個(gè)簡單的實(shí)驗(yàn)。只有去專研才能在嵌入式的領(lǐng)域站住腳,只有知道的比別人多才會(huì)更有競爭力。通過網(wǎng)上了解,我查詢了嵌入式的入門和所需要的知識(shí),其中C語言尤為重要,不管是做嵌入式軟件還是硬件開發(fā)的人員,對(duì)C語言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開發(fā)的人,現(xiàn)在絕大部分都是用C語言。其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來分配資源的,系統(tǒng)如何來管理硬件的;知道了c語言和操作系統(tǒng)之后,再來看看嵌入式系統(tǒng),我們主要學(xué)的是ARM,用的是ARM7, 深入理解ARM不是件容易的事,只有在知道ARM相關(guān)知識(shí)之后才能稱得上嵌入式已經(jīng)入門了。 與嵌入式有關(guān)的知識(shí)我也學(xué)了不少就是不能夠綜合在一起運(yùn)用,組成原理,數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),C++,這3門與嵌入式密切相關(guān)的學(xué)科都系統(tǒng)的學(xué)了一遍,但由于長時(shí)間沒用到都有點(diǎn)忘記了,從網(wǎng)上得知嵌入式的學(xué)習(xí)與這些書有很大關(guān)系之后,我把嵌入式與以前學(xué)過的知識(shí)結(jié)合起來發(fā)現(xiàn)嵌入式的實(shí)驗(yàn)中很多都是共通的,我對(duì)嵌入式有了初步的理解。
我以為學(xué)習(xí)嵌入式應(yīng)該分為2個(gè)部分:軟件和硬件。關(guān)于硬件方面我接觸到了數(shù)字電路教材和模擬電路方面的知識(shí),但由于沒有嵌入式CPU很難親自動(dòng)手來實(shí)現(xiàn)嵌入式的相關(guān)理論;嵌入式入門則需要不斷地實(shí)驗(yàn)與分析,我只在實(shí)驗(yàn)課時(shí)做幾個(gè)與所給的程序相關(guān)的小程序來實(shí)現(xiàn)一下;而軟件方面則學(xué)過C語言,里面通常的語法曾今熟悉過;我通過下列方法來適應(yīng)C語言在嵌入式中應(yīng)用:首先重新翻看了下C的教材,看了些常見的語法,接著在編譯器的角度來看待C,編譯原理我剛學(xué)過,其中將高級(jí)語言與低級(jí)語言的翻譯感覺在嵌入式中用到了很多;最后沖硬件的角度來看待C。嵌入式的核心包括嵌入式操作系統(tǒng),嵌入式軟件開發(fā)平臺(tái)及工具以及嵌入式應(yīng)用軟件。這些決定怎樣才能開發(fā)一個(gè)好的嵌入式系統(tǒng)。 下面談?wù)勎伊私獾那度胧降南嚓P(guān)知識(shí)與應(yīng)用:
首先,嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),且軟硬件可裁減,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式有如下幾個(gè)突出的有點(diǎn)1.系統(tǒng)內(nèi)核小,2專用性強(qiáng),3系統(tǒng)精簡4高實(shí)時(shí)性O(shè)S5嵌入式系統(tǒng)的應(yīng)用程序可以沒有操作系統(tǒng)直接在芯片上運(yùn)行,6嵌入式系統(tǒng)需要開發(fā)工具和環(huán)境。
嵌入式系統(tǒng)是近幾年才風(fēng)靡起來的,但是這個(gè)概念并非新近才出現(xiàn)。從20世紀(jì)七十年代單片機(jī)(最早的單片機(jī)是Intel公司的 8048,出現(xiàn)在1976年)的出現(xiàn)到今天各式各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史。經(jīng)過30年的發(fā)展,嵌入式技術(shù)已經(jīng)日趨成熟,在中國嵌入式機(jī)一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等四個(gè)部分組成,用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理等功能。
其次,嵌入式系統(tǒng)無疑是當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。嵌入式系統(tǒng)用在一些特定專用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)對(duì)實(shí)時(shí)響應(yīng)要求很高等。特別是隨著消費(fèi)家電的智能化,嵌入式更顯重要。 嵌入式系統(tǒng)是軟硬結(jié)合的學(xué)科,通常有兩類人會(huì)去專研嵌入式:一類是學(xué)電子工程、通信工程等偏硬件專業(yè)的,另一類是學(xué)軟件、計(jì)算機(jī)專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開發(fā)。我是軟件專業(yè)的學(xué)習(xí)嵌入式,越是智能設(shè)備越是復(fù)雜系統(tǒng),軟件越起關(guān)鍵作用,而且這是目前的趨勢。嵌入式應(yīng)用在很多方面,具體的可以分為工業(yè)控制,交通管理,信息家電,家庭智能管理系統(tǒng),POS網(wǎng)絡(luò)及電子商務(wù),環(huán)境工程與自然,機(jī)器人,機(jī)電產(chǎn)品方面應(yīng)用等方面。其中目前在服務(wù)領(lǐng)域,如遠(yuǎn)程點(diǎn)菜器等已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢。例外還有很多地方用到了嵌入式系統(tǒng),最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業(yè)控制,采用最先進(jìn)的0.18微米CMOS嵌入式閃存處理技術(shù),操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業(yè)領(lǐng)域中對(duì)最終用戶而言是一套極具成本效益的解決方案。
那么該如何學(xué)好嵌入式我覺得應(yīng)該從以下幾點(diǎn)入手:
首先C語言,這個(gè)是毋庸置疑的,不管是做嵌入式軟件還是硬件開發(fā)的人員,對(duì)C語言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開發(fā)的人,現(xiàn)在絕大部分都是用C語言,你說不掌握它可以嗎?至于如何學(xué)習(xí)C語言,我想這些基礎(chǔ)的知識(shí)每個(gè)人都有自己的方法,關(guān)鍵要去學(xué)習(xí),看書也好,網(wǎng)上找些視頻看也好。很多人會(huì)問,C語言要學(xué)到怎么樣,我覺得這沒有標(biāo)準(zhǔn)的答案。我想至少你在明白了一些基礎(chǔ)的概念后,就該寫代碼了,動(dòng)手才是最重要的,當(dāng)你動(dòng)手了,遇到問題了,再反過來學(xué)習(xí),反過來查查課本,那時(shí)的收獲就不是你死看書能得到的。
其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來分配資源的,系統(tǒng)如何來管理硬件的,當(dāng)然,不是看書就能把這些理解透,如果不是一時(shí)能理解,沒關(guān)系,多看看,結(jié)合以后的項(xiàng)目經(jīng)驗(yàn),會(huì)有更好的理解的。
還有應(yīng)該學(xué)習(xí)下linux或者wince下的編程,這些對(duì)以后做應(yīng)用的編程很有幫助,當(dāng)然,如果做手機(jī)的話,那可以學(xué)習(xí)MTK、塞班、Android等操作系統(tǒng),Android是以后發(fā)展的趨勢,現(xiàn)在很熱門,Android也是基于linux系統(tǒng)封裝的,所以建議先學(xué)習(xí)下linux。
還有,應(yīng)該學(xué)習(xí)下單片機(jī)或者ARM或者M(jìn)IPS,很多人說我沒有單片機(jī)的經(jīng)驗(yàn),直接學(xué)ARM可以嗎?我覺得那完全沒有問題的,當(dāng)然如果你學(xué)習(xí)過單片機(jī),那最好不過了,以后學(xué)習(xí)ARM就更簡單了。
最后如果你把以上的知識(shí)都有所了解后,就該去閱讀閱讀一些優(yōu)秀的代碼,比如結(jié)合arm芯片手冊學(xué)習(xí)去學(xué)習(xí)下UBOOT的源代碼,了解下最小的系統(tǒng)開發(fā),那對(duì)你整個(gè)嵌入式開發(fā)的非常有幫助的,可以的話,還可以學(xué)習(xí)下linux的源代碼,當(dāng)然如果你直接閱讀2.6的代碼,我想你會(huì)很痛苦的,可以先看看linux 代碼早期的版本,比如0.12 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
以上就是我在本學(xué)期學(xué)習(xí)嵌入式后的心得及感想。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇6)
學(xué)習(xí)一種做上位機(jī)的語言VC或者C#,同時(shí)STM32要學(xué)的精通了,可以先在STM32上學(xué)習(xí)UCOS實(shí)時(shí)操作系統(tǒng),大三的時(shí)候要多參加大的項(xiàng)目,多參加比賽,我們實(shí)驗(yàn)室就會(huì)常參加賽佰特杯,還有挑戰(zhàn)杯,藍(lán)橋杯,拿著自己做的東西去參加。
大三如果還有時(shí)間的話,就開始做畢業(yè)設(shè)計(jì),一般兩個(gè)月應(yīng)該就能做好了,我們是選擇暑假留在學(xué)校做畢業(yè)設(shè)計(jì),實(shí)驗(yàn)室的老師給的題目。做完了就用ARM學(xué)習(xí)LINUX,當(dāng)然LINUX在學(xué)校階段熟悉就行。如果這些知識(shí)都掌握了,那學(xué)的一定不錯(cuò)了,以后就去實(shí)習(xí)吧,盡早去社會(huì)磨練磨練。
看了看怎么這么多東西要學(xué),選一個(gè)方向?qū)W不就行了嗎?這么多有什么用哪?我想告訴大家一句話:“孩子,我要求你讀書用功,不是因?yàn)槲乙愀鷦e人比成績,而是因?yàn)?,我希望你將來?huì)擁有選擇的權(quán)利,選擇有意義、有時(shí)間的工作,而不是被迫謀生。當(dāng)你的工作在你心中有意義,你就有成就感。當(dāng)你的工作給你時(shí)間,不剝奪你的生活,你就有尊嚴(yán)。成就感和尊嚴(yán),給你快樂!”
其實(shí)大學(xué)所學(xué)的知識(shí)都是基本的知識(shí),所學(xué)的知識(shí)都是為你以后學(xué)習(xí)更加深的知識(shí)打基礎(chǔ)的,當(dāng)你選擇一個(gè)新的方向,在大學(xué)里面如果還接觸過,那么學(xué)習(xí)起來就沒那么難了,如果壓根沒見過,那么學(xué)習(xí)起來一定會(huì)花費(fèi)大量的時(shí)間,工作的時(shí)候可不會(huì)給你這么多時(shí)間學(xué),所以多學(xué)點(diǎn)肯定是有用的。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇7)
我們學(xué)習(xí)的課本是嵌入式系統(tǒng)應(yīng)用教程。我學(xué)習(xí)的體會(huì)是這樣的:
開始時(shí),由于是剛剛?cè)腴T,對(duì)老師說的好多東西很好奇,列如C語言也是新鮮的,不過不太懂什么意思。但是慢慢的,了解深入后讓我有了更深的感觸和體會(huì)。在嵌入式的學(xué)習(xí)過程中,讓我了解了什么是嵌入式系統(tǒng)。它就是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可定制,適用于不同應(yīng)用場合,對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的計(jì)算機(jī)系統(tǒng)。他一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)、用戶應(yīng)用程序四個(gè)部分組成,用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理功能。嵌入式系統(tǒng)已經(jīng)應(yīng)用于科學(xué)研究、工業(yè)控制、軍事技術(shù)、交通通信、醫(yī)療衛(wèi)生、消費(fèi)娛樂等領(lǐng)域,人們?nèi)粘J褂玫氖謾C(jī)、PDA、汽車、智能家電、GPS等均是嵌入式系統(tǒng)的典型代表。
在學(xué)習(xí)命令的過程中,只要你認(rèn)真的看著老師操作還有認(rèn)真聽著他講,你就會(huì)發(fā)現(xiàn)有些命令的操作還是很簡單的,不過在操作的過程中,有時(shí)也會(huì)遇到困難,有時(shí)你按照書上學(xué)習(xí)的例子,命令輸入終端時(shí)會(huì)出現(xiàn)你不想要的結(jié)果,也就是錯(cuò)誤的結(jié)果。這是問問旁邊的同學(xué)或是懂得的同學(xué)就可以解決了。
在對(duì)于這部分的學(xué)習(xí)中,讓我知道了命令對(duì)于嵌入式的重要性。它是linux的重要內(nèi)容,linux中所有的功能都是通過命令執(zhí)行。在實(shí)際應(yīng)用中,為了減少系統(tǒng)開銷,經(jīng)常不使用圖形界面,此時(shí),對(duì)系統(tǒng)的所有操作都需要以命令方式來執(zhí)行。在嵌入式系統(tǒng)開發(fā)過程中,由于目標(biāo)機(jī)的性能和配置比較低,因此,一般情況下標(biāo)機(jī)僅具有命令窗口而沒有圖形界面,對(duì)目標(biāo)機(jī)的所有操作都通過命令來實(shí)現(xiàn)。還有的那就是進(jìn)一步學(xué)習(xí)與嵌入式系統(tǒng)開發(fā)相關(guān)的linux的服務(wù),他們的啟動(dòng)、設(shè)置等的操作和應(yīng)用。而在學(xué)習(xí)之中,我們主要介紹的是嵌入式系統(tǒng)中開發(fā)工程使用的TFTP、Telent和NFS服務(wù)。第一個(gè)實(shí)現(xiàn)的是上機(jī)位與下機(jī)位之間文件的傳輸、無磁盤網(wǎng)絡(luò)設(shè)備的啟動(dòng)等功能;第二個(gè)實(shí)現(xiàn)的是遠(yuǎn)程登錄功能;第三個(gè)實(shí)現(xiàn)的是網(wǎng)絡(luò)文件系統(tǒng)功能。
從以上的內(nèi)容之中,并不難感受到我們的學(xué)習(xí)過程是由淺入深的,這對(duì)于我們的學(xué)習(xí)也有了較好的幫助。當(dāng)然,我們學(xué)習(xí)的不僅僅是這么幾個(gè)內(nèi)容,其中還有相關(guān)的實(shí)驗(yàn)內(nèi)容。在我們基礎(chǔ)的學(xué)習(xí)過程之中,我有了這么一點(diǎn)的感受,總的來說就是概念加專業(yè)名詞還有介紹加實(shí)驗(yàn)。不過你絕對(duì)不能小看那些概念和介紹,它對(duì)我們有著很重要的指導(dǎo)作用哦!實(shí)驗(yàn)?zāi)蔷透挥谜f了,它提高我們的動(dòng)手能力,在實(shí)驗(yàn)的過程中還能讓你更加理解書中的理念,這就是我學(xué)習(xí)嵌入式的感受。
學(xué)習(xí)是可貴的,培訓(xùn)是精彩的。通過這次可貴而精彩的培訓(xùn)學(xué)習(xí),我們向嵌入式邁進(jìn)了一步。感嘆與憧憬之余,我想我們只有靠自己的聰明與才智、努力與勤奮去追求我們的美好生活。
嵌入式技術(shù)實(shí)習(xí)心得(精選篇8)
8月我參加了學(xué)校安排的課題實(shí)訓(xùn),基地在北京,學(xué)院安排我們集體坐火車一同前去,浩浩蕩蕩的隊(duì)伍開始出發(fā)了。剛來北京的時(shí)候,映入眼綿的都是高樓大廈,一直想到的地方終于到了,好多以前的同學(xué)聽說我要去北京實(shí)訓(xùn)都很羨慕不已,我自己也隱隱感到自豪。
我參加的課題實(shí)訓(xùn)是嵌入式方向的,開課的內(nèi)容主要是嵌入式開發(fā)方面的,C語言,數(shù)據(jù)結(jié)構(gòu),LINUX基本操作,網(wǎng)絡(luò)編程,操作系統(tǒng)和匯編語言,這些都是嵌入式不可缺少的。每個(gè)專業(yè)技能都決定了你以后找工過。我們班分了很多小組,每組都有小組長,小組長直接對(duì)我們負(fù)責(zé)。教課老師很認(rèn)真,都是從很基礎(chǔ)的開始講;同學(xué)們聽課也很認(rèn)真,由于代碼操作比較多,鍵盤的聲音源源不斷的在響。好久沒有感覺到這種濃重的學(xué)習(xí)氣氛了,而在這緊張而充實(shí)的學(xué)習(xí)氛圍中我獲益匪淺,感受頗多。
授課過程中老師們也傳授了一些找工作方面的經(jīng)驗(yàn),比如簡介的樣式和寫法,面試中的一些著裝,禮貌用語和技巧,對(duì)此基地的老師還精心的為我們安排了一場模擬面試,在其中我們學(xué)到了很多有關(guān)于面試方面的經(jīng)驗(yàn)。
通過這幾個(gè)月的實(shí)訓(xùn)我學(xué)到了很多,同時(shí)也讓我們意識(shí)到我們要學(xué)的更多。從程序的設(shè)計(jì)到編寫、畫圖、調(diào)試、修改、完善、到最后的實(shí)訓(xùn)報(bào)告,每個(gè)人都付出了時(shí)間和精力去做好自己的任務(wù)幫助隊(duì)友,所以團(tuán)隊(duì)的合作和隊(duì)友之間的相互協(xié)助非常重要。通過實(shí)訓(xùn)讓我們更深一步的對(duì)自己的專業(yè),對(duì)自己的能力,對(duì)自己所學(xué)的有正確的認(rèn)識(shí),并且能在以后的學(xué)習(xí)工作中不斷提高和完善自己。特別是講C語言和進(jìn)程通信中老師給了我們每個(gè)小組的幾個(gè)小項(xiàng)目,讓我學(xué)到了更多項(xiàng)目經(jīng)驗(yàn),這在學(xué)校之前是沒有的。這次實(shí)訓(xùn)也碰到了些問題,比如項(xiàng)目文檔的寫法,代碼的規(guī)范,流程圖的畫法,這些都有講究,在老師和同學(xué)的幫助下,我不斷的提高了在這些方面的學(xué)習(xí)。
生活上班主任郭老師和王老師對(duì)我們關(guān)懷備至,讓我們沒有感覺在外面的那種不適感,同學(xué)們也互幫互助,所以生活上大致沒什么問題,這讓我們更好的去學(xué)專業(yè)。很感謝學(xué)校有這樣的實(shí)訓(xùn)安排。
總的來說,這次實(shí)訓(xùn)還是比較成功的,無論是個(gè)人動(dòng)手能力還是團(tuán)隊(duì)協(xié)作能力都得到了很好的鍛煉。在實(shí)訓(xùn)過程中老師也交給我們很多簡單實(shí)用的技巧。我們也學(xué)到了,做好做對(duì)一個(gè)項(xiàng)目固然重要,同時(shí)美觀程度也是必不可少的,無論是從參觀者的角度還是自己看的角度都很重要。