嵌入式學習心得體會(通用22篇)
當在某些事情上我們有很深的體會時,寫一篇心得體會,記錄下來,通過寫心得體會,可以幫助我們總結(jié)積累經(jīng)驗。那么你知道心得體會如何寫嗎?下面是小編整理的嵌入式學習心得體會,僅供參考,大家一起來看看吧。
嵌入式學習心得體會 1
本人大學學的是電子信息科學與技術專業(yè),其實這個專業(yè)和嵌入式?jīng)]有多大的關系,要說有關系就是簡單的講了下C語言語法,學完之后還不知道什么是C語言,只記住了,char,int,string等占幾個字節(jié),if, for, while循環(huán)什么的,感覺也就能算一些小學就會的題目,全國計算機等級二級也就糊涂的過了。我這個專業(yè)沒學過C++,一開始不知道什么是向?qū)ο,什么叫面向過程,這可能讓大家笑話了。不過這說的是實話,大學的時候比較喜歡動手,喜歡硬 件方面的東西,也喜歡看書。
在大一的時候就聽學長說,單片機很難學,在沒事的時候就從圖書管借了本關于51的書,一開始還真是不怎么懂,然后硬著頭皮去看,當我把51的結(jié)構(gòu)看完了,就不像一開始那樣一頭霧水了,自己在紙上把51的結(jié)構(gòu)圖默畫一遍,然后再把各個寄存器功能寫一下,各個功能口的結(jié)構(gòu)也畫一遍,然后就不覺得51有什么難了。其實有些時候不是這個東西你不會,而是在不會的時候自己先告訴自己這個太難了,自己先放棄了。我們學習51芯片,是為了以后的'打基礎,知道是怎么通過配置寄存器來實現(xiàn)功能。
大二下學期的時候,我們開了51的課,這個課幾乎就沒怎么去,因為我認為沒有必要去聽自己會的東西了。后來聽別人說avr的資源會比51的豐富的很多,所以就想試試,看看有什么難的,就從網(wǎng)上買了本馬潮老師《AVR單片機嵌入式系統(tǒng)原理與應用實踐》,一邊看書,一邊想自己畫一個板了,一開始想實現(xiàn)一個點陣屏,實現(xiàn)滾動效果,后來想想做個板也花不少錢呢,為什么不多加一些功能呢,還能多學到些知識,所以就加了溫感,紅外,鐵電存儲器等并把所有的擴展口都擴展了出來,備以后用,那時還挺自豪的呢,同學們都很羨慕,不過現(xiàn)在想想其實也沒什么了。
大學也聽說過嵌入式這個詞,不過不太明白是什么意思,09年的時候從網(wǎng)上找到中嵌視頻,有四張DVD(大約13G),下載下來后,從頭到尾的看了一遍,沒什么印象,只記得講一些不知所云的函數(shù),然后莫名其妙的講怎么使用那個44b0的開發(fā)板,不過聽完了,還是有很大收獲的,就有一種想裝一個linux的沖動,我是大二下學期才有的自己電腦,不過電腦的配置比較低,1g內(nèi)存,跑虛擬機就像個蝸牛,所以就想著怎么才能裝個linux,自己用XP習慣了,如果全換了又舍不得,那時從書上知道linux的文件系統(tǒng)和windows不一樣,只有一個根分區(qū),所以也害怕一裝linux全盤就被格式化了,不過最后還是欲望戰(zhàn)勝了擔心,買了張redhat 9的光盤,小心的裝這個系統(tǒng),里邊的英文也不是太難,還是知道大概意思的,所以一步步的裝,最后裝到我的硬盤的最后空間,重新啟動,竟可以選擇進入哪一個系統(tǒng)了,從這之后,自己就不害怕怎么裝系統(tǒng)了,應了那句言,紙上得來終覺淺,絕知此事要躬行。
所以我認為,買一個開發(fā)板是完全有必要的,拿到實物操作一下就不會感覺太抽象了。
后來也想學學arm,但不知道arm是什么東西,所以就買了本《從51到arm》,講的是關于arm的大體結(jié)構(gòu),看完后感覺,原來arm就是一個速度更快,接口更豐富的單片機啊。
如果想做linux設備驅(qū)動的同學應該對arm硬件有一些了解。如果對驅(qū)動不感興趣,完全沒有必要去看。交叉編譯器會幫我們做好這些事情,他比我們更了解arm結(jié)構(gòu)嵌入式。
大三下學期開始準備考研了,所以自己這些興趣就先放下了,報的北郵的信通學院通信專業(yè),當時就是想一定要上個好學校好專業(yè),也沒想太多,結(jié)果考了的成績差了點,沒有被錄取,也不想調(diào)劑一個二流的學校,然后就參加工作了,工作中每天都用的到開發(fā)板,當我看到一個小板上還可以跑系統(tǒng)的時候感覺很不可思議,以為要很大工程。后來邊工作邊學習,每天都要看電腦看到眼發(fā)疼,晚上也都差不多十二點時才睡覺。感覺到累,不過也感覺到自己在進步
閑話有點多了,說了很多都是自己大學那點破事。
聽很多的初學者說不知道從哪里開始,學習嵌入都要學哪些東西,從網(wǎng)上搜了一下,一大堆的東西要學,一下就推薦十幾本書,說看完這本書怎么怎么樣,看完那本書怎么怎么樣,一下子就給初學者給嚇住了,其實完全沒必要把網(wǎng)上的那些東西全部看一遍,那樣又費時,又感覺工程太大,讓初學者沒有信心去把每一種都看完。網(wǎng)上說的些方面都要知道,不一定全部都掌握,我們可以退成求其次,每一個都知道一些,當然會的越多越好。今天學點這個明天學點那,換著樣來也不會覺得煩。而且還能感覺到每天都有收獲。
嵌入式學習心得體會 2
首先,嵌入式系統(tǒng)是以應用為中心,以計算機技術為基礎,且軟硬件可裁減,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)。嵌入式有如下幾個突出的有點1.系統(tǒng)內(nèi)核小,2專用性強,3系統(tǒng)精簡4高實時性OS5嵌入式系統(tǒng)的應用程序可以沒有操作系統(tǒng)直接在芯片上運行,6嵌入式系統(tǒng)需要開發(fā)工具和環(huán)境。
嵌入式系統(tǒng)是近幾年才風靡起來的,但是這個概念并非新近才出現(xiàn)。從20世紀七十年代單片機(最早的單片機是Intel公司的 8048,出現(xiàn)在1976年)的出現(xiàn)到今天各式各樣的嵌入式微處理器,微控制器的大規(guī)模應用,嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史。經(jīng)過30年的發(fā)展,嵌入式技術已經(jīng)日趨成熟,在中國嵌入式機一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統(tǒng)以及用戶的應用程序等四個部分組成,用于實現(xiàn)對其他設備的控制、監(jiān)視或管理等功能。
其次,嵌入式系統(tǒng)無疑是當前最熱門最有發(fā)展前途的IT應用領域之一。嵌入式系統(tǒng)用在一些特定專用設備上,通常這些設備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時對實時響應要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。
嵌入式系統(tǒng)是軟硬結(jié)合的學科,通常有兩類人會去專研嵌入式:一類是學電子工程、通信工程等偏硬件專業(yè)的,另一類是學軟件、計算機專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應用軟件的'開發(fā)。我是軟件專業(yè)的學習嵌入式,越是智能設備越是復雜系統(tǒng),軟件越起關鍵作用,而且這是目前的趨勢。嵌入式應用在很多方面,具體的可以分為工業(yè)控制,交通管理,信息家電,家庭智能管理系統(tǒng),POS網(wǎng)絡及電子商務,環(huán)境工程與自然,機器人,機電產(chǎn)品方面應用等方面。其中目前在服務領域,如遠程點菜器等已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢。例外還有很多地方用到了嵌入式系統(tǒng),最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業(yè)控制,采用最先進的0.18微米CMOS嵌入式閃存處理技術,操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業(yè)領域中對最終用戶而言是一套極具成本效益的解決方案。
嵌入式學習心得體會 3
4月10號,為期一個階段的Linux開發(fā)基礎培訓課程圓滿結(jié)束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!
當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種種不安與些許拼博的決心,開始了自我提升階段的“充電”,由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的Linux下的各種強大的命令集。
在Unit 1中,徐老師詳細生動的為我們講述了有關Linux的誕生、初成長以及輝煌的發(fā)展至今,今后應用范圍則愈來愈廣泛,講解了為Linux這個偉大的OS做出巨大貢獻的一位位出色的、偉大的人物,他們那種學習鉆研的精神、鍥而不舍的信念、勇于把握住難得的機會,從小處著手,踏踏實實的創(chuàng)造出了對人類科技發(fā)展做出卓越貢獻的'Linux(Unix)系統(tǒng),他們的種種,都值得我們?nèi)ド羁谭词、刻苦學習、傳承并永遠發(fā)展下去。
查看ip地址和重啟網(wǎng)絡服務是我學的第一個命令: ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到遠程登錄軟件可用xmanager。
secureCRT是我們常用的,安裝好后利用其登錄到了Red hat Linux,需要知道Linux主機的ip 地址。徐老師為我們介紹了重要內(nèi)容:SHELL,即運行程序的程序,如echo $$SHELL可查看SHELL的環(huán)境變量是csh還是bash。指令pwd可查看當前所在路徑,passwd:更改Linux下的密碼,僅限r(nóng)oot用戶有此權(quán)限,當然我們是利用虛擬機VMware程序來運行Linux OS的,懂得了如何設置虛擬機的網(wǎng)卡設置、暫停、恢復、全屏等。
簡單的學習后進入Unit 2,命令行的句法讓我懂得了用法規(guī)則,一系列的命令功能強大:
date 顯示當前年月時間星期之類的;
more指令與less重要但不常用;
cat用于查看短小的文件內(nèi)容,常用!
mkdir命令用于在當前目錄下創(chuàng)建新的目錄;
ls 顯示當前目錄下所有文件;cd 更改文件路徑,如cd 、cd . 當前目錄;
rmdir 刪除空文件夾;
rm指令很強大,用于刪除空目錄及非空目錄下的指定或全部文件;
man 真男人,幫助手冊;
history指令用于顯示編寫過的命令集,以history 序號 可顯示序號所指命令;
echo回寫命令,很重要,我需要繼續(xù)學習;
exit 指從多重SHELL退出來。
嵌入式學習心得體會 4
目前最常見的嵌入式LINUX方面,我認為大概3個:
1.嵌入式LINUX上層的應用,包括QT的GUI開發(fā)
2.嵌入式的LINUX系統(tǒng)開發(fā)
3.嵌入式的驅(qū)動開發(fā)
學習嵌入式:
第一.C語言要掌握(硬件略懂),C語言是所有編程語言中的強者,單片機,DSP,類似ARM的種種芯片的編程都可以用C語言搞定,因為它可移值性強,編譯效率高,運算速度快,便于實現(xiàn)理更復雜的的數(shù)據(jù)結(jié)構(gòu)。上層應用和數(shù)據(jù)存儲,我推薦使用C++語言。
第二.學習一種嵌入式的處理器架構(gòu),個人推薦32位的處理器,像ARM,因為嵌入式
開發(fā)8位的處理器顯得有點低端,大多數(shù)只能用作簡單的工控.
第三.學習一種嵌入式操作系統(tǒng),像LINUX,WINCE等都可以,LINUX更好。
三:ARM是一種微處理器,已遍及工業(yè)控制,消費類的電子產(chǎn)品,通信,網(wǎng)絡,無線等各類的產(chǎn)品基于
ARM技術的微處理器已占75%以上的市場份額,可見其技術已逐滲入到我們生活中的`各個領域,像手機就是用ARM7 ARM9 ARM11的微處理器技術開發(fā)的。嵌入式系統(tǒng)最常見的ARM系列,ARM7,ARM9,ARM11,cortex-A8等。
我們都是曾經(jīng)從大學里走出來的迷茫羊羔,工作以后我才知道,在大學里不是學到了什么,而是學會怎么去學,相信自己,理清自己的思路,根據(jù)自己的性格,剖析自我適合往哪方面發(fā)展。
嵌入式學習心得體會 5
這個題目很大,給人一種感覺我好像很成功,其實不然。實際上自己水平不高,甚至很低,但是做過了一些曲折的學習道路,同時把自己真實的學習歷程表達出來,希望對后來者有借鑒的意義,甚幸!
工作三年、幾成廢人!
我XX年畢業(yè)于華中地區(qū)的一個理工科大學,專業(yè)是機械電子,我當時已經(jīng)簽了一家內(nèi)陸某個省級機關工作,家里八輩是農(nóng)民,并且很偏遠,能夠進入這樣的地方是祖墳有風水。但在畢業(yè)前夕有個進入it的機會,我本想進去的,家里人極力反對,阻力可想而知。同時要交4000元的違約金,對我來說是天文數(shù)字。大學里的費用很多是借的,幾乎將近一半的費用是在大學勤工儉學掙的,為了省錢,高中一個學期回家一次,大學一年回去一次。并且我個人也有特殊的人生背景(悲景更確切),這里不多說了,寫十篇也寫不完,同時偏離主題。這樣我就參加了工作。一張報紙一杯茶的日子,幾乎下班后有種很空虛和恐慌的`感覺。在工作中雖然是與自己專業(yè)有點關系,但是很少。專業(yè)幾乎荒廢。我自己也思考,如果再不出去,自己將會成廢人,只好讓國家養(yǎng)了。兩年后決定出去,但是幾成廢人,誰要呢,只好到學校去鍍金。這是中國教育和社會的悲哀!
至于專業(yè)就改為計算機方面,聽說好找工作,我說實話不是很對計算機特別感興趣,生存第一需要。不要笑我,哈哈!
考研成績出來,超過了國家線幾十分。那個方向要兩個,我第三,但是那年非碘,不面試就按分數(shù)來排,自然我落選了。其實給我面試機會也不一定要我,哈哈,自己幾斤幾兩很清楚。
最后調(diào)劑到另外一個學校,交錢,咬咬牙,交吧!現(xiàn)在仍然債臺高筑!
進入學校前夕
為什么要把這段列出,看后就知道了。
單位有網(wǎng)絡,經(jīng)常上網(wǎng)查些英語資料,在那里唯獨英語沒有丟很多。于是我就在網(wǎng)上查資料,學什么好呢,最后確定學嵌入式把,聽說跟硬件相對比較緊密!而我在大學里多少學習了數(shù)字電路,單片機等,所以多少也有所利用,不會真的一無所知。當然在這之
前也自學過數(shù)據(jù)結(jié)構(gòu),計算機組成原理等。c 語言在大學就學了。哈哈這就是我的家底。
我知道自己的基礎差,于是我就拿操作系統(tǒng),數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)、c++來看,機關有這個好處,空余時間多,于是平常就看書,很痛苦,沒有人請教。
另外就上網(wǎng)到論壇上去,我就到各個專業(yè)的技術論壇,其實是電子論壇和嵌入式論壇。我?guī)缀鯖]有發(fā)帖,幾乎把幾個大型的出名的論壇的帖子翻遍了,雖然有很多重復的,我才知道嵌入式是個什么東東。這些帖子對我以后的學習產(chǎn)生了極大的影響。
最關鍵兩點:
1、嵌入式是什么?
2、嵌入式需要哪些知識?
知道了這兩點,好辦!我就開始規(guī)劃學習路線。計算機的基本理論不能丟,于是重點看組成原理,數(shù)據(jù)機構(gòu),操作系統(tǒng)、c++。同時論壇上了解到,實時操作系統(tǒng)ucos是一個很好的嵌入式操作系統(tǒng),對初學者很好。于是我就買了一本書,但是代碼在電腦里調(diào)不通,網(wǎng)上也有很多相同的問題,我就看書,分析代碼,一遍不行就兩遍,三遍,這樣才看了入了門,才知道什么是進程。原來看操作系統(tǒng)書時,根本就不知道進程是個什么東西。
在這段時間掌握的東西不多,但是,對我以后的影響很大,我想起了大學時一個同學跟我說過了一句話:大學里最重要的不是學到了什么,最重要的是學會怎么學!大概是這個意思。
進入我的避難所
對我來講,再次進入大學不再是大學,而是避難所。希望這次進入給我喘氣和養(yǎng)精蓄銳的機會和時間。我是這樣認為和實踐的。
在學校我有三件事:上課,上圖書館,上網(wǎng)。
對于上課,學校開了很多課程,非常好,很多是名人名師講解,于是很多同學都想學,都去聽。我也考慮過,最后放棄。我是這樣認為的,時間是有限的,什么都想學,什么都學不成。于是我把我自己學的課進行了分化,一般的課程通過就行,重要的一定好好學。我希望不要什么爭論學習課程多和少的問題,這僅僅是我的看法。所以我的成績應該是很差的。分數(shù)低。好在后來的單位沒有要我的成績單,否則就慘了。
我個人感覺是上圖書館的效率比在寢室里高多了,這是我的經(jīng)驗。
嵌入式學習心得體會 6
首先,我們學習的課本是嵌入式系統(tǒng)應用教程。我學習的體會是這樣的:開始時,由于是剛剛?cè)腴T,對老師書的好多東西是好奇的,好多名詞也是新鮮的,不過不太懂什么意思。但是慢慢的,了解的深入讓我有了更深的感觸和體會。
在嵌入式的學習過程中,讓我了解了什么是嵌入式系統(tǒng)。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統(tǒng)。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統(tǒng)、用戶應用程序四個部分組成,用于實現(xiàn)對其他設備的控制、監(jiān)視或管理功能。嵌入式系統(tǒng)已經(jīng)應用于科學研究、工業(yè)控制、軍事技術、交通通信、醫(yī)療衛(wèi)生、消費娛樂等領域,人們?nèi)粘J褂玫氖謾C、PDA、汽車、智能家電、GPS等均是嵌入式系統(tǒng)的典型代表。
一開始我們就學習嵌入式的系統(tǒng)的基礎部分,那很簡單,就是一些定義或是介紹之類的。在進入第二章時,就開始學習了嵌入式開發(fā)過程中的主要操作系統(tǒng)——linux,在接下來的課程中,我發(fā)現(xiàn)嵌入式的學習過程還是蠻有趣的。在對linux的學習中,我們對它有了一點點的了解,接著就是學習一虛擬機的方式安裝linux。對我來說有趣的就是安裝的過程了,首先我們跟著老師的腳步走,學會了怎么安裝,在自己動手進行對它的安裝,這個過程是簡單而有趣的。這樣的開始讓我對它充滿了興趣,也對以后的學習充滿了信心。
其次就是安裝好了之后,老師就更深一步的教我們應用了。在這是老師首先交給我們的.是一些簡單的命令應用,Linux具有很豐富的命令,絕大多數(shù)命令具有大量的參數(shù)。
在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發(fā)現(xiàn)有些命令的操作還是很簡單的,不過在操作的過程中,我也有遇到有些困難,會出現(xiàn)你按照書上學習的例子,將命令輸入終端時會出現(xiàn)你不想要的結(jié)果,也就是錯誤的結(jié)果。這是問問旁邊的同學或是懂的同學就可以解決了。
在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內(nèi)容,linux中所有的功能都是通過命令執(zhí)行。在實際應用中,為了減少系統(tǒng)開銷,經(jīng)常不使用圖形界面,此時,對系統(tǒng)的所有操作都需要以命令方式來執(zhí)行。在嵌入式系統(tǒng)開發(fā)過程中,由于目標機的性能和配置比較低,因此,一般情況下目標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現(xiàn)。
還有的那就是進一步學習與嵌入式系統(tǒng)開發(fā)相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統(tǒng)中開發(fā)工程使用的TFTP、Telent和NFS服務。第一個實現(xiàn)的事上機位與下機位之間文件的傳輸、無磁盤網(wǎng)絡的設備的啟動等功能;第二個實現(xiàn)的事遠程登錄功能;第三個實現(xiàn)的是網(wǎng)絡文件系統(tǒng)功能。
從以上的內(nèi)容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。
當然,我們學習的不僅僅是這么幾個內(nèi)容,其中還有相關的實驗內(nèi)容。在我們基礎的學習的過程之中,我有了這么一點的感受,總的來說就是概念加專業(yè)名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。
嵌入式學習心得體會 7
嵌入式學習心得體會,4月10號,為期一個階段的Linux開發(fā)基礎培訓課程圓滿結(jié)束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!
當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種種不安與些許拼博的決心,開始了自我提升階段的"充電",由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的Linux下的各種強大的命令集。
在Unit 1中,徐老師詳細生動的為我們講述了有關Linux的誕生、初成長以及輝煌的發(fā)展至今,今后應用范圍則愈來愈廣泛,講解了為Linux這個偉大的OS做出巨大貢獻的一位位出色的、偉大的人物,他們那種學習鉆研的精神、鍥而不舍的信念、勇于把握住難得的機會,從小處著手,踏踏實實的創(chuàng)造出了對人類科技發(fā)展做出卓越貢獻的Linux(Unix)系統(tǒng),他們的種種,都值得我們?nèi)ド羁谭词 ⒖炭鄬W習、傳承并永遠發(fā)展下去。
查看ip地址和重啟網(wǎng)絡服務是我學的第一個命令:ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到遠程登錄軟件可用xmanager。secureCRT是我們常用的,安裝好后利用其登錄到了Red hat Linux,需要知道Linux主機的ip地址。徐老師為我們介紹了重要內(nèi)容:SHELL,即運行程序的程序,如echo $SHELL可查看SHELL的環(huán)境變量是csh還是bash。(學習心得 )指令pwd可查看當前所在路徑,passwd:更改Linux下的.密碼,僅限r(nóng)oot用戶有此權(quán)限,當然我們是利用虛擬機VMware程序來運行Linux OS的,懂得了如何設置虛擬機的網(wǎng)卡設置、暫停、恢復、全屏等。
簡單的學習后進入Unit 2,
命令行的句法讓我懂得了用法規(guī)則,一系列的命令功能強大:date顯示當前年月時間星期之類的;more指令與less重要但不常用;cat用于查看短小的文件內(nèi)容,常用!mkdir命令用于在當前目錄下創(chuàng)建新的目錄;ls顯示當前目錄下所有文件;cd更改文件路徑,如cd 、cd .當前目錄;rmdir刪除空文件夾;rm指令很強大,用于刪除空目錄及非空目錄下的指定或全部文件;man真男人,幫助手冊;history指令用于顯示編寫過的命令集,以history序號可顯示序號所指命令;echo回寫命令,很重要,我需要繼續(xù)學習;exit指從多重SHELL退出來;Linux賬號下,可以增加用戶、刪除用戶、設置密碼:useradd、userdel、passwd。
注:所有的用戶的家目錄都在/home下面,唯獨root的家是在/root.點文件都是些SHELL的腳本程序,也稱隱藏文件;環(huán)境變量常見的有:HOME PATH PWD,懂得了絕對路徑與相對路徑的對比概念。
最后進入Unit 3、
文件與文件處理的學習中,知道了Linux下支持的六種文件類型:普通文件、目錄、設備文件、命名管道、符號鏈接、socket;Linux下文件系統(tǒng)的組織:倒立的樹形結(jié)構(gòu):/ /bin /boot /dev /home /lib /proc等文件目錄,ls –l指令很好很強大,顯示文件類型與權(quán)限、所有者、字節(jié)大小、時間及文件名;touch可創(chuàng)建空文件,復制文件用指令cp,可選-i、-r等;重命名文件使用mv [-i];du顯示當前目錄所占空間大小;wc命令顯示列表中文件的行數(shù)、字數(shù)、字符數(shù);追加:cat [文件列表] 》目標文件;find指令與grep重要,暫未學習,自己在實踐中學習,文件訪問權(quán)限有:r w x;chmod指令可修改訪問權(quán)限,如chmod 777 -R文件名。
輸入輸出重定向每個命令默認打開三個文件:標準輸入stdin,標準輸出stdout,標準錯誤stderr,鍵盤為標準輸入,而控制臺則是標準輸出,文件描述符分別是0,1,2;最重要最常用的為輸出重定向>與錯誤重定向2> ;echo添加的內(nèi)容>/ 》文件;Linux過濾器和管道:管道操作符:| ;即將某個命令的輸出與某個命令的標準輸入相連接,從而實現(xiàn)管道功能,例如ls –l |wc;管道和重定向操作符可同時用于一個命令行。
嵌入式學習心得體會 8
研究嵌入式系統(tǒng)已經(jīng)有快兩年的時間了。很慶幸自己當初選擇了嵌入式系統(tǒng)作為自己的研究和職業(yè)方向,可以說它是一種催化劑,讓我自身的修養(yǎng)和研究能力都有了很大的提高。
在嵌入式系統(tǒng)的大門前,我只能算是剛剛看到這個大門的臺階,但這段小小的距離讓我受益頗多,現(xiàn)將其中心得奉獻出來,歡迎高手前輩們指正,以供剛接觸的新人參考。
在寫之前,想先寫一句話,千萬不要以為你是天才,所謂天才即勝別人N倍的人,如果你真認為你是天才,請以天才的標準來要求自己,將自己付出和別人的比例以N:1來進行。
。1)學習與生活心態(tài)
很多朋友都是在剛步入大學校門開始接觸計算機或者其他。大學是一個很讓人迷茫頹廢的地方,可能你在高中躊躇滿志,但在大學的管理機制下卻心態(tài)漸糜。能夠在大學(大一)里找到自己人生之志的同學有多少?目標要明確,不要得過且過,不要追逐熱門的東西。
不管在什么時候,心里都要有自己的信念和理想,不要被其他東西左右了自己。要從興趣和競爭出發(fā),因為這才是你產(chǎn)生動力源的地方。學東西時,要讓自己先喜歡上它,要學會享受學習它的時間,喜歡喬XXX的都知道,喬老爺子最常說的一句就是要享受比賽的時間。
因為只有你喜歡上了它,享受了它,才不會被它所產(chǎn)生的壓力壓倒自己,不要產(chǎn)生一種厭惡的心理。而且心態(tài)要調(diào)整,不要一味的蠻學,死學,在沒有什么興趣學的時候可以先玩幾天,在回過頭來,或者用其他的方式來轉(zhuǎn)換。要抱著一種十年方能磨一劍的心理,扎扎實實從基礎開始,不要為高速開發(fā)的'一些現(xiàn)象所迷惑,那些都只是軟件的功勞。
我個人認為搞編程,英語和數(shù)學很重要,大家一定要時時的抓,至于怎么抓那就是另外一回事了,當然其他的知識也要汲取,可以多接觸點天文,地理,人文方面的東西來補充自己。轉(zhuǎn)換的生活方式。要學會生活,在人的一生中,都會遇到一些很不開心的事,或者大大小小的意外,孫子兵法里面一句大意就是說,戰(zhàn)場上要會將劣勢轉(zhuǎn)成優(yōu)勢,即最大的劣勢很可能就是你的優(yōu)勢所在。
一個打擊你可以把他變?yōu)榍斑M的動力,不必為了一點挫折和捶胸頓足,不必為了一點小事爭吵不休?臻e的時候可以躺下來看看天,你就會明白自強不息,厚德載物之理。(看到一些為了失戀或者其他而墮落的人真的很難受和可惜)。
要給人以幫助。別人有困難時或者一些舉手之勞在自己解決范圍內(nèi)的盡力幫之,這對自己不會損失什么,相反在對方心里能夠樹立你的形象和增加好感。記住,給人之恩時也是給你自己鋪路,這個世界不是靠你一個人可改變的。
(2)編程語言的選擇語言的爭論。
很多初學擇,老是在學習何種語言上舉棋不定,試問,中國牌子有幾個不被罵的,試問,世界上哪部影片沒人說他壞話的?術業(yè)有專攻,各司其職,每個語言的出現(xiàn)肯定都有自己價值和領域的范圍,不同的只是價值和領域的高級和大小。
就像高,矮,胖,瘦組成一個“型”。但是技術是進步的,這個進步也是在舊的基礎上。放心,技術再飛躍也不會今天奔I,明天扣肉的迅速,在學習的同時也要時時關注整個語言界的走勢(貌似哪個偉人說的與時俱進),保持一種同步曲線的前進。語言能干什么?能問這句話,很欣慰。
表明你是從基礎學起才會問出這樣的話來。但換而言之你一開始對這門語言調(diào)查的信息不足。廟算者勝,對自己身邊的事物了解是非常重要的,這也能說明說你的教材或者教導你的人不夠充分。如果是我對新手交流,我會花足時間讓他明白這門語言是什么,能干什么,整個體系等等。
這樣在學的時候,對同一條語句上的理解你可能跟別人就不一樣了,因為你知道這門語言的體系架構(gòu),你可以從更多的特性角度去挖掘使用它。提高自己對語言閱讀能力。如何快速的進步?可以告訴你沒有一步登天的辦法,但是也可以告訴你如何讓你快速掌握你所學的技術。多讀他人代碼,多領悟他人思維,多給自己出難題,多幾種方法來解問題,多將語言的思想和身邊的事物聯(lián)系起來。想想你是怎么掌握普通話的,方法就不具體說了。
編程的思維。計算機是充滿誘惑的東西,很多人都說熱愛計算機,那只是它的表面,你熱愛的只是他的一種擴展性的東西。能學計算機我很高興,因為計算機從某種意義上來說將空間的距離給消除掉了。這里沒有流血,沒有犧牲。你可以以一種藝術家的思維來塑造它,可以以偵探的邏輯思維來解決它,可以以一種戰(zhàn)爭狂人的思維來摧毀它。
你可以將你的這種思維體現(xiàn)在代碼和整個布局里,不要驚異別人代碼思維的異風,你也有自己的思維風格,你也可以,你也可以用自己代碼讓別人驚異。記住你學東西時更多的要體會他的思維,比如數(shù)學,微積分,離散,無數(shù)的定理,你學完以后可能永遠都用不到,但是你可能有這種感覺,在你碰到某一問題時,這一問題的性質(zhì)和你學到的東西很類似,但是中間就是差了一點東西,對了,這就是它思維上的一種運用,一種抽象,一種轉(zhuǎn)換。
嵌入式學習心得體會 9
本人本科學的是電子信息工程專業(yè),其實這個專業(yè)和嵌入式?jīng)]有多大的關系,要說有關系就是簡單的講了下C語言語法,學完之后還不知道什么是C語言,只記住了char,int,long等占幾個字節(jié),if, while,for循環(huán)什么的,感覺也就能算一些小學就會的題目,全國計算機二級C語言也就糊涂的過了。我這個專業(yè)沒學過C++,一開始不知道什么是面向?qū)ο螅@可能會讓人笑話了。不過這說的是實話,本科的時候,學院安排的課程大部分偏硬件部分,動手機會比較多,自然而然比較喜歡硬件方面。
在大二的時候就聽學長說,單片機很難學,那時候經(jīng)學長介紹,淘寶買了本郭天祥老師出的書《51單片機C語言教程》,一開始還真是不怎么懂,感覺有點像是看天書,然后硬著頭皮去看,當我把51的結(jié)構(gòu)看完了,就不像一開始那樣一頭霧水了,自己在紙上把51的結(jié)構(gòu)圖默畫一遍,然后再把各個寄存器功能寫一下,各個功能口的結(jié)構(gòu)粗略畫了下,然后覺得51整體已在我心中了,雖然沒有什么作用,但是至少懂得這門課要怎么去學習。其實有些時候不是這個東西你不會,而是在不會的時候自己先告訴自己這個太難了,自己先放棄了。
在大三的時候,第一學期課比較少,我就經(jīng)常待在圖書館,會去蠻看些專業(yè)相關的書籍,現(xiàn)在想想,那時候也是機緣巧合下,看到了一本書《從51到ARM》,講述的是從51系列單片機的一般知識出發(fā),將arm處理器和51系列單片機進行對比,引導讀者去理解和學習arm處理器的知識。那個時候也有考慮到以后就業(yè)的問題,就想到一件事情,如果去應聘工作的話,每個工科院校電子信息類的畢業(yè)生都會異口同聲地說:我會51系列單片機。當他說這句話的時候,他和別人是站在同一起跑線上的?晌覀兺耆锌赡芎蛣e人不站在同一起跑線上。正是這本書給我開啟了另外一扇大門,讓我初步了解了嵌入式。后來去報考全國計算機等級考試三級教程——嵌入式系統(tǒng)開發(fā)技術,在圖書館奮斗了兩個月,最后取得優(yōu)秀的成績,也讓我進一步了解嵌入式系統(tǒng)。
在大四的時候,我們有嵌入式的選修課,不過當時因為考研的緣故,就沒有去上過這門課,好可惜呀!但是,在選擇讀研研究方向的時候我還是毅然選擇了嵌入式方向,我知道這將成為我未來三年研究的方向。這學期(研一下學期),很開心能夠再次接觸嵌入式系統(tǒng)這門課程,對于導師教的這門課程,我覺得自己上課還是蠻認真聽講的,當然也被師在臺上那講得頭頭是道,溫文儒雅的風姿所吸引。對于沒有學過微機8086的我,有些時候,老師用微機與嵌入式的對比讓我頭腦沒有相關概念...
首先,我對嵌入式在概念上有了一個比較精確的了解。嵌入式是指以應用為中心,以計算機為基礎,并且軟硬件可裁剪,適用于對功能、可靠性、成本、體積和功耗有嚴格要求的專用計算機系統(tǒng)。它由硬件平臺和系統(tǒng)軟件組成。硬件平臺指嵌入式處理器和與之通過接口連接的外圍硬件平臺。系統(tǒng)軟件是指實時操作系統(tǒng)和用戶應用軟件。
談到硬件部分,我首先想到的是嵌入式處理器那些外圍功能模塊。對于這部分的學習,我當初花了好長時間看《深入淺出ARM7——LPC2400》這本書,現(xiàn)在想想覺得自己學習方法沒用對,完全沒有那個必要,自己卻花了大把時間在看這些寄存器引腳的使用,因為單純的看過之后還是很容易忘的,之后在進行實驗的時候還是翻書來查就證明了這一點。不過一些最基本的模塊,例如通用輸入/輸出口(GPIO),通用異步收發(fā)器(UART),向量中斷控制器(VIC),外部中斷輸入和定時器/計數(shù)器還是需要看書認真去記住那些常用的引腳功能。對于CPU異常這部分,我一開始以為異常就是中斷,因為處理程序流程設計是相似的,都是請求處理器打斷正常的程序執(zhí)行流程,進入特定程序的一種機制。當時還對老師提出的一個看法有點疑義,51可以處理中斷嵌套而ARM處理器卻不能?我當時腦子里面就在想:中斷不都是有硬件設備產(chǎn)生的,那按常理來講ARM處理器也可以處理的呀。后來在認真查書,發(fā)現(xiàn)CPU異常有7種:復位,數(shù)據(jù)中止,中斷,快中斷,預取中止,未定義,軟件中斷。而異常向量會使CPU轉(zhuǎn)入異常入口地址執(zhí)行程序,開始了異常處理。同理的話,中斷向量使CPU轉(zhuǎn)入中斷入口地址執(zhí)行程序,開始了中斷處理。即當發(fā)生IRQ中斷時,程序返回地址被存入該IRQ中斷模式下的LR,如果繼續(xù)發(fā)生IRQ中斷,那第二次的中斷返回地址也還是被存入該IRQ中斷模式下的LR中,那先前發(fā)生中斷時候存入的程序返回地址將被覆蓋掉,導致不能返回正確的位置。在我解決這個問題的期間,每次睡前思維準會定格在這問題上,久久不能繞出來,其實有時候查書還是最好的解決方案,因為網(wǎng)絡資源只能提供給我們部分的參考資料。
對于ARM匯編語言這部分的學習,我認為是需要重視的,學匯編不是說用這語言做多牛逼的事情, 問題的關鍵在于, 學透了匯編會使你真正理解計算機。另外一方面,只要以后在嵌入式工作中你遲早會在某個陰暗的角落里遇到匯編!安还苣愠姓J不承認, 現(xiàn)在的CPU沒有直接跑高級語言的, 哪怕是虛擬機也都是類似匯編的指令集.當遇到崩潰分析, 性能優(yōu)化甚至編譯器抽風等等的時候, 匯編是你最后一根救命稻草(這句話是福來師兄講的)!睘榇怂o了我們一份資料,周立功lpc21xx/lpc22xx系列ARM7啟動代碼分析,主要講述的是startup.s文件的分析,看了下才發(fā)現(xiàn)老師上課講的那個啟動代碼分析很多不理解之處這里都有詳細的介紹,這分析太精辟了。
學 ARM7這么久,我認為從硬件上講,一方面就是學習接口電路設計,另一方面就是學習匯編和C語言的板級編程。如果從軟件上講,就是要學習基于ARM處理器的操作系統(tǒng)層面 的驅(qū)動和移植。這些對于我們初學者來說必須明確,要么從硬件著手開始學,要么從操作系統(tǒng)的熟悉到應用開始學,但不管學什么,只要不是純的操作系統(tǒng)級,硬件的寄存器類的東西還是要能看懂的,基于板級的匯編和C編程還是要會的。
μC/OS-II 是一種基于優(yōu)先級的搶占式多任務實時操作系統(tǒng),包含了實時內(nèi)核、任務管理、時間管理、任務間通信同步(信號量,郵箱,消息隊列)和內(nèi)存管理等功能。它可以使各個任務獨立工作,互不干涉,很容易實現(xiàn)準時而且無誤執(zhí)行,使實時應用程序的設計和擴展變得容易,使應用程序的設計過程大為減化。μC /OS-II是一個完整的、可移植、可固化、可裁剪的占先式實時多任務內(nèi)核。μC/OS-II絕大部分的代碼是用ANSI的C語言編寫的,包含一小部分匯編代碼,使之可供不同架構(gòu)的微處理器使用。
μC/OS-II可以大致分成內(nèi)核結(jié)構(gòu)、任務管理、時間管理、任務之間通信與同步4個部分。內(nèi)核結(jié)構(gòu)是操作系統(tǒng)的處理核心,包括操作系統(tǒng)初始化、操作系統(tǒng)運行、中斷進出的前導、時鐘節(jié)拍、任務調(diào)度、事件處理等多部分。任務管理部分中的內(nèi)容都是與任務的操作密切相關的。包括任務的建立、刪除、掛起、恢復等等。因為μC/OS-II是以任務為基本單位調(diào)度的,所以這部分內(nèi)容也相當重要。μC/OS-II中的最小時鐘單位是timetick(時鐘節(jié)拍),任務延時等操作是在時間管理這部分完成的。任務之間通信與同步為事件處理部分,包括信號量、郵箱、郵箱隊列、事件標志等部分;主要用于任務間的互相聯(lián)系和對臨界資源的訪問。μC/OS-Ⅱ操作系統(tǒng)是在main()中建立的,首先要系統(tǒng)初始化,OSInit(),初始化系統(tǒng)所有的變量和數(shù)據(jù)結(jié)構(gòu)。然后進行任務的創(chuàng)建,OSTaskCreate();之后進行多任務的啟動,OSStart()。在進行任務的并行處理的時候,一個任務的程序是順序執(zhí)行的,而不同任務的程序卻是并行執(zhí)行的。從應用程序的觀點來看,此處的并行處理只是一個假象。而實際上它是通過實時操作系統(tǒng)的內(nèi)核控制任務之間的切換來實現(xiàn)的,也就是任務調(diào)度啦。
μCOS-Ⅱ總是運行進入就緒態(tài)任務中優(yōu)先級最高的那一個。當創(chuàng)建新任務時,或當前任務調(diào)用一些可能把自己掛起的系統(tǒng)函數(shù)(如OSMBoxPend)時,內(nèi)核就要進行任務切換。在上述的場合,任務級的調(diào)度是由函數(shù)OSSched()完成的。
在一個多任務的應用工程中,任務之間并不是完全獨立的,它們存在一些需相互配合的處理,這些相互配合是靠任務間的通訊或同步,信號量、郵箱、消息隊列可以實現(xiàn)這種任務與任務,任務與中斷服務函數(shù)間的通訊與同步。
郵箱可以使一個任務或者中斷服務子程序向另一個任務發(fā)送一個指針型的變量。而信號量不可以,其只能發(fā)送信號量。消息隊列可以使一個任務或者中斷服務子程序向另一個任務發(fā)送以指針方式定義的變量。因具體的應用有所不同,每個指針指向的數(shù)據(jù)結(jié)構(gòu)變量也有所不同,實際上,我們可以將消息隊列看作多個郵箱組成的數(shù)組,只是它們共用一個等待任務列表。
我們實驗所用的ARM開發(fā)工具是ADS1.2。ARMADS全稱為ARM Developer Suite,是ARM公司推出的新一代ARM集成開發(fā)工具,F(xiàn)在ADS的最新版本是1.2,支持軟件調(diào)試及JTAG硬件仿真調(diào)試、支持匯編、C語言、C++源程序,具有編譯效率高、系統(tǒng)庫功能強等特點。在安裝ADS1.2的時候出現(xiàn)過小問題,當時我的電腦是64位的,安裝完之后顯示不了,后來百度查找到原因,竟然是文件夾放錯地方,應該放在Program Files(x86)這個文件夾中。后來有同學問我這方面的問題,但是發(fā)現(xiàn)他們的ADS1.2安裝不了的原因是因為Licence弄錯了。在打開CodeWarrior for ARM Developer Suite的.時候,一定要記得選DebugInChipRAM,否則Make都出現(xiàn)很多error,而且那些幾乎都是未定義函數(shù)的錯誤。之后就進行Debug,調(diào)試成功之后會跳出AXD的界面,選擇Options里面的ConfigureTarget,再添加H-JTAG的文件,之后點擊GO,程序會跳出匯編語言的界面,再點擊下就跳到C語言程序入口地址,之后再點擊下GO,程序就開始跑起來。前面所述的這些步驟是理想情況下程序自身沒有發(fā)生錯誤,當然在調(diào)試過程中,還是有很多硬件上的問題,一方面是有些開發(fā)板可能用久了,用JTAG并口連接的時候接觸不良,很容易自動掉線,常出現(xiàn)未連接設備的的Error,還有一方面是跑程序過程常會出現(xiàn)兼容性的問題,導致程序AXD調(diào)試時候會出現(xiàn)卡在某個部分一直進入死循環(huán),這個后來是解決了,但是偶爾還是會出現(xiàn)這個BUG。
通過這學期對嵌入式的學習,我發(fā)現(xiàn)自己尚未掌握的知識點還是蠻多的,尤其是對μC/OS-II的移植方面,我只是理論上粗略了解,沒有經(jīng)過實驗的操作。還有對存儲器加速模塊(MAM)這方面不夠了解,主要一方面當初在做消息隊列采集實驗(KeySem_SampdataQeue),這個模塊被代替掉,不需要使用它,所以后來也沒有去掌握相關知識點。對于任務就緒算法這部分,我只是上課的時候聽“懂”了,課后自己再看完全懵了。對于CAN總線調(diào)試的部分,老師上課沒有講到這部分的介紹與應用,但是后來通過自己對實驗室?guī)熜謧兯龅恼n題初步了解,發(fā)現(xiàn)我自己有必要去弄懂它的構(gòu)造和原理。
“看書不要希望一次就會,一次就明白是什么意思,也不要死記硬背,看不明白也沒關系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就記住了,遇到的少的,忘記也就忘記了!币廊挥浀卯敵醪欢趺唇鉀Q某個問題的時候請教李碩師兄,師兄對我說的這番話。自己在μC/OS-II這部分內(nèi)容掙扎了好久,現(xiàn)在想想,覺得當初不應該一上來就直接閱讀內(nèi)核源代碼,看了一些自己把頭撞破也想不明白的事,這樣直接正面打擊我學習嵌入式的積極性。學習啊,還是得要循序漸進。如果你想學習嵌入式一定要有塊學習板?丛俣嗟囊曨l,看再多的書,也不如自己動手試一下,看著很簡單的東西,做起來就可能遇到很多的問題,遇到問題找到原因,解決問題,只有這樣才能學到東西。記得我第一次仿寫led的驅(qū)動,想自己試一下,可是自己一試,就出了好多的問題,那個led弄了我一天才把led燈點亮。所以不要眼高手低。
對于初學者,有一點小建議,我們拿到一個開發(fā)板,很興奮也很激動,想法自然也很多,想用開發(fā)板實現(xiàn)自己的這個想法,實現(xiàn)那個想法,然后又不知道從何下手,然后就去論壇中發(fā)一個貼,最后等著別人去回復,當見沒人回復就開始抱怨。這種做法是不可取的,有想法是好的,我們要實現(xiàn)自己的想法也是有前提的,首先,我們對這部分知識了解嗎?如果不了解就去google一下(最好別用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到問題,再去發(fā)貼問,這樣也顯得咱們有水平。比如自己連串口是什么都不太清楚呢,就問串口通信怎么做啊,就是人家把代碼給咱,咱也不明白是怎么回事啊。見多識廣,熟能生巧。多看代碼,要從代碼中讀出代碼的意思來。自己平時也要多寫代碼,多練習(這一點我做的不好,寫的少)。
最后,我想說的是嵌入式系統(tǒng)的學習和研究一旦我們達到了一定的水平后,其實很簡單,就是如何去看CPU和相關芯片的Datasheet!
嵌入式學習心得體會 10
學期開始,我們開始學習《嵌入式系統(tǒng)及應用》,由于初次接觸嵌入式系統(tǒng),感覺蠻難的,所以收獲不是很大,很多的概念都比較模糊,等到學期結(jié)束開始做嵌入式課程設計時,真是茫然無從下手,自從拿到設計主題后,我就像熱鍋上的螞蟻,一個字“急”。最后實在沒有辦法,逼著自己去學習,查資料,總算對嵌入式有了淺層理解。
嵌入式系統(tǒng)本身是一個相對模糊的定義,一個手持的MP3和一個PC104的微型工業(yè)控制計算機都可以認為是嵌入式系統(tǒng)?傮w來說,嵌入式系統(tǒng)是“用于控制,監(jiān)視或者輔助操作機器和設備的裝備”。一個典型的桌面Linux系統(tǒng)包括3個主要的軟件層---linux內(nèi)核、C庫和應用程序代碼。內(nèi)核是唯一可以完全控制硬件的層,內(nèi)核驅(qū)動程序代表應用程序與硬件之間進行會話。內(nèi)核之上是C庫,負責把POSIX API轉(zhuǎn)換為內(nèi)核可以識別的形式,然后調(diào)用內(nèi)核,從應用程序向內(nèi)核傳遞參數(shù)。應用程序依靠驅(qū)動內(nèi)核來完成特定的任務。
在了解了基礎知識之后,我開始進行上機操作,當然,其中遇到很多的難題,很多東西都是第一次接觸,又沒有別人在旁邊指導操作,完全憑借自己去摸索練習。其中的困難可想而知。然而堅持就是勝利,牙一咬眼一閉堅持做下去,而通過本次實驗,我感覺收獲還是蠻多的可能我對于嵌入式的知識學習的還是不太多,但是這之外的東西收獲頗豐。它讓我學會了如何通過自己的努力去認知一個新事物,更重要的是端正自己的`學習態(tài)度,只有真正下功夫去學習,才能有收獲,正所謂“一份耕耘,一份收獲!睕]有付出,何談回報呢?再者,通過本次實驗,我也學會了如何去分析問題,如何找出自己設計中的不足,繼而去排除解決問題,這就是一個自我學習的過程。當我們通過實驗去學習理論知識時,自己動手得出的結(jié)論,不僅能加深我們對嵌入式的理解,更能加深我們對此的記憶。
當然,在這其中,我也發(fā)現(xiàn)自己的許多不足之處,由于學期伊始我沒有好好學習,才落到如此地步,這也可以說是一個教訓吧!我相信在以后的學習工作中,我一定會端正自己的學習態(tài)度,一絲不茍的去對待每一件事。只有做好足夠的準備,才能事半功倍!
嵌入式學習心得體會 11
大一:
應該學習最重要的C語言,51單片機,大二學51單片機也可以,高數(shù)也應該好好學下,考研或者以后的工作中會有用的。
大二:
一定要把51單片機學完,做幾個小項目,再學習些自己感興趣的模塊,比如紅外感應模塊,WIFI模塊,藍牙模塊,指紋檢測模塊......很多很多模塊的,你可以實現(xiàn)你自己的想法了,譬如做個跑馬燈、動態(tài)數(shù)碼管顯示、模擬個“世上只有媽媽好的鈴聲”、又或者弄個難點的時鐘計時又或者紅外控制,想做什么,都可以問問老師有沒有相關的模塊,也可以淘寶上買,都不貴。
大二期間還應該學習畫原理圖的軟件protel99se或者AD(AltiumDesigner),C++,java,數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)庫,這些都是課堂上的課程,在課堂上好好學習就行。
英語在以后的工作中也挺重要的,要看英文的文檔,四級要好好準備。在大二下學期也可以開始學stm32單片機了,我是大二暑假留在學校的實驗室學習STM32的,就是每天看視頻學些基礎的知識。
大三:
學習一種做上位機的語言VC或者C#,同時STM32要學的精通了,可以先在STM32上學習UCOS實時操作系統(tǒng),大三的時候要多參加大的項目,多參加比賽,我們實驗室就會常參加賽佰特杯,還有挑戰(zhàn)杯,藍橋杯,拿著自己做的東西去參加。
大三如果還有時間的'話,就開始做畢業(yè)設計,一般兩個月應該就能做好了,我們是選擇暑假留在學校做畢業(yè)設計,實驗室的老師給的題目。做完了就用ARM學習LINUX,當然LINUX在學校階段熟悉就行。如果這些知識都掌握了,那學的一定不錯了,以后就去實習吧,盡早去社會磨練磨練。
看了看怎么這么多東西要學,選一個方向?qū)W不就行了嗎?這么多有什么用哪?我想告訴大家一句龍應臺說的一段話:“孩子,我要求你讀書用功,不是因為我要你跟別人比成績,而是因為,我希望你將來會擁有選擇的權(quán)利,選擇有意義、有時間的工作,而不是被迫謀生。當你的工作在你心中有意義,你就有成就感。當你的工作給你時間,不剝奪你的生活,你就有尊嚴。成就感和尊嚴,給你快樂!”
其實大學所學的知識都是基本的知識,所學的知識都是為你以后學習更加深的知識打基礎的,當你選擇一個新的方向,在大學里面如果還接觸過,那么學習起來就沒那么難了,如果壓根沒見過,那么學習起來一定會花費大量的時間,工作的時候可不會給你這么多時間學,所以多學點肯定是有用的。
五:學習一個單片機最快的途徑是什么
最快的方法就是做項目,當把一個知識,單片機的基礎知識看完之后,一定要做項目,做項目才能讓你學的更快。
簡單談一下我從做項目中獲取得經(jīng)驗吧。大一期間就對無線控制很感興趣,覺得無線控制很有意思,響應設備與控制設備之間的數(shù)據(jù)交互看不見摸不著,但卻能精準高速的相互通信。經(jīng)過一段時間的學習,我選擇紅外線這一無線通信工具。
完成的項目是“基于物聯(lián)網(wǎng)教室空調(diào)控制系統(tǒng)”,主要實現(xiàn)的功能,學習、發(fā)射紅外碼,加入WIFI通信功能、定時功能、溫濕度檢測等。首先接到這個項目,先了解基本功能,設計一下方案,思考方案可不可行,各個模塊如何相互配合工作?具體需要什么模塊等等吧,然后選擇適合的MCU,不需要多大夠用就行,然后選擇要使用的模塊硬件。
準備工作做好之后,就可以從PCB構(gòu)圖做起了。當然如果沒有條件,可以選擇一個帶有你需要模塊的現(xiàn)有單片機。硬件準備好之后,就可以嵌入式最擅長的軟件編程了。編程過程中要多注意細節(jié),以及個人編程習慣都會導致一些很難排查的bug,過程當中無可避免的會出現(xiàn)各種各樣的bug。
多回顧自己的代碼,從上到下捋一遍程序邏輯,從中發(fā)現(xiàn)問題,解決掉。好的編程習慣不僅會讓你的程序看起來完美,也能減少你解決bug的痛苦。有一點很重要,自己使用的變量加注釋,標明變量做什么用,自己的邏輯最好也加上注釋,函數(shù)功能等等都加上注釋。這樣能幫助你更快找出bug和復習自己的程序。最后最終代碼的敲定往往就是修改掉最后一個bug,實現(xiàn)了最后一個功能!
我作為一個學生,寫內(nèi)容可能偏于簡單,偏于給學生看的,寫的不好還請見諒,歡迎大家一起來討論!
嵌入式學習心得體會 12
一、嵌入式的概述:
隨著信息化技術的發(fā)展和數(shù)字化產(chǎn)品的普及,以計算機技術、芯片技術和軟件技術為核心的嵌入式系統(tǒng)再度成為當前研究和應用的熱點,通信、計算機、消費電子技術(3C)合一的趨勢正在逐步形成,無所不在的網(wǎng)絡和無所不在的計算(everything connecting, everywhere computing)正在將人類帶入一個嶄新的信息社會。
二、實習目的
學習和了解了嵌入式在生活中的重要作用和發(fā)展過程,熟練掌握ARM硬件體系結(jié)構(gòu),熟悉linux下的嵌入式編程流程,積累自己的軟件編寫經(jīng)驗,能夠參與并實現(xiàn)一個真實和完整的嵌入式項目,為今后的學習和將從事的技術工作打下堅實的基礎
三、實習任務
第一階段Linux操作和編程基礎
主要介紹Linux的基本命令和基礎編程知識,包括Linux的文件操作和目錄操作命令,VI編輯器,GCC編譯器,GDB調(diào)試器和Make項目管理工具等知識。
第二階段 嵌入式C語言編程基礎
主要介紹在嵌入式開發(fā)編程中C語言的重要概念和編程技巧中的重點難點,以復習串講和實例分析的形式,重點介紹包括函數(shù)與程序結(jié)構(gòu),指針、數(shù)組和鏈表,庫函數(shù)的使用等知識。
第三階段Linux上C強化編程訓練
主要包括整數(shù)算法訓練,遞歸和棧編程訓練,位操作訓練,指針訓練,字符串訓練和常用C庫函數(shù)編程接口實踐,強化學員對Linux下基本編程開發(fā)的理解和編碼調(diào)試的能力。
第四階段 Linux環(huán)境高級編程及項目開發(fā)編程實踐
主要包括系統(tǒng)編程(信號/系統(tǒng)調(diào)用/管道/FIFO/消息隊列/共享內(nèi)存等),文件I/O編程(文件描述符/文件讀寫接口/原子操作/阻塞與非阻塞IO等,多任務和多線程編程(進程標識/ 用戶標識/fork與vfork/多線程概念/線程同步等),網(wǎng)絡編程(網(wǎng)絡基本概念/套接口編程/網(wǎng)絡字節(jié)次序/Client/Server結(jié)構(gòu)/UDP編程);掌握Linux下Socket編程的.開發(fā)流程,熟悉網(wǎng)絡編程的調(diào)用接口函數(shù)和相關數(shù)據(jù)結(jié)構(gòu),使學員初步具備在Linux上進行系統(tǒng)編程開發(fā)的能力。同時綜合之前所學內(nèi)容和編程技術,以小組為單位進行一個團隊合作項目的開發(fā),考核內(nèi)容包括文件I/O編程,多線程編程,網(wǎng)絡編程和項目文檔編寫。
第五階段嵌入式處理器體系結(jié)構(gòu)及編程實踐
主要介紹ARM體系結(jié)構(gòu)及其基本編程知識,包括指令分類,尋址方式、指令集、存儲系統(tǒng)、異常中斷處理、匯編語言以及CC++和匯編語言的混合編程等知識。同時結(jié)合ARM嵌入式開發(fā)板硬件設計原理和基本硬件設計流程,分析各種外設的工作原理和驅(qū)動機制,并自己動手實踐完成一個ARM開發(fā)板上的編程大作業(yè)。
第六階段嵌入式Linux開發(fā)基礎及高級應用
主要介紹嵌入式Linux開發(fā)應用程序的基本流程和知識,包括嵌入式Linux基本概念和開發(fā)流程、Bootloader工作原理、內(nèi)核裁減配置和交叉編譯、根文件系統(tǒng)制作、網(wǎng)絡編程以及圖形界面和數(shù)據(jù)庫開發(fā)等知識。同時獨立完成一個基于嵌入式Linux GUI的應用編程大作業(yè)。
第七階段嵌入式 Linux驅(qū)動理論及驅(qū)動程序開發(fā)實踐
主要介紹嵌入式Linux上驅(qū)動程序開發(fā)規(guī)范,包括設備驅(qū)動程序概念、字符設備驅(qū)動程序、塊設備與網(wǎng)絡設備、網(wǎng)卡驅(qū)動以及常用嵌入式設備驅(qū)動開發(fā)等知識。同時獨立實現(xiàn)兩種嵌入式設備驅(qū)動程序的編寫,包括驅(qū)動模塊的調(diào)試和加載以及完整的項目開發(fā)文檔的編寫。
第八階段嵌入式Linux項目團隊開發(fā)實踐鍛煉
主要包括設計并實現(xiàn)一個真實和完整的嵌入式項目的開發(fā)流程,涉及到數(shù)據(jù)采集、網(wǎng)絡通訊、圖形用戶界面顯示以及嵌入式數(shù)據(jù)庫存儲系統(tǒng)等多種嵌入式Linux編程技術。要求學員建立起團隊開發(fā)和協(xié)同工作的企業(yè)項目開發(fā)模式的概念和流程,強化學員對編寫項目概要設計文檔和詳細設計文檔的理解,為就業(yè)前的職業(yè)技能和素質(zhì)訓練做好充分準備。
四、實習內(nèi)容
1、 嵌入式的歷史與現(xiàn)狀
雖然嵌入式系統(tǒng)是近幾年才開始真正風靡起來的,但事實上嵌入式這個概念卻很早就已經(jīng)存在了,從上個世紀70年代單片機的出現(xiàn)到今天各種嵌入式微處理器、微控制器的廣泛應用,嵌入式系統(tǒng)少說也有了近30年的歷史。縱觀嵌入式系統(tǒng)的發(fā)展歷程,大致經(jīng)歷了以下四個階段:
無操作系統(tǒng)階段
嵌入式系統(tǒng)最初的應用是基于單片機的,大多以可編程控制器的形式出現(xiàn),具有監(jiān)測、伺服、設備指示等功能,通常應用于各類工業(yè)控制和飛機、導彈等武器裝備中,一般沒有操作系統(tǒng)的支持,只能通過匯編語言對系統(tǒng)進行直接控制,運行結(jié)束后再清除內(nèi)存。這些裝置雖然已經(jīng)初步具備了嵌入式的應用特點,但僅僅只是使用8位的CPU芯片來執(zhí)行一些單線程的程序,因此嚴格地說還談不上"系統(tǒng)"的概念。
這一階段嵌入式系統(tǒng)的主要特點是:系統(tǒng)結(jié)構(gòu)和功能相對單一,處理效率較低,存儲容量較小,幾乎沒有用戶接口。由于這種嵌入式系統(tǒng)使用簡便、價格低廉,因而曾經(jīng)在工業(yè)控制領域中得到了非常廣泛的應用,但卻無法滿足現(xiàn)今對執(zhí)行效率、存儲容量都有較高要求的信息家電等場合的需要。
嵌入式學習心得體會 13
工作一年了,喜愛嵌入式這個好玩,令人羨慕的行業(yè),不止是工資待遇哦。
4月,又是有許多面臨畢業(yè)、找工作的大學生來到,面對如此激烈的競爭,如果有一技之長旁身,那就是你挑公司了。
非常有感慨,上一年我也在大學城中參加千里馬的面試,跟我同學都是拿著一袋子的簡歷去排隊。
或者網(wǎng)上招聘海投簡歷。
現(xiàn)在就職的`公司算不上高大上,還能算的過去?偨Y(jié)一下學習心得,也算對自己學習有個交代吧。
1、如何做好嵌入式Linux學習前的準備?
要成為一名合格的嵌入式Linux工程師,就需要系統(tǒng)的學習軟、硬件相關領域內(nèi)的知識。大學里面學的基礎還行,可以繼續(xù)自學,我是自學韋東山Linux視頻,重點是有書,有視頻,有代碼。如果基礎太差是個小白,還是建議去花幾萬培訓吧。
2、學習嵌入式Linux需要補習哪些基礎課程?
嵌入式Linux工程師的學習需要具備一定的C語言基礎,因此面對許多朋友只是在大一或者大二學習過C(還不一定認真學了,呵呵!),之后基本就不再用過的情況,建議大家在學習之前先復習一下C語言基礎這塊。要提醒大家的是,復習時不能只關注基本語法,對于常用的數(shù)據(jù)存儲及處理方式,例如:數(shù)組、結(jié)構(gòu)體等也要關注,有條件的話一定在機器上親自敲敲代碼、分析理解一下具體案例代碼編寫的思路,讓自己慢慢進入一名嵌入式開發(fā)人員的狀態(tài)。
3、嵌入式Linux開發(fā)跟普通軟件開發(fā)在學習方法上有什么不同?
要成為一名成功的嵌入式軟件開發(fā)人員,程序的設計能力是首要技能,這一點與普通的軟件開發(fā)人員的要求是一樣的。但是作為“軟硬兼施”的嵌入式開發(fā),則要求大家不僅要了解較底層軟件的工作過程和工作原理(例如操作系統(tǒng)級、驅(qū)動程序級軟件),可以看一下韋東山Linux視頻第1期(基于S3C2440錄制): ARM實驗,u-boot,文件系統(tǒng),初級驅(qū)動。
嵌入式學習心得體會 14
大二下學期,大學里的同學都面臨著一次選擇,考研或者就業(yè),培訓機構(gòu)紛紛到學校來招生,很多人都猶豫了,也包括我。因為要花一部分費用,而且自己還沒畢業(yè),考慮到父母的經(jīng)濟能力,在反復和家里商量后,因為就業(yè)形勢嚴峻,而自己又不想考研,我意識到了這是自己走向社會一個關鍵的轉(zhuǎn)折點,也可能是人生的轉(zhuǎn)折點,所以我選擇參加了培訓。
剛出來的時候?qū)@些行業(yè)我們也不是很了解,以前甚至都不知道嵌入式是什么,通過老師的介紹和自己在網(wǎng)上看到的一些資料,發(fā)現(xiàn)嵌入式軟件開發(fā)的前景很好,目前嵌入式軟件工程師也是緊缺人才,通信工程從事這方面也有專業(yè)優(yōu)勢,自己大學里學習的知識都可以在以后的工作中得到應用,于是我們選擇了來港灣做嵌入式軟件工程師的培訓。這里有非常濃厚的學習氛圍。這里能夠感受到社會上工作的壓力,來這里學習的同學不全是大學剛畢業(yè)或者是還沒有畢業(yè)的大學生,有的是在工作幾年之后又回來學習的,可能他們也感覺社會在快速發(fā)展,自己也應該多學點有用的知識,以便更好地立足社會。從他們身上我能感覺到壓力,能感覺到自己的不足,讓我感覺自己學習不再只是為了一場考試,而是今后工作和生活的實力與能力。
嵌入式技術的掌握是需要一個過程的。實事求是的說,嵌入式技術的全面掌握是有相當難度的。可以輕輕松松學會嵌入式技術的說法是夸大其詞了。這個就像學英語一樣,學英語無論怎樣學,不管是“瘋狂學”還是用新理念來學,真正掌握的話還是需要一步步積累才能熟練掌握。要想在幾天內(nèi)學會嵌入式,成為這方面的高手。這些想法本身是不太現(xiàn)實的。
現(xiàn)在我需要主意的是:
第一:把心踏實下來,做好打硬仗的準備。
第二:注意學習方法。盡量不要走彎路,爭取一鼓作氣入門。一旦入門了以后呢就好辦了。嵌入式技術的掌握,本身呢就比較難,要是再走些彎路,時間上會浪費,甚至會影響學習的信心。
第三:不能影響我平時的課程。不能拿了芝麻,丟了西瓜。
根據(jù)我在論壇的了解,我選擇學習嵌入式linux,剛好我們學校也重視嵌入式linux,有一些專業(yè)課也是相關的。
暑假的時間十分寶貴。當培訓沒有開始時,我電腦就里安裝了linux就開始看linux內(nèi)核方面的書了。我就開始看那本說,大家說linux內(nèi)核情景分析不錯,我就買了上下冊,后來又買了 《深入理解linux內(nèi)核》,最后也買了毛德操的《嵌入式系統(tǒng)》也是分析linux內(nèi)核代碼的,主要講arm相關的`。
看內(nèi)核期間是個非常痛苦的過程,看情景分析有種在森林中找出路,其間我組織了一些同學學習內(nèi)核,幾乎沒有幾個能堅持下來的。我認為我是堅持下來了。情景分析在看第一、第二遍是幾乎沒有摸到門道,我分析有三個方面的原因:
1、自己的基礎差,這是最要害的。
2、內(nèi)核本身很難。
3、沒有交流和高人指點。到了第三遍時我才摸到門,才差不多知道個linux的大概脈絡,很多細節(jié)也是稀里糊涂。
學習linux總結(jié),學習嵌入式的重點和難點要害在操作系統(tǒng),假如沒有把握操作系統(tǒng),我認為很難把握一個嵌入式系統(tǒng)。即使在做嵌入式開發(fā)中,作應有層的開發(fā)幾乎可以不知道操作系統(tǒng)也可以開發(fā),我認為那是浮在表面的。很難深入和提高自己的層次。學習嵌入式,兩個重點,cpu和操作系統(tǒng),目前比較流行arm,所以學習arm.操作系統(tǒng)很多,但是我在實踐中發(fā)現(xiàn),做linux的技術路線很難,在windows幾乎不會有的問題,在linux開發(fā)中幾乎遍地陷阱。一掉進去劃很長時間出來,一旦解決自己又長進了!
在剛開始接觸的時候,我也是抱著本書,自己摸索,可是越看越迷茫,連很多書里的名詞都不知道是什么意思 ,去網(wǎng)上查也沒有得到答案?墒窃谂嘤柕臅r候我得到了很好的指點,在這里,由于老師都是十分有經(jīng)驗的項目經(jīng)理,他們懂得如何去學習,從哪里開始入手,這對于我這樣的背景知識比較薄弱又接觸時間比較短的人來說實在是太有幫助了。
學習嵌入式,XX 很重要,以前在學校的時候,XX學得并不扎實,一開始老師帶著我們把XX 從頭過了一遍,才感覺到自己確實基礎不行,于是又認真的把XX 過了一遍,在暑假的這些日子里,學習一直很緊張,進度很快,不過老師們很負責,我們遇到的問題都會認真得給解決,學習過程中我接觸到了很多新鮮的知識和技術,確實開了不少眼界,了解了嵌入式開發(fā)的基本流程,學習過程中,可能是第一次接觸到這些以前根本沒見過的知識,一開始學很吃力,好多東西都聽不懂,更別說把它們聯(lián)系起來,所以一開始一直很苦惱。
嵌入式學習,是比較耗時的,前期需要很多知識做鋪墊,有很多人在這個過程中走了不少彎路,于是開始失去耐心、失去信心,以至最終放棄學習。所以我想有必要強調(diào)一下問題,在剛開始的時候,自己什么都不懂,可是學習的愿望很強烈,每次上課都希望上完課就能如何如何,可是下來發(fā)現(xiàn)自己好像離自己原本的目標還很遠,于是心里著急,自己跑到網(wǎng)上搜了很多資料,每天亂看,可是并沒有很大的幫助。我想說的是,學習嵌入式一定要有耐心和毅力,不能急躁,按照課程的安排自己多做一些總結(jié)和練習,等到知識慢慢的積累下來就會有一種豁然開朗的感覺。
雖然課程還沒有完,可是在這段時間的學習中,我按照老師的指導在完善的課程體系下進行系統(tǒng)的學習,已經(jīng)掌握了U-boot、kernel以及l(fā)inux移植的基本框架,(我想在今后的學習中一定會對這些知識更加熟悉以至精通。┻@對于2個月前什么都不懂的我來說已經(jīng)是很大的提高了!用得是ARM9的板子,這也是市場上現(xiàn)在比較新的,比較流行的板子,很多公司在實際的產(chǎn)品開發(fā)中就用的是ARM9。在課堂上,老師的講解和我們的練習相結(jié)合,理論聯(lián)系實際。老師除了講解知識外,還結(jié)合了大量的實際案例和操作,這對于我對問題的理解和知識的記憶有很大幫助。開學后我還需要繼續(xù)參加培訓學習。一個暑假有意義的培訓實踐,我相信在我以后的求職,工作中,這個暑假給與我的,不僅僅只是個好工作,還有各種學習熱情,方法:通過培訓,使我認識到:新課程標準下教師是學生學習的合作者,參與者,引導者。21世紀是信息網(wǎng)絡時代,學生很容易從學校外部資源中獲得信息和知識,教師角色不再主要是信息和知識的傳播者、講授者,而是學生學習的合作者。
傳統(tǒng)的教學方法以教師為中心,教師提問,學生回答。學生被動接受,頭腦幾乎成了知識倉庫,而新課標要求以學生為主體,以培養(yǎng)能力為主線。
1.課堂上努力營造一個民主平等、寬松和諧的學習氛圍
2.創(chuàng)設情境,激勵學生主動參與教學過程
3.課堂上變教師講授為學生討論、合作學習,還學生學習的主動權(quán)
4.教師應努力培養(yǎng)學生的學習興趣,培養(yǎng)學生終身學習的觀念
5.教師應關注學生的個體差異,使每個學生都得到充分的發(fā)展
6.教師應充分利用現(xiàn)代教育技術輔助教學,提高教學效益
幫助學生確立適當?shù)膶W習目標,指導學生形成良好的學習習慣,為學生服務,建立良好融洽的課堂氣氛。
總之無論我們多么習慣和喜歡從前的教學模式,無論有多大的艱難險阻,新課標已經(jīng)為我們指明了新的方向,只有跟著新課標的方向,我們也才不會迷失自己的方向。
嵌入式學習心得體會 15
就我個人而言,從最開始對嵌入式一竅不通到現(xiàn)在越學越感興趣,當然相應在嵌入式方面的提高也是很明顯的。學習嵌入式越來越成為我學習中的一部分,現(xiàn)在把我的學習過程的心得體會與大家一起分享,希望那些和我一樣對嵌入式想學而又迷茫,不知從哪入手的同學朋友有所幫助。
1 .基礎知識
嵌入式開發(fā)很大一部分靠C語言,尤其在底層驅(qū)動等用的很多,當然在應用開發(fā)還用到諸如C++等其他語言,但我想對于一個初學者有C基礎就足夠了,等到學到一定程度再去擴展。所以C基礎是學嵌入式的前提。
關于C語言需要知道基本的語法,什么是結(jié)構(gòu)體,什么是共用體,有什么區(qū)別,不用強記一些實際中用的很少的東西。C++要知道什么是類,怎么定義,繼承,接口,要深刻理解,當然基本語法也是必不可少的。
操作系統(tǒng)原理也需要基本理解和掌握的,我記得我上課的時候不以為然沒有認真學習,后來發(fā)現(xiàn)很多的東西都是在這個課上講到的。什么時間片啊,任務調(diào)度啊,都是在那里知道的。
Linux基本命令的使用(vi編輯器必須會用,因為在終端修改文件的時候只能用這個),我們現(xiàn)在很多的人都習慣用鼠標了,很少用到命令,我學習嵌入Linux就強迫自己去改掉這個習慣了,Linux用命令操作一是效率高,二是功能非常強大,遠非圖形界面能比的了的',其實我們用圖形界面的操作都要轉(zhuǎn)化為命令傳給硬件的。Linux文件系統(tǒng)的管理要清楚,哪個目錄存放是什么東西,有什么用,文件權(quán)限管理等。
2.單片機知識的學習
我覺得單片機、嵌入式等這一類都有很大的相似性,知識功能不一樣,但工作的原理、控制原理都和大的相似。就我個人而言,能比較快的進入嵌入式的學習與提高,很大一部分依賴于對單片機的原理有較深入的學習和理解,單片機比較簡單,學習起來相對比較容易,所以我建議想學嵌入式的同學,可以和我一樣從單片機入手,那樣不僅可以理解這些微處理器、微控制器的操作與控制原理,當然還可以順便學學匯編語言,這對后面的嵌入式學習都有很大的幫助。
看書不要希望一次就會,一次就明白是什么意思,也不要死記硬背,看不明白也沒關系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就記住了,遇到的少的,忘記也就忘記了。還有,不要直接閱讀Linux內(nèi)核源代碼,看一些自己把頭撞破也想不明白的事,一開始很打擊我的積極性,要循序漸進,剛開始我就從學習做led開始的,接著學習做個串口,慢慢的就開始學著做硬件編解碼了。
3.學習開發(fā)板
我在剛開始學習嵌入式時就買了一塊學習板,現(xiàn)在的開發(fā)板不是很貴,給很我們初學者減輕了經(jīng)濟負擔?丛俣嗟囊曨l,看再多的書,也不如自己動手試一下,看著很簡單的東西,做起來就可能遇到很多的問題,遇到問題找到原因,解決問題,只有這樣才能學到東西,記得我第一次寫led的驅(qū)動,想自己試一下,網(wǎng)上也有人寫過相關的代碼,可是自己一試,就出了好多的問題,那個led弄了我一天才把led燈點亮。所以不要眼高手低。
4.不要好高騖遠,要腳踏實地
我拿到開發(fā)板時,很興奮也很激動,想法自然也很多,想用開發(fā)板實現(xiàn)自己的這個想法,實現(xiàn)那個想法,然后又不知道從何下手,然后就去論壇中發(fā)一個貼,“那個什么什么怎么實現(xiàn)啊,哪位大俠能詳細說一下啊,跪求!”,然后等著別人去回復。我覺得有想法是好的,我們要實現(xiàn)自己的想法也是有前提的,首先,我們對這部分知識了解嗎?如果不了解就去Google一下(最好別用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到問題,再去發(fā)貼問,這樣也顯得我們有一點點水平啦。比如自己連串口是什么都不太清楚呢,就問串口通信怎么做啊,就是人家把代碼給我們,我們也不明白是怎么回事啊。
5多看代碼,多寫代碼
見多識廣,熟能生巧。多看代碼,要從代碼中讀出代碼的意思來。自己平時也要多寫代碼,多練習(這一點我做的不好,寫的少)。
個人覺得這是最重要的一種做法。這東西沒自己親手做,程序沒親手寫,沒有進行調(diào)試等,都是很難學到東西,因為很多東西感覺看的都懂,其實真正做起來就什么都不會了。因此買塊板來自己做,這樣才能真正將所學的應用到實際中去。而且這樣做印象才能深刻,死記硬背原理及規(guī)則不但不可行還會拖垮你的學習興趣,自然學不下。
總之,我覺得,基礎知識很重要,但是動手做更重要!
嵌入式學習心得體會 16
4月10號,為期一個階段的Linux開發(fā)基礎培訓課程圓滿結(jié)束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!
當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種。種不安與些許拼博的決心,開始了自我提升階段的“充電”,由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的Linux下的各種強大的命令集。
在Unit 1中,徐老師詳細生動的為我們講述了有關Linux的誕生、初成長以及輝煌的發(fā)展至今,今后應用范圍則愈來愈廣泛,講解了為Linux這個偉大的`OS做出巨大貢獻的一位位出色的、偉大的人物,他們那種學習鉆研的精神、鍥而不舍的信念、勇于把握住難得的機會,從小處著手,踏踏實實的創(chuàng)造出了對人類科技發(fā)展做出卓越貢獻的Linux(Unix)系統(tǒng),他們的種。種,都值得我們?nèi)ド羁谭词 ⒖炭鄬W習、傳承并永遠發(fā)展下去。
查看ip地址和重啟網(wǎng)絡服務是我學的第一個命令:ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到遠程登錄軟件可用xmanager。
secureCRT是我們常用的,安裝好后利用其登錄到了Red hat Linux,需要知道Linux主機的ip地址。徐老師為我們介紹了重要內(nèi)容:SHELL,即運行程序的程序,如echo $$SHELL可查看SHELL的環(huán)境變量是csh還是bash。指令pwd可查看當前所在路徑,passwd:更改Linux下的密碼,僅限r(nóng)oot用戶有此權(quán)限,當然我們是利用虛擬機VMware程序來運行Linux OS的,懂得了如何設置虛擬機的網(wǎng)卡設置、暫停、恢復、全屏等。
嵌入式學習心得體會 17
嵌入式學習心得時間過的緊快,在粵嵌教育已經(jīng)培訓,有5個月了培訓期間贏來很多,也認識了班上的自學大神,經(jīng)過系統(tǒng)的學習,老師的細心指導,我的付出努力,對于嵌入式上,學到很多實用的知識在動手操作能力也加強了,不僅在專業(yè)領域技術方而有了很大進步,而且在實踐操作方面我也對嵌入式有了更深入的了解。也許這5個月是這兒我在外而學習和生活最寶貴的時間。
在校兩年,讀于電子信息韋爾泰宗工程技術專業(yè)的我,就覺得這研習專業(yè)領域?qū)W的知識太廣了,不管基礎還是動手操作,都要比較靈活。在校期間,學習單片機,傳感器,C語言,嵌入式應用技術等課程。感覺學起來,對我來說接受還是比較快的,那時就有想過:學的多不如學的短萼,也許高中學生對課程多于理論為主,理解它的原理和基本計算機程序方法方式。其實,我還是有努力去學的,可以說,在校科任老師都教會我很多專業(yè)知識,為我將來的學習和發(fā)展打好基礎。
在大三期間,為了更為拉著明確自己要走的方向,去培訓嵌入式軟件技術開發(fā)。也許將要投身嵌入式行業(yè)的我,就注定代價這條路要付出不少時間和精力,但如果我好求比較強,接受還行,就不停給自己送祝福,努力!要去培訓嵌入式,時,我從網(wǎng)上也對它有更加的想像也看下大學的嵌入式應用技術書,嵌入式系統(tǒng)是軟件和硬件的綜合體,以應用為中心,以科學計算為基礎,軟硬件可裁剪,改變應用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴格要求的專用負載計算機系統(tǒng)。
剛開始嵌入式學習,對Linux系統(tǒng)的'專業(yè)知識加于鞏固。一些簡單的代碼,C語言,對于嵌入式軟件還是硬件開發(fā)的人員,對C語言的掌握這個是沃蘇什,卡的,特別是對于以后致力于嵌入式軟件開發(fā)的人現(xiàn)在絕大部分全都是用C語言。在下來兩個月就對Linux系統(tǒng),數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)移植的方法、A8的體系結(jié)構(gòu)、Linux內(nèi)核及驅(qū)動設計、 android> C+Java的JNI應用編程的系統(tǒng)學習。在每學個階段就作一個考試,基本知識對前面所學的知識進行復習,有些會做一個簡單的小項目,學以致用。知識量還是比較多,但教學也比較快,有些知識還沒消化完,第二天又接受新知識,對于能在課上基本上就可以對知識完全懂的并不多,晚上都用一個半小時來復習。經(jīng)過5個月系統(tǒng)的學習,嵌入式技術方面有了很大進步,實踐操作方而也對嵌入式有了更深入的了解。在最后一個月,基于A8(S5PV210)的嵌入式智能家居系統(tǒng)制作。
下而我談談在粵疊砌教育的培訓感受,我培訓的地點是在科學城粵嵌教育培訓中心的多媒體課室里,這里有研習環(huán)境非常好,在緊張的學習的整個過程中,你可以得到名師的督促,也可以體會到第一流企業(yè)高質(zhì)量的培訓。在課堂上,老師們認真的演說,以及手把手地教導,使每個學生都能夠扎實地掌握到嵌入式的各方而的知識。而粵嵌幼兒教育教育的老師也是操作實踐為主,實踐是非常重要的,只有把知識掌握到位,才能達到學習的目的。
感謝粵嵌教育機構(gòu),感謝粵嵌教育老師。
嵌入式學習心得體會 18
8月我參加了學校安排的課題實訓,基地在北京,學院安排我們集體坐火車一同前去,浩浩蕩蕩的隊伍開始出發(fā)了。剛來北京的時候,映入眼綿的都是高樓大廈,一直想到的地方終于到了,好多以前的同學聽說我要去北京實訓都很羨慕不已,我自己也隱隱感到自豪。
我參加的課題實訓是嵌入式方向的,開課的內(nèi)容主要是嵌入式開發(fā)方面的,C語言,數(shù)據(jù)結(jié)構(gòu),LINUX基本操作,網(wǎng)絡編程,操作系統(tǒng)和匯編語言,這些都是嵌入式不可缺少的。
每個專業(yè)技能都決定了你以后找工過。我們班分了很多小組,每組都有小組長,小組長直接對我們負責。教課老師很認真,都是從很基礎的開始講;同學們聽課也很認真,由于代碼操作比較多,鍵盤的聲音源源不斷的在響。好久沒有感覺到這種濃重的學習氣氛了,而在這緊張而充實的學習氛圍中我獲益匪淺,感受頗多。
授課過程中老師們也傳授了一些找工作方面的經(jīng)驗,比如簡介的樣式和寫法,面試中的一些著裝,禮貌用語和技巧,對此基地的老師還精心的為我們安排了一場模擬面試,在其中我們學到了很多有關于面試方面的經(jīng)驗。
通過這幾個月的實訓我學到了很多,同時也讓我們意識到我們要學的更多。從程序的設計到編寫、畫圖、調(diào)試、修改、完善、到最后的實訓報告,每個人都付出了時間和精力去做好自己的任務幫助隊友,所以團隊的合作和隊友之間的相互協(xié)助非常重要。
通過實訓讓我們更深一步的對自己的專業(yè),對自己的能力,對自己所學的有正確的認識,并且能在以后的學習工作中不斷提高和完善自己。特別是講C語言和進程通信中老師給了我們每個小組的幾個小項目,讓我學到了更多項目經(jīng)驗,這在學校之前是沒有的。這次實訓也碰到了些問題,比如項目文檔的寫法,代碼的規(guī)范,流程圖的'畫法,這些都有講究,在老師和同學的幫助下,我不斷的提高了在這些方面的學習。
生活上班主任郭老師和王老師對我們關懷備至,讓我們沒有感覺在外面的那種不適感,同學們也互幫互助,所以生活上大致沒什么問題,這讓我們更好的去學專業(yè)。很感謝學校有這樣的實訓安排。
總的來說,這次實訓還是比較成功的,無論是個人動手能力還是團隊協(xié)作能力都得到了很好的鍛煉。在實訓過程中老師也交給我們很多簡單實用的技巧。我們也學到了,做好做對一個項目固然重要,同時美觀程度也是必不可少的,無論是從參觀者的角度還是自己看的角度都很重要。
嵌入式學習心得體會 19
就在昨天3月9日,學校規(guī)定實習時間已經(jīng)到期了。從上個月的13日到現(xiàn)在已經(jīng)近一個月,雖然與公司的實習時間還沒有結(jié)束,但是為了完成學校交待的任務,在此對這段時間的實習做一個總結(jié)。
首先,我先來簡單介紹下實習單位。我實習的單位全稱——上海寶信軟件股份有限公司廈門分公司。其作為上海寶信軟件中的重要一員,是寶信軟件在全國多網(wǎng)點支持服務的延伸,具備與寶信軟件上?偛肯嗤募夹g服務能力,并可無限制調(diào)用總部專家資源,秉承寶信軟件“IT服務,提升信息價值”的經(jīng)營理念,致力于IT服務,主營業(yè)務包括網(wǎng)絡安全產(chǎn)品銷售、系統(tǒng)集成、運維服務、軟件工程等。
其次,向大家介紹是我的實習內(nèi)容。這里要先介紹我的實習崗位——嵌入式軟件開發(fā)工程師。實習內(nèi)容大致分為兩塊,一是軟件測試,二是編碼。在我們剛來的前兩周,我的實習內(nèi)容就是軟件測試。軟件測試的主要內(nèi)容是UnitTest也就是單元測試。但是,在實習剛開始的階段,我并沒有就馬上做測試。而是有前輩給我發(fā)了一份我們要做的產(chǎn)品的功能書給我看。功能書文檔是日文版的,我要把它看懂,才知道我們這里到底是做什么。后面的測試工作就是做單元測試了。
我們在做測試是有測試環(huán)境的,整個單元測試過程是有前人經(jīng)驗的。所以只要按照規(guī)則來就沒有問題,也相對比較簡單。就這樣單元測試做了近8天左右,測試了51個c++函數(shù)。其實,單元測試比較簡單,但是碰到函數(shù)的輸入輸出的值及路徑多的時候,特別的煩,會影響測試效率。實習的另一個內(nèi)容就是編碼,其實說的確切一點,是看代碼。一個剛來不到3周的新員工,以前又沒有經(jīng)驗,公司怎么會放心讓你寫代碼。有前輩給我安裝了秀丸和Source Insight軟件,然后給了我一代碼,讓我按上面看,有問題可以問組里的前輩。C++代碼是看的懂,但是太多的函數(shù),被調(diào)用的關系也不清楚,也不了解決函數(shù)的意義,所以感到很無趣。也許是在考驗我的耐心或者是讓我熟悉代碼編寫的規(guī)范。不管是什么目的,至少自己可以鞏固下c++的基礎。不過真的要感謝前輩的細心指導,使我大概了解程序的調(diào)用關系。
再次,向大學介紹下我的實習階段的工作過程。每的8小時的上班時間,但是一般會比這個時間長的。早上8點45分到9點15分不等上班,晚上5點30分到6點不等下班,中午11點可以去吃飯、1點之前上班。這個時間還是比較人性化的。當然也有時候也要加班,如有時候日本客戶來這里的時候,發(fā)現(xiàn)我們的人都很早下班的時候,他就會和我們的上級說,然后我們就得加班。這也是一種非常情況,但是加班是可以調(diào)休的。每天的上班時間基本上是跟電腦打交道。
前期實習階段都是打開電子表格看日語版功能說明書,后面做測試的時間就是各種軟件一起用了。每天做單元測試的時候,其實感覺特別煩。有時候一天做7到8個,有時候一天2個做不到。但是整個過程自己還是堅持下來了,雖然很累,自己還是很好強的.。后期基本上是學習編程了。由于后面項目已經(jīng)交互,所以每天都不沒有加班了。每天的工作主要就是學習代碼規(guī)范,如那里怎么縮進、命名之類的事。至于邏輯什么的,還是很不清楚,還需要努力多問多想。
再次,與大家分享下我的實習收獲。雖然與原計劃5個月的實習還差很遠,但自己還是很有收獲。其一,對于歌樂Audio項目有一定的了解。具體的表現(xiàn)在,分了幾層。我個人是分配到app層,也就是業(yè)務應用層。雖然對業(yè)務的熟悉不夠深,但大概知道,每一天前輩們都在做什么事。其二,日語方面的加強。因為客戶方面基本上是日本人,所以加強日語學習是必須的。有了這樣的一種壓力,自動會轉(zhuǎn)化為一種動力,促使我去學習。我想這樣多少可以提高下我的日語能力。還有就是,常常有很多日本客戶就做在我的旁邊。感情還是很緊張,因為不知道怎么跟他交流。結(jié)果每一天他來的時候,我只能和他說聲早上好。希望自己在今
后的時間里要多多加強日語學習,爭取與日本客戶交流,才能提升自己的能力。其三,交流溝通能力的提高。其實自習也一直覺得溝通能力對成功貢獻是最大,要把一件做成肯定不是一個人的事情,我們需要與別人溝通。在溝通中互相了解相聯(lián)系的部分,這樣才能夠避免摩擦帶來不必要時間與精力的浪費。而我自己的溝通能力提高表現(xiàn)在自我意識的提高。當遇到問題的時候,會主動的想想,是哪個具體的點不懂,然后列出問題,再向前輩請教。這樣大腦里就會有一個邏輯過程。通過這樣就可以把自己的意思清楚的傳達給別人。在別人向自己傳達信息的時候,我會邊思考邊聽,遇到不了解的地方,講明白自己的不解之處。這樣這個溝通過程就會比較流暢。其四,職場意識的提高?梢哉f來實習就意味我們提前畢業(yè)了,提前進入社會。所以,由學生到社會職業(yè)人的過渡期就被實習給填充了。經(jīng)過一個月實習,我發(fā)現(xiàn)自己已經(jīng)很習慣在公司工作。對于自己能做什么,未來能做什么也有了一定的思考。不管畢業(yè),我還是留在這個公司還是去其他的公司,我想我心中已經(jīng)有了這份意識,這對我將來的職業(yè)生涯都是有幫助的。其五,時間管理。很多人工作的時候就忘記了生活的存在,我們的生活是多彩的,并不是只有工作。其中,有一項轉(zhuǎn)變的比較大,就是很多人不喜歡運動了。對于這些,我都是不太認可的。我還是會抽出時間出去運動一下。我覺得運動可以帶給我健康,同時會讓我的精神更好,工作更有效率。其實,運動并不會浪費我們時間,而是會給生活帶更美好。
最后,與大家分享一下我這個月實習的心得與體會。通過這段時間的學習,從無知到認知,到深入了解,漸漸的我喜歡上這份工作,讓我深刻的體會到學習的過程是最美的。在整個實習過程中,我每天都有很多的新的體會,新的想法,想說的很多,我總結(jié)下來主要有以下幾點:
1、持之以恒
既然選擇了自己的這份工作,不管工作本身怎么樣,我們都要堅持往下走。因為我相信每一家公司的工作原理都是差不多的。如果你在這家公司做不住的話,我想你在另外一家公司也是做不住的。只有我們改變自己的態(tài)度,才可能戰(zhàn)勝心中的浮躁。我們新人一來到公司我,一開始都不會立刻給工作我們做,-一般也都是先讓我們看看文檔或代碼,時間短的要幾天,時間長的要幾周,在這段時間里很多人會覺得很無聊,沒事可做,便覺沒有發(fā)展空間,于是產(chǎn)生想走的念頭。恰恰在這個關鍵的時候更需要我們的堅持,輕易放棄只會讓自己后悔。
2、不怕做小事,那是一種考驗
我們一來到公司實習的時候,很多組里的前輩多數(shù)還是把我們當學生看待。他們不會也不敢讓我們直接參考到一個真正的項目中去。在這個其間一般會給我們看一些過去做過項目的文檔和代碼,其實不可小看這些小事,也許是為了考驗我們,也許是讓我們先了解業(yè)務。作為一人新人,一定要積極面對這些,勇于擔當做小事,喜歡做小事。這樣公司同事才會更快的接受你,慢慢地才會讓你做一些重要的工作。
3 、態(tài)度端正,一定要多主動
我們到公司工作以后,要知道自己能否勝任這份工作,關鍵是看你自己對待工作的態(tài)度,態(tài)度對了,即使自己以前沒學過的知識也可以在工作中逐漸的掌握。態(tài)度不好,就算自己有知識基礎也不會把工作做好,四多一少就是我的態(tài)度,我剛到這個崗位工作,根本不清楚該做些什么,并且這和我在學校讀的專業(yè)與這里做的東西還是不太一樣的,剛開始我覺得很頭痛,可經(jīng)過工作過程中多看別人怎樣做,多聽別人怎樣說,多想自己應該怎樣做,然后自己親自動手去多做,終于在這一個月里對工作有了一個較系統(tǒng)的認識,慢慢的自己也可以完成相關的工作了,光用嘴巴去說是不行的,所以,我們今后不管干什么都要端正自己的態(tài)度,這樣才能把事情做好。
4.不要報怨
其實在做單元測試的那個時候,有時候覺的特別的煩。有時候做了半天連一個函數(shù)都沒有把弄出來,那種感覺真的是非常的難受,心中也有委屈。可是這是我的工作,我報怨也沒有用。只能一步一個腳印走過來。直到后面把函數(shù)測完,心中還是很有成就感的。其實有的人會覺得公司這里不好那里不好,同事也不好相處工作也不如愿,經(jīng)常埋怨。我覺這樣只會影響自己的工作情緒,不但做不好工作,還增加了自己的壓力。所以,我們應該少埋怨,要看到公司好的一面,對存在的問題應該想辦法去解決而不是去報怨,這樣才能保持工作的激情。
5、虛心學習
由于我們是新手,而且又還沒有從學校里完全走出來。所以在工作過程中,我們會碰到很多問題,有的問題我們可以有我們所學的解決,有的有很大業(yè)務性的問題,我們就無法解決。這個時候不要不懂裝懂,應該虛心地向前輩們請教。請不要害怕,因為前輩肯教我們肯定是我們的福氣,對我們以后在工作中都有幫助的。同時請教的時候也是一個鍛煉溝通的過程。在前輩給我們解惑的時候,我們也應該虛心的接受,不要裝著一副不屑的樣子。
6、知錯能改
作為一名新人,不管在學校有多么的優(yōu)秀,來到公司,我們頂多就只有點基礎,其他什么的都得重新開始。在學習的過程當中,犯錯是不可避免的。知錯能改是我們唯一的選擇。明知自己有錯,還理直氣壯那是不應該的。我認為這種行為是可恥的。在犯錯的時候來銘記于心,不要第二次在犯同樣的錯了。當前輩或其他人指出我們的錯誤時,我們要虛心聽教,坦誠改錯。這樣我們才會進步,才會在組里與同事相處融洽。
7、團隊合作
重要的不是我,是我們。在一個項目組里,我并不是一個人。我只能說我是組里的一個部分。我們每一人都不是神,我們不可能一個來完成所有的工作,因此,必須分工。但是,分工并不是都很明確的。每個人分到的工作,多多少少都會和別人的工作的有交集。這是因為,作為一個項目的每個部分,最終還是整合形成整體。我們還是需要這些部分與部分交集作為連接點組合起來。因此,每個雖是分工,但更多是合作。我們中的我必須明白這些,要有團隊觀,做好自己的同時,更重要也要做好與別人的溝通。這樣才會避免工作的重復,意見的不同等負能量。
8、溝通能力
在上一點的體會團隊合作中,其實我已經(jīng)說了,團隊合作的基礎就是溝通。一個有效率的團隊,我認為它的成功就在于成員之間良好的溝通能力。因為,人與人的溝通是信息傳遞的媒介。沒有良好的溝通基礎,信息在傳遞的時候就會被曲解。在軟件開發(fā)的整個過程,團隊合作是至關重要。每一環(huán)節(jié),都離不開溝通。需求變更帶來的問題,尤其需要在溝通中解決問題。所以,讓自己把信息傳遞的正確和有效,提高溝通能力是必不可少的。
9.做人做事講究原則
其實在公司上下班是一個很大的學問。同事都已經(jīng)來上班了,你才來;蛘呤峭逻沒下班,你人就都先走了。其實要把這些看成一種常態(tài)。在公司上班不是比誰先來,也不是比誰晚走的,比得是自己的工作的效率。有時候,我們工作做完,是可以先走。你想想,你走了之后,估計別人也敢走了。從這一點上,可以說你是幫助了大家。當然這只是開玩笑,做人做事要有點原則。工作沒完成當然不能跑回去,這是沒有責任的表現(xiàn),以后主管怎么能把事情交給你。工作做完,想先走就走了,不必當擔心這擔心那的。我相信一個好的主管,不會以一些無所謂的因素來衡量一個人的。只要自己身體正,就不怕別人說。
10.做好職業(yè)生涯規(guī)劃
每個人在來實習之前,肯定會想我來這家公司是做什么。當你想好,并決定來的時候,你已經(jīng)做了第一步職業(yè)生涯規(guī)劃了。實習也是成了我們檢驗計劃的時候,如果你發(fā)現(xiàn)這個工作不適合你,畢業(yè)前你還有機會可以做換。如果感覺這個工作適合你,那么你就可以做下一步
的規(guī)劃了。我當初選擇這個工作,是因為嵌入式軟件開發(fā)在近幾年會發(fā)展會比較快,而且本人對c++和c比較感興趣。同時,目前做的工作是對日外包,對于我日語的提高也是很有幫助的,F(xiàn)在實習給我感覺是,不出現(xiàn)什么其他狀況,應該畢業(yè)后會留在這個公司。至少今后的職業(yè)規(guī)劃以日語和編程提高為主,以管理為輔。
在這里,我要感謝上海寶信軟件股份分司給我這次寶貴的實習機會。同時,也要感謝組員對我有直接幫助的前輩。當然還要感謝學校和畢業(yè)指導王老師的關心與指導。
總而言之,這次實習是我大學四年來最正式的一次。我想通過這次的實習,我將從學生走向社會職業(yè)人的轉(zhuǎn)變。一個月的時間過的太快了,但是我們的實習并沒有結(jié)束。通過這次的總結(jié),我對這次實習的意義有了深刻地認識。自己在今后的學習與工作中,一定會更加努力做的更好。
嵌入式學習心得體會 20
嵌入式系統(tǒng)用在一些特定專用設備上,通常這些設備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時對實時響應要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。像我們平常常見到的手機、PDA、電子字典、可視電話、VCD/DVD/MP3 Player、數(shù)字相機(DC)、數(shù)字攝像機(DV)、U-Disk、機頂盒(Set Top Box)、高清電視(HDTV)、游戲機、智能玩具、交換機、路由器、數(shù)控設備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設備等等都是典型的嵌入式系統(tǒng)。
看到了嵌入式系統(tǒng)的范圍,你也應該知道嵌入式系統(tǒng)工程師是做什么的,就是開發(fā)上面的那些電子產(chǎn)品的工程師。
關于如何學習嵌入式?
學習嵌入式,該學習什么基本的知識呢?
首先C語言,這個是毋庸置疑的,不管是做嵌入式軟件還是硬件開發(fā)的人員,對C語言的掌握這個是必需的,特別是對于以后致力于嵌入式軟件開發(fā)的人,現(xiàn)在絕大部分都是用C語言,你說不掌握它可以嗎?至于如何學習C語言,我想這些基礎的知識每個人都有自己的方法,關鍵要去學習,看書也好,網(wǎng)上找些視頻看也好。很多人會問,C語言要學到怎么樣,我覺得這沒有標準的答案。我想至少你在明白了一些基礎的概念后,就該寫代碼了,動手才是最重要的,當你動手了,遇到問題了,再反過來學習,反過來查查課本,那時的收獲就不是你死看書能得到的。
其次,應該對操作系統(tǒng)有所了解,這對你對硬件和軟件的理解,絕對有很大的幫助。應該把系統(tǒng)的管理理解一下,比如進程、線程,系統(tǒng)如何來分配資源的,系統(tǒng)如何來管理硬件的,當然,不是看書就能把這些理解透,如果不是一時能理解,沒關系,多看看,結(jié)合以后的項目經(jīng)驗,會有更好的理解的。
還有應該學習嵌入式系統(tǒng),如linux或者wince下的編程,這些對以后做應用的編程很有幫助,當然,如果做手機的話,那可以學習MTK、塞班、Android等操作系統(tǒng),Android是以后發(fā)展的趨勢,現(xiàn)在很熱門,Android也是基于linux系統(tǒng)封裝的,所以建議先學習下linux。
還有,應該學習下單片機或者ARM或者MIPS,很多人說我沒有單片機的經(jīng)驗,直接學ARM可以嗎?我覺得那完全沒有問題的,當然如果你學習過單片機,那最好不過了,以后學習ARM就更簡單了。
最后如果你把以上的'知識都有所了解后,就該去閱讀閱讀一些優(yōu)秀的代碼,比如結(jié)合arm芯片手冊學習去學習下UBOOT的源代碼,了解下最小的系統(tǒng)開發(fā),那對你整個嵌入式開發(fā)的非常有幫助的,可以的話,還可以學習下linux的源代碼,當然如果你直接閱讀2.6的代碼,我想你會很痛苦的,可以先看看linux 代碼早期的版本,比如0.12 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
至于上面說的知識如何學習呢?每個人都應該去找自己最好的方法,所謂的最好的方法就是最適合自己的方法。很多人看不進書,那就去看看視頻吧。視頻也應該要選擇,不是隨便看看,應該要有所選擇,有所挑選。我也是這樣一路走過來的,不過我這人比較懶,我看不進書,一看書我就想睡覺,所以這幾年我都是看視頻過來的,現(xiàn)在也算學有所成,但也不敢說是高手吧。
我在網(wǎng)上看到,有人把自己學習嵌入式的視頻總結(jié)出來,嵌入式系列實踐和視頻教程,大家可以看看網(wǎng)址我仔細看了覺得很不錯,我本來也想整理下,可是奈何我自己的電腦硬盤空間才40G,沒有辦法,時間也是不夠,心有余而力不足,我不是在幫他做廣告,雖然要花錢,我覺得算不錯,至少自己不用去整理和花大量的時間去找資源,當然如果網(wǎng)上有的下,你網(wǎng)速和硬盤都夠的話,我建議大家自己網(wǎng)上下也好。想想我自己該開始學的時候,那時視頻資源少之又少,我買書和買視頻至少花了幾千塊,但是我覺得那很值,至少我現(xiàn)在賺回來了很多知識。
最后,希望這篇文章對熱愛嵌入式,想致力于嵌入式開發(fā)的朋友有所幫助。送給大家一句簡單而又樸素的話,堅持就是勝利,貴在堅持,也可以看看如何堅持嵌入式學習!
嵌入式學習心得體會 21
一、嵌入式系統(tǒng)的概念
著重理解“嵌入”的概念
主要從三個方面上來理解。
1、從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,比如早期基于X86體系結(jié)構(gòu)下的計算機,CPU只是有運算器和累加器的功能,一切芯片要造外部橋路來擴展實現(xiàn),象串口之類的都是靠外部的16C550/2的串口控制器芯片實現(xiàn),而目前的這種串口控制器芯片早已集成到CPU內(nèi)部,還有PC機有顯卡,而多數(shù)嵌入式處理器都帶有LCD控制器,但其種意義上就相當于顯卡。比較高端的ARM類Intel Xscale架構(gòu)下的IXP網(wǎng)絡處理器CPU內(nèi)部集成PCI控制器(可配成支持4個PCI從設備或配成自身為CPI從設備);還集成3個NPE網(wǎng)絡處理器引擎,其中兩個對應于兩個MAC地址,可用于網(wǎng)關交換用,而另外一個NPE網(wǎng)絡處理器引擎支持DSL,只要外面再加個PHY芯片即可以實現(xiàn)DSL上網(wǎng)功能。IXP系列最高主頻可以達到1.8G,支持2G內(nèi)存,1G×10或10G×1的以太網(wǎng)口或Febre channel的光通道。IXP系列應該是目標基于ARM體系統(tǒng)結(jié)構(gòu)下由intel進行整合后成Xscale內(nèi)核的最高的處理器了。
2、從軟件上前,就是在定制操作系統(tǒng)內(nèi)核里將應用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時所選擇的應用程序組件就是完成了軟件的“嵌入”,比如WinCE在內(nèi)核定制時,會有相應選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇了,在CE啟動后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。
3、把軟件內(nèi)核或應用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺中的ROM中就實現(xiàn)了一個真正的“嵌入”。
以上的定義是我在6、7年前給嵌入式系統(tǒng)下自話側(cè)重于理解型的定義,書上的定義也有很多,但在這個領域范圍內(nèi),誰都不敢說自己的定義是十分確切的,包括那些專家學者們,歷為畢竟嵌入式系統(tǒng)是計算機范疇下的一門綜合性學科
二、嵌入式系統(tǒng)的分層與專業(yè)的分類。
嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動層、操作系統(tǒng)層和應用層。
1、硬件層,是整個嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對容易,硬件層也是驅(qū)動層的基礎,一個優(yōu)秀的驅(qū)動工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設計的,同時還要對操作系統(tǒng)內(nèi)核及其調(diào)度性相當?shù)氖煜さ摹5布脚_是基礎,增值還要靠軟件。
硬件層比較適合于,電子、通信、自動化、機電一體、信息工程類專業(yè)的人來搞,需要掌握的專業(yè)基礎知識有,單片機原理及接口技術、微機原理及接口技術、C語言。
2、驅(qū)動層,這部分比較難,驅(qū)動工程師不僅要能看懂電路圖還要能對操作系統(tǒng)內(nèi)核十分的精通,以便其所寫的驅(qū)動程序在系統(tǒng)調(diào)用時,不會獨占操作系統(tǒng)時間片,而導至其它任務不能動行,不懂操作系統(tǒng)內(nèi)核架構(gòu)和實時調(diào)度性,沒有良好的驅(qū)動編寫風格,按大多數(shù)書上所說添加的驅(qū)動的方式,很多人都能做到,但可能連個初級的驅(qū)動工程師的水平都達不到,這樣所寫的驅(qū)動在應用調(diào)用時就如同windows下我們打開一個程序運行后,再打開一個程序時,要不就是中斷以前的程序,要不就是等上一會才能運行后來打開的`程序。想做個好的驅(qū)動人員沒有三、四年功底,操作系統(tǒng)內(nèi)核不研究上幾編,不是太容易成功的,但其工資在嵌入式系統(tǒng)四層中可是最高的。
驅(qū)動層比較適合于電子、通信、自動化、機電一體、信息工程類專業(yè)尤其是計算機偏體系結(jié)構(gòu)類專業(yè)的人來搞,除硬件層所具備的基礎學科外,還要對數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。
3、操作系統(tǒng)層,對于操作系統(tǒng)層目前可能只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū)動工程師來完成。操作系統(tǒng)是負責系統(tǒng)任務的調(diào)試、磁盤和文件的管理,而嵌入式系統(tǒng)的實時性十分重要。據(jù)說,XP操作系統(tǒng)是微軟投入300人用兩年時間才搞定的,總時工時是600人年,中科院軟件所自己的女媧Hopen操作系統(tǒng)估計也得花遇幾百人年才能搞定。因此這部分工作相對來講沒有太大意義。
4、應用層,相對來講較為容易的,如果會在windows下如何進行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應的變化而已。如果涉及Java方面的編程也是如此的。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫、基于嵌入式系統(tǒng)的網(wǎng)絡編程和基于某此應用層面的協(xié)議應用開發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復雜,并且有難度了。
三、目標與定位。
先有目標,再去定位。
學ARM,從硬件上講,一方面就是學習接口電路設計,另一方面就是學習匯編和C語言的板級編程。如果從軟件上講,就是要學習基于ARM處理器的操作系統(tǒng)層面的驅(qū)動、移植了。這些對于初學都來說必須明確,要么從硬件著手開始學,要么從操作系統(tǒng)的熟悉到應用開始學,但不管學什么,只要不是純的操作系統(tǒng)級以上基于API的應用層的編程,硬件的寄存器類的東西還是要能看懂的,基于板級的匯編和C編程還是要會的。因此針對于嵌入式系統(tǒng)的硬件層和驅(qū)動程的人,ARM的接口電路設計、ARM的C語言和匯編語言編程及調(diào)試開發(fā)環(huán)境還是需要掌握的。
因此對于初學者必然要把握住方向,自己的目標是什么,自己要在那一層面上走。然后再著手學習較好,與ARM相關的嵌入式系統(tǒng)的較為實際的兩個層面硬件層和驅(qū)動層,不管學好了那一層都會很有前途的。
如果想從嵌入式系統(tǒng)的應用層面的走的話,可能與ARM及其它體系相去較遠,要著重研究基嵌入式操作系統(tǒng)的環(huán)境應用與相應開發(fā)工具鏈,比如WinCe操作系統(tǒng)下的EVC應用開發(fā)(與windows下的VC相類似),如果想再有突破就往某些音視頻類的協(xié)議上靠,比如VOIP領域的基于SIP或H。323協(xié)議的應用層開發(fā),或是基于嵌入式網(wǎng)絡數(shù)據(jù)庫的開發(fā)等等。
對于初學者來講,要量力而行,不要認為驅(qū)動層工資高就把它當成方向了,要結(jié)合自身特點,嵌入式系統(tǒng)四個層面上那個層面上來講都是有高人存在,當然高人也對應的高工資,我是做硬件層的,以前每月工資中個人所得稅要被扣上近3千大元,當然我一方面充當工程師的角色,一方面充當主管及人物的角色,兩個職位我一個人干,但上班時間就那些。硬件這方面上可能與我PK的人很少了,才讓我拿到那么多的工資。
四、開發(fā)系統(tǒng)選擇。
很多ARM初學者都希望有一套自己能用的系統(tǒng),但他們住住會產(chǎn)生一種錯誤認識就是認為處理器版本越高、性能越高越好,就象很多人認為ARM9與ARM7好,我想對于初學者在此方面以此入門還應該理智,開發(fā)系統(tǒng)的選擇最終要看自己往嵌入式系統(tǒng)的那個方向上走,是做驅(qū)動開發(fā)還是應用,還是做嵌入式系統(tǒng)硬件層設計與板級測試。如果想從操作系統(tǒng)層面或應用層面上走,不管是驅(qū)動還是應用,那當然處理器性能越高越好了,但這個東西自學,有十分大的困難,不是幾個月或半年或是一年二年能搞定的事。
在某種意義上請,ARM7與9的差別就是在某些功能指令集上豐富了些,主頻提高一些而已,就比如286和386。對于用戶來講可能覺查不到什么,只能是感覺速度有些快而已。
ARM7比較適合于那些想從硬件層面上走的人,因為ARM7系列處理器內(nèi)部帶MMU的很少,而且比較好控制,就比如S3C44B0來講,可以很容易將Cache關了,而且內(nèi)部接口寄存器很容易看明白,各種接口對于用硬件程序控制或AXD單步命令行指令都可以控制起來,基于51單片機的思想很容易能把他搞懂,就當成個32位的單片機,從而消除很多51工程師想轉(zhuǎn)為嵌入式系統(tǒng)硬件ARM開發(fā)工程師的困惑,從而不會被業(yè)界某此不是真正懂嵌入式爛公司帶到操作系統(tǒng)層面上去,讓他們望而失畏,讓業(yè)界更加缺少這方面的人才。
而嵌入式系統(tǒng)不管硬件設計還是軟件驅(qū)動方面都是十分注重接口這部分的,選擇平臺還要考察一個處理器的外部資源,你接觸外部資源越多,越熟悉他們那你以后就業(yè)成功的機率就越高,這就是招聘時所說的有無“相關技能”,因為一個人不可能在短短幾年內(nèi)把所有的處理器都接觸一遍,而招聘單位所用的處理器就可能是我們完全沒有見過的,就拿臺灣數(shù)十家小公司(市價幾千萬)的公司生產(chǎn)的ARM類處理器,也很好用,但這些東西通用性太差,用這些處理器的公司就只能招有相關工作經(jīng)驗的人了,那什么是相關工作經(jīng)驗,在硬件上講的是外圍接口設計,在軟件上講是操作系統(tǒng)方面相關接口驅(qū)動及應用開發(fā)經(jīng)驗。我從業(yè)近十年,20xx年ARM出現(xiàn),我一天始做ARM7,然后直接跑到了Xscale(這個板本在ARM10—11之間),一做就是五年,招人面試都不下數(shù)百人,在這些方面還是深有體會的。
我個人認為三星的S3C44b0對初學者來說比較合適,為什么這么說哪?因為接口資源比較豐富,技術成熟,資料較多,應該十分適合于初學者,有問題可能很容易找人幫且解決,因為大多數(shù)人都很熟悉,就如同51類的單片機,有N多位專家級的人物可以給你幫忙,相關問題得以很快解答,所然業(yè)界認為這款ARM都做用得爛了,但對于初學者來,就卻是件好事。
因此開發(fā)系統(tǒng)的選擇,要看自己的未來從來目標方向、要看開發(fā)板接口資源、還要看業(yè)界的通用性。
五、如何看待培訓。
首先說說我自己,我目前從業(yè)近十年,與國內(nèi)嵌入式系統(tǒng)行業(yè)共同起步,一直站在嵌入式系統(tǒng)行業(yè)前沿,設計過多款高端嵌入式系統(tǒng)平臺產(chǎn)品并為眾多公司提供過解決方案,離職前為從事VOIP的美資公司設計IP—PBX,歷任項目經(jīng)理、項目主管、技術總監(jiān)、部門經(jīng)理,積累眾多人脈,并集多年經(jīng)驗所得,考慮到學生就業(yè)與公司招人的不相匹配,公司想招人招不到,而學生和剛畢業(yè)的工程師想找份工作也不太容易,于此力創(chuàng)知天行科技有限公司,開展嵌入式系統(tǒng)教育培訓。
因一線的科研人員和一線的教師不相接觸,導至國內(nèi)嵌入式人才缺乏,國外高校的技術超前于業(yè)界公司,而國內(nèi)情況是業(yè)界公司方面的嵌入式系統(tǒng)技術要遠遠領先于高校。為架構(gòu)業(yè)界與高校溝通的橋梁,把先進技能帶給高校學子,為學生在就業(yè)競爭中打造一張王牌,并為業(yè)界工程師快速提升實現(xiàn)自我創(chuàng)造機遇,我就這樣辭去了外企年薪20多萬的職位,做嵌入式系統(tǒng)方面的培訓了。
對于培訓來講,是花錢來買時間,很多工程師都喜歡自己學,認為培訓不值,這也是有可能的,純?yōu)橘嶅X的培訓當然不會太有價值,但對于實力型的培訓他們可能就虧大了,有這樣一筆帳不知他們算過沒有,如果一個一周的培訓,能帶給他們自學兩年后才能掌握的知識,在培訓完后他們用三個月到半年時間消化培訓內(nèi)容,這樣他會省約至少一年半的時間來學其它的或重新站在另一個高度上工作,那么他將最遲一年后會拿到他兩年后水平所對應的工資,就是在工資與水平對應的關系上比同批人縮短一年,每月按最少1千計,再減去培訓費用至少多1.0萬,同時也省了一年時間,不管是休閑也好,再繼續(xù)提高也好,總之是跑到了隊伍的前面了。
另一層面上講,對于新人的培訓相當于他們?yōu)樽约禾崆百I了份失業(yè)保險,有師傅會帶領他們?nèi)氲,我今年暑假時班里最年輕的一個學生是大二的,今年才上大三,這學期才剛學單片機,但現(xiàn)在ARM方面的編程工作已經(jīng)搞得有聲有色了,再過一年多畢業(yè),他還會失業(yè)嗎?再者通過培訓,你可以知道很多業(yè)界不為常人所知的事,同時也為自己找了個師傅,就比如說,兩個工程師分別用S3C2410和PXA255來做手持設備,同樣兩人都工作四年,再出去找工作,兩人工資可能最多可相差一倍,為什么?這就是業(yè)界不為常人所知的規(guī)則,2410屬于民品,被業(yè)界用爛了,做產(chǎn)品時成本特敏感,當然也對人才成本敏感了,PXA255是intel的東西,一個255 CPU能買三個2410,一直被業(yè)界定義為貴族產(chǎn)品,用的公司都是大公司或為軍方服務的公司,不會在乎成本,只要把東西做好,一切都好說,但這方面做的人也少啊,因為開發(fā)系統(tǒng)貴啊。
對于說為自已找了個好師傅,我想是這樣的,因為同級工程師間存在著某此潛在的競爭關系,有很多人不愿意把自己知道的東西教給別人,這意味著他將要失業(yè),就是所說的教會徒弟,餓死師傅,但對于我們這些人就不存在這樣的關系了,我是在嵌入式系統(tǒng)平臺設計上走到了一定程序,目前在國內(nèi)這塊的技術上已經(jīng)是自己很難再突破自己,因此很多東西我對大家都是OPEN的,就比如說下面那部分關于接口設計中所提到的時序接口東西,我要是不講,卻使是高級硬件工程師我想也幾乎只有10%的人能知道吧。
六、成為高級嵌入式系統(tǒng)硬件工程師要具備的技能。
首先我聲明,我是基于嵌入式系統(tǒng)平臺級設計的,硬件這個方向我相對來講比較有發(fā)言權(quán),如果是其它方面所要具備的基本技能還要和我們培訓中心其它專業(yè)級講師溝通。他們的方面上我只能說是知道些,但不是太多,初級的問題也可以問我。
對于硬件來講有幾個方向,就單純信號來分為數(shù)字和模擬,模擬比較難搞,一般需要很長的經(jīng)驗積累,單單一個阻值或容值的精度不夠就可能使信號偏差很大。因此年輕人搞的較少,隨著技術的發(fā)展,出現(xiàn)了模擬電路數(shù)字化,比如手機的Modem射頻模塊,都采用成熟的套片,而當年國際上只有兩家公司有此技術,自我感覺模擬功能不太強的人,不太適合搞這個,如果真能搞定到手機的射頻模塊,只要達到一般程度可能月薪都在15K以上。
另一類就是數(shù)字部分了,在大方向上又可分為51/ARM的單片機類,DSP類,F(xiàn)PGA類,國內(nèi)FPGA的工程師大多是在IC設計公司從事IP核的前端驗證,這部分不搞到門級,前途不太明朗,即使做個IC前端驗證工程師,也要搞上幾年才能勝任。DSP硬件接口比較定型,如果不向驅(qū)動或是算法上靠攏,前途也不會太大。而ARM單片機類的內(nèi)容就較多,業(yè)界產(chǎn)品占用量大,應用人群廣,因此就業(yè)空間極大,而硬件設計最體現(xiàn)水平和水準的就是接口設計這塊,這是各個高級硬件工程師相互PK,判定水平高低的依據(jù)。而接口設計這塊最關鍵的是看時序,而不是簡單的連接,比如PXA255處理器I2C要求速度在100Kbps,如果把一個I2C外圍器件,最高還達不到100kbps的與它相接,必然要導致設計的失敗。這樣的情況有很多,比如51單片機可以在總線接LCD,但為什么這種LCD就不能掛在ARM的總線上,還有ARM7總線上可以外接個Winband的SD卡控制器,但為什么這種控制器接不到ARM9或是Xscale處理器上,這些都是問題。因此接口并不是一種簡單的連接,要看時序,要看參數(shù)。一個優(yōu)秀的硬件工程師應該能夠在沒有參考方案的前提下設計出一個在成本和性能上更加優(yōu)秀的產(chǎn)品,靠現(xiàn)有的方案,也要進行適當?shù)目尚行圆眉簦皇呛鷣y的來,我遇到一個工程師把方案中的5V變1。8V的DC芯片,直接更換成LDO,有時就會把CPU燒上幾個。前幾天還有人希望我?guī)兔Π阉麄円郧盎赑XA255平臺的手持GPS設備做下程序優(yōu)化,我問了一下情況,地圖是存在SD卡中的,而SD卡與PXA255的MMC控制器間采用的SPI接口,因此導致地圖讀取速度十分的慢,這種情況是設計中嚴重的缺陷,而不是程序的問題,因此我提了幾條建議,讓他們更新試下再說。因此想成為一個優(yōu)秀的工程師,需要對系統(tǒng)整體性的把握和對已有電路的理解,換句話說,給你一套電路圖你終究能看明白多少,看不明白80%以上的話,說明你離優(yōu)秀的工程師還差得遠哪。其次是電路的調(diào)試能力和審圖能力,但最最基本的能力還是原理圖設計PCB繪制,邏輯設計這塊。這是指的硬件設計工程師,從上面的硬件設計工程師中還可以分出ECAD工程師,就是專業(yè)的畫PCB板的工程師,和EMC設計工程師,幫人家解決EMC的問題。硬件工程師再往上就是板級測試工程師,就是C語功底很好的硬件工程師,在電路板調(diào)試過程中能通過自已編寫的測試程序?qū)τ布δ苓M行驗證。然后再交給基于操作系統(tǒng)級的驅(qū)動開發(fā)人員。
總之,硬件的內(nèi)容很多很雜,硬件那方面練成了都會成為一個高手,我時常會給人家做下方案評估,很多高級硬件工程師設計的東西,經(jīng)常被我一句話否定,因此工程師做到我這種地步,也會得罪些人,但硬件的確會有很多不為人知的東西,讓很多高級硬件工程師也摸不到頭腦。
那么高級硬件件工程師技術技能都要具備那些東西哪,首先要掌握EDA設計的輔助工具類如ProtelORCADPowperPCBMaplux2ISE、VDHL語言,要能用到這些工具畫圖畫板做邏輯設計,再有就是接口設計審圖能力,再者就是調(diào)試能力,如果能走到總體方案設計這塊,那就基本上快成為資深工程師了。
嵌入式學習心得體會 22
現(xiàn)在的嵌入式工作是越來越盛行,而這方面的人員卻是越來越少,所以學習嵌入式是解決找工作難的一個比較有效的途徑。因為我開始踏上學習嵌入式的道路
。聽別人說嵌入式ARM相比于其他的嵌入式FPGA,DSP等都要難點,而且學習的內(nèi)容量也是比較多。因此在學習嵌入式ARM的初級階段是隨處碰壁,每天都在遭受打擊,例如在移植bootloader時,雖然按照網(wǎng)上的一些方法移植成功了,但只知道復制和粘貼要修改的代碼,卻不知道為何要這么做。我覺得這樣的學習態(tài)度是不對的,學習不是只求結(jié)果,而是要注重解決問題的過程!為了學習嵌入式Linux我也在網(wǎng)上查閱了很多的書籍,還下載了很多的視頻,但都不是很讓人如意。它們大多是講的很淺顯,都是泛泛之談,沒有講到最核心的東西。到了最后是浪費了我們學習者的時間和精力。
之后看見師兄有一本韋東山老師編輯的《嵌入式Linux應用開發(fā)完全手冊》,我就借了幾天看了看,發(fā)現(xiàn)韋老師對嵌入式Linux的極其深度的分析,讓我一下子找到了能帶我入門的一本書!并且還有配套的視頻教學更是講解地非常到位,將教材和視頻相互配合的`學習,更加大大的提供了學習效率,尤其是視頻上講解的內(nèi)容,都是韋東山老師自己親自授教,完全沒有按照教材上的內(nèi)容一一讀出來,而是根據(jù)內(nèi)核代碼分析的教我如何編寫自己的代碼,尤其是在Linux內(nèi)核中占比例最重的一部分—內(nèi)核驅(qū)動時,更是讓我知道用戶是如何通過應用程序來訪問底層硬件的,解決了我長久以來都無法攻克的難題!!例如在編寫LCD驅(qū)動時,我對于書上LCD硬件工作原理不是理解的很透徹,通過觀看韋東山老師的第二期視頻中的“LCD驅(qū)動程序”,老師就像是站在我面前,在屏幕上用電子筆細細給我講解,寫出更加形象的LCD的硬件驅(qū)動,重要的是在整個視頻中老師都沒有按著教材念,而是一個教學經(jīng)驗豐富的老師在給同學們授課一樣。
編寫代碼也是親自編寫,沒有完全復制別人的代碼,編寫的同時不斷的說明每條語句的作用、編程思想和設計程序的經(jīng)驗,還有閱讀大量代碼的技巧!在視頻中老師教會了許多其他書本中沒有提及到的重要知識。
【嵌入式學習心得體會】相關文章:
嵌入式學習心得體會01-11
嵌入式學習心得體會10篇01-11
嵌入式學習心得體會7篇10-22
嵌入式學習心得體會(通用10篇)01-11
嵌入式學習心得體會(集合10篇)01-11
嵌入式學習心得體會(通用10篇)04-28
嵌入式學習心得體會(集錦7篇)12-13
嵌入式學習心得體會匯編7篇12-13
嵌入式培訓心得體會09-08