單片機(jī)編程怎么入門?怎么快速入門單片機(jī)?單片機(jī)快速入門
肯定是先學(xué)C51基礎(chǔ)啊,哈工大的一本書不錯(cuò)的,新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì)。里面肯定是要教你匯編的。等到最后上工程的時(shí)候肯定是要用keil,C語言編程的,所有人走的都是這條路。勸你別一上手就學(xué)C編程,因?yàn)閰R編語言會(huì)更讓你了解單片機(jī)寄存器等是怎么工作的,理解更透徹。
作為一個(gè)初學(xué)者,如何單片機(jī)入門?
知識(shí)上,其實(shí)不需要多少東西,會(huì)簡單的C語言,知道51單片機(jī)的基本結(jié)構(gòu)就可以了。一般的大學(xué)畢業(yè)生都可以了,自學(xué)過這2門課程的高中生也夠條件。設(shè)備上,一般是建議購買一個(gè)仿真器,例如,目前的“雙功能下載線”就具有良好的穩(wěn)定性和較快的下載速度,上位機(jī)可擴(kuò)展,可以下載更多的單片機(jī)及嵌入式芯片。通過實(shí)驗(yàn),這樣才可以進(jìn)行實(shí)際的,全面的學(xué)習(xí)。 在錯(cuò)誤的道路上日夜兼程,最終也無法成功。因此,方法和思路絕對(duì)是第一重要的。一些學(xué)技術(shù)的同學(xué),往往看到這類章節(jié)會(huì)直接跳過去,因?yàn)榇蠖鄶?shù)類似章節(jié)都是廢話連篇。但是,今天在這里我可以很負(fù)責(zé)任的告訴你,本章節(jié)講到的學(xué)習(xí)單片機(jī)的方法,都是我們學(xué)習(xí)單片機(jī)的無數(shù)經(jīng)驗(yàn)和教訓(xùn)總結(jié)出來的瑰寶。因?yàn)槲覀兣G斬棘,開辟了道路,所以可以告訴你路在何方;也因?yàn)槲覀兠^燒紅的鐵塊,燙了手,所以可以把教訓(xùn)告訴你。希望各位都能站在我們的肩膀上,成為巨人。
學(xué)什么單片機(jī)
單片機(jī)的型號(hào)那么多,如何選取一款合適的進(jìn)行學(xué)習(xí)?如果身邊有比較便利的學(xué)習(xí)單片機(jī)的條件,有什么條件就學(xué)習(xí)什么型號(hào)。比如,你所在的公司剛好用到某個(gè)型號(hào)單片機(jī),那么就方便多了。開發(fā)板不用購買,直接用公司現(xiàn)成的板子,指導(dǎo)老師到處是,公司的工程師,只要你耐心虛心的不恥上問,相信他們都會(huì)幫你解答問題。如果你跟著學(xué)習(xí)的導(dǎo)師,正在使用某個(gè)型號(hào)開發(fā)產(chǎn)品,那么同樣的道理,你也會(huì)有得天獨(dú)厚的優(yōu)勢(shì),直接跟著學(xué)就行了。其實(shí)單片機(jī)型號(hào)雖然多,但是用法大同小異,學(xué)會(huì)一種,再上手其他的就很快了。
如果你這些條件都沒有,那就跟著我學(xué)吧,我建議你學(xué)習(xí)51單片機(jī)。為什么呢?現(xiàn)在單片機(jī)種類和型號(hào)非常多,每個(gè)型號(hào)都有一定的市場份額,但是哪個(gè)型號(hào)也沒有早期51單片機(jī)那般的風(fēng)光和火爆,雖然現(xiàn)在地位不是那么高了,但是因?yàn)?1單片機(jī)資料非常多,大家學(xué)起來有很多可以參考的東西,所以上手肯定比其他型號(hào)的要快一些。如果你學(xué)習(xí)稍微偏門的單片機(jī),可能一個(gè)簡單的軟件問題就要折騰你好長時(shí)間,不僅僅浪費(fèi)了你的學(xué)習(xí)時(shí)間,更重要的是打擊你學(xué)習(xí)單片機(jī)的信心。
那是不是我們每個(gè)單片機(jī)都要學(xué)習(xí)一遍呢?答案當(dāng)然是否定的。大家跟著我來學(xué)習(xí)51單片機(jī),必須得跟著學(xué)會(huì)舉一反三和融會(huì)貫通的能力。單片機(jī)型號(hào)那么多,挨個(gè)學(xué)下來估計(jì)頭發(fā)白了也學(xué)不完,所以大家跟著我學(xué)51單片機(jī),不能僅僅當(dāng)做51來學(xué)習(xí),更重要的是要當(dāng)做單片機(jī)來學(xué),要通過我們的這個(gè)教程,把所有的單片機(jī)的內(nèi)部資源都搞清楚弄明白,每個(gè)內(nèi)部模塊的用法理解透徹,這樣當(dāng)你遇到一個(gè)從沒有用過的單片機(jī),也就知道如何下手去應(yīng)用開發(fā)了。
如何學(xué)習(xí)單片機(jī)
前邊提到過,單片機(jī)是一門實(shí)用技術(shù),我們學(xué)習(xí)它已經(jīng)不是為了應(yīng)付考試了,我給大家總結(jié)了單片機(jī)的學(xué)習(xí)方法是:一個(gè)要領(lǐng),四個(gè)步驟。
學(xué)習(xí)單片機(jī)的要領(lǐng)就是:在實(shí)踐中成長,In Doing We Learn!
學(xué)射箭,你得去拉弓,整天只擺造型肯定不行;學(xué)游泳,你得下水撲騰,整天在岸上做模仿活動(dòng)不行;學(xué)開車,你得坐車上去開,坐沙發(fā)上肯定學(xué)不會(huì)。同樣的道理,學(xué)單片機(jī),整天盯著單片機(jī)看肯定不行,你也必須得親自動(dòng)手去練。
沒有不下水就學(xué)會(huì)游泳成為游泳健將的,沒有不到車上練就能成為賽車手的,這點(diǎn)大家都清楚,可為什么總是那么多人學(xué)單片機(jī)的時(shí)候,總是要抱著一本書看呢。第一,我們小學(xué)中學(xué)甚至大學(xué)的學(xué)習(xí)模式都是如此,學(xué)什么東西主要都是靠看書;第二,很多人想實(shí)踐不太清楚該怎么去實(shí)踐。
不是不讓大家看書,而是看了一點(diǎn)以后,要馬上去實(shí)踐驗(yàn)證,然后再回頭結(jié)合實(shí)踐的結(jié)果,理解書上的內(nèi)容。從這個(gè)地方,大家要得出一個(gè)結(jié)論來,就是在學(xué)實(shí)際技術(shù)過程中,和應(yīng)付考試不同,書上的內(nèi)容不需要你去硬性記憶,書是用來查的,不是用來記憶的。遇到問題,你學(xué)會(huì)翻書,知道該去哪里找,找到相關(guān)知識(shí)點(diǎn),分析明白,領(lǐng)悟透徹即可,包括咱這本書也是一樣,大家先看完一節(jié)課,然后馬上就把這節(jié)課相應(yīng)的實(shí)驗(yàn)做了,做實(shí)驗(yàn)的過程中,哪里有不懂的問題,隨時(shí)翻閱書籍查找,再實(shí)驗(yàn),再查找,反反復(fù)復(fù)的過程就可以把本節(jié)課的內(nèi)容掌握。
下面,就是我總結(jié)的跟著我學(xué)習(xí)單片機(jī)的四個(gè)步驟。
第一步,鸚鵡學(xué)舌。
剛出生的孩子叫“爸爸”“媽媽”的時(shí)候,他甚至不知道“爸爸”“媽媽”是什么意思,更不會(huì)理解這些聲音是什么意思,但是我們帶著孩子見到他爸爸就讓他喊“爸爸”,見到媽媽就讓他喊“媽媽”,見到爺爺就喊“爺爺”……慢慢的你會(huì)發(fā)現(xiàn),次數(shù)多了,孩子就知道誰是爸爸,誰是媽媽,誰是爺爺,誰是奶奶了。
大家剛開始接觸單片機(jī)的時(shí)候,也屬于單片機(jī)行業(yè)的新生兒。單片機(jī)的樣子,單片機(jī)外圍的各種器件,單片機(jī)內(nèi)部的各種結(jié)構(gòu),單片機(jī)用C語言的編程方法,初學(xué)者可能都沒有見過。沒關(guān)系,有些概念和方法你不理解也沒有關(guān)系,甚至不需要你理解,你只需要跟著我去鸚鵡學(xué)舌式學(xué)習(xí),第一遍學(xué)習(xí)某一節(jié)課的內(nèi)容時(shí),對(duì)于程序,大家就可以完全跟著抄下來,甚至抄兩三遍,過一段你會(huì)發(fā)現(xiàn),好多東西你也認(rèn)識(shí)了,好多概念你慢慢的也理解清楚了,你也能大概看懂別人的小程序了,切忌覺得自己看會(huì)了,而簡單復(fù)制粘貼。
第二步,照葫蘆畫瓢。
很多同學(xué)學(xué)習(xí)的時(shí)候喜歡看,看我做的視頻,看我寫的程序,甚至看別人的程序,都能看懂,覺得自己就會(huì)了,等到自己寫程序的時(shí)候,感覺就是老鼠啃天,不知道從哪里下手了,這是初學(xué)者很容易犯的“眼高手低”這樣一個(gè)毛病,所以第二步的內(nèi)容就非常重要了。
我的要求是,每一位同學(xué),在學(xué)完了當(dāng)前課的內(nèi)容,把第一步順利完成以后,然后關(guān)掉視頻教程,關(guān)掉源代碼,自己通過看電路圖和查找非源代碼的其他任何資料,把當(dāng)節(jié)課我寫的程序代碼重新默寫出來,邊寫邊多少理解那么一點(diǎn)點(diǎn),不是純粹的背誦,應(yīng)該說是背誦加理解的結(jié)合體。甚至學(xué)過幾節(jié)課以后,可以回頭把前邊曾經(jīng)這樣實(shí)現(xiàn)過的課程,再按照這種方法做一遍。千萬不要認(rèn)為這一步?jīng)]必要,這一步是你能否學(xué)會(huì)單片機(jī)的一個(gè)關(guān)鍵步驟,在學(xué)完本教程之前,每一課內(nèi)容都要這樣做,如果每一個(gè)程序你都能夠完美的完成,那么可以說,當(dāng)節(jié)課的內(nèi)容,百分之七八十你已經(jīng)掌握了。
第三步,他山之石可以攻玉。
單片機(jī)技術(shù)的最大特點(diǎn)就是可以通過修改程序來實(shí)現(xiàn)不同的功能,因此舉一反三的能力就必不可少了。每一節(jié)課的例程后邊,我一般都會(huì)布置一兩個(gè)作業(yè),大家盡量去獨(dú)立完成這個(gè)作業(yè)。在完成這個(gè)作業(yè)的過程中,都可以參考我的程序思路,在這個(gè)基礎(chǔ)上通過動(dòng)腦思考去構(gòu)建你自己的程序框架,最終將程序完成。
在我們工程師實(shí)際產(chǎn)品研發(fā)的時(shí)候,很多種情況下也是如此。比如一個(gè)產(chǎn)品,我們?nèi)绻麖?開始著手的話,可能會(huì)走很多彎路,所以我們通常的做法是尋找購買同類幾款產(chǎn)品,然后先研究他們的各自優(yōu)缺點(diǎn),學(xué)習(xí)他們的長處,然后在同類產(chǎn)品基礎(chǔ)上在來設(shè)計(jì)我們的產(chǎn)品,這就是他山之石可以攻玉。
初學(xué)者在學(xué)習(xí)的時(shí)候,往往遇到的問題很多,你應(yīng)該想到,你遇到的問題,可能前輩們?cè)缇陀龅竭^了,所以遇到問題后,不要慌張,首先利用谷歌或者百度這些搜索引擎搜索一下,要做什么新東西,先去網(wǎng)上找找相關(guān)資料了解一下,不管是編程還是硬件設(shè)計(jì),多參考參考別人的東西,只要把別人的東西分析明白了,自己用起來,就可以成為自己的知識(shí)了。
第四步,理論實(shí)踐結(jié)合,溫故知新。
當(dāng)大家把所有的課程都按照前邊三步完成后,這個(gè)時(shí)候不妨把書打開,看看書,通過自己實(shí)戰(zhàn)的經(jīng)驗(yàn),再看書的時(shí)候,很多知識(shí)點(diǎn)會(huì)有一種恍然大悟的感覺。甚至視頻教程,書籍,都可以反復(fù)看兩遍,可能有的知識(shí)點(diǎn)當(dāng)時(shí)學(xué)習(xí)的時(shí)候不明白,過了一段時(shí)間,回過頭來再學(xué)習(xí)的時(shí)候,一下就明白了。
單片機(jī)學(xué)習(xí)的準(zhǔn)備工作
第一、足夠的信心、恒心和耐心。
有同學(xué)問過我,單片機(jī)這門技術(shù)難不難。我覺得這個(gè)問題得從兩個(gè)方面去分析。
首先,我們從戰(zhàn)略上藐視它。那么多同學(xué)跟著老師學(xué)一段時(shí)間就可以做出來小車,超聲波測(cè)距,甚至做出來機(jī)器人,似乎很拽的樣子。那他們又不是三頭六臂,我們也沒有什么做不了的道理。實(shí)際上要說技術(shù),其實(shí)就是一層窗戶紙,表面看不透徹,感覺特別神秘,實(shí)際只要你稍微一努力就可以捅破它,夸張點(diǎn)說,單片機(jī)的邏輯上的關(guān)系,只有小學(xué)的水平,簡單的很。正所謂會(huì)者不難,難者不會(huì),大家不懂這個(gè)東西,看起來感覺很神秘。所以大家只要認(rèn)真踏實(shí)堅(jiān)持學(xué)下去,肯定能學(xué)好這么技術(shù)。
其次呢,我們從戰(zhàn)術(shù)上要重視它。你說單片機(jī)這東西,如果十天八天就學(xué)會(huì)了,那么這個(gè)技術(shù)還能值錢嗎?我可以這樣去表達(dá),如果一個(gè)技術(shù)很簡單就被學(xué)會(huì),那么很多人都會(huì)的這個(gè)技術(shù),肯定也沒什么前途和錢途。那究竟多久能學(xué)會(huì)呢?我給大家制定的學(xué)習(xí)方案,根據(jù)每個(gè)人的基礎(chǔ)不同,平均每天要拿出2個(gè)小時(shí)以上的學(xué)習(xí)時(shí)間,大概一到三個(gè)月可以入門。入門的概念是給你一個(gè)單片機(jī)開發(fā)任務(wù),你起碼知道努力的方向和解決問題的方法了。技術(shù)這東西,關(guān)鍵是堅(jiān)持做下去,有恒心和耐心,如果長時(shí)間不用的話,肯定還會(huì)生疏。所以要想成為單片機(jī)高手,起碼需要一年左右的單片機(jī)開發(fā)的歷練才行。成為單片機(jī)高手的概念就是你自己可以從頭根據(jù)自己的想法,去設(shè)計(jì)一個(gè)電路,根據(jù)需要的功能編寫代碼,做一個(gè)產(chǎn)品出來。
第二、教材和教程。
要學(xué)習(xí)單片機(jī)這門技術(shù),良好的教材和教程必不可少。單片機(jī)方面,大家可以直接學(xué)習(xí)我們這本《51單片機(jī)C語言開發(fā)》,我們也有精心制作了《單片機(jī)高手之路》視頻教程,并且后期會(huì)進(jìn)行不定期更新。本著開源、共享的理念,我們的視頻教程和電子教程都是免費(fèi)開放的,大家可以到我們的網(wǎng)站www.diangon.com找到下載鏈接,如果有條件,也可以購買我們一般紙質(zhì)教材,紙質(zhì)書籍查閱起來比視頻教程和電子教程更方便。另外,因?yàn)槲覀冏鰡纹瑱C(jī)開發(fā)使用的是C語言,所以最好能有一本純C語言教材,我們學(xué)到一些C語言語法性質(zhì)的問題的時(shí)候,大家可以方便查閱,或者你可以直接把相關(guān)語法問題通過百度和谷歌等搜索一下也可以。
第三、電腦一臺(tái),單片機(jī)開發(fā)板一塊。
電腦呢,是學(xué)習(xí)單片機(jī)必不可少的工具,因?yàn)槲覀兙幊蹋橘Y料都用得到,但是有句題外話說一下,不要把電腦當(dāng)成游戲機(jī)或者影碟機(jī),偶爾玩玩游戲看看電影是可以的,勞逸結(jié)合,但是不可沉溺其中,否則還不如不買電腦。
單片機(jī)開發(fā)板,這也是必須的。如果還上學(xué),老師實(shí)驗(yàn)室有開發(fā)板,可以考慮跟老師借一個(gè),或者使用師兄師姐用完的,這樣可以省點(diǎn)錢。當(dāng)然,如果身邊有高手,比如輔導(dǎo)老師,會(huì)單片機(jī)的師兄,在他們的指導(dǎo)下做一個(gè)也可以,身邊有人指導(dǎo)的話,不懂的問題還可以問他們。如果這些條件不具備,那么可以購買一個(gè),先學(xué)習(xí)別人的板子設(shè)計(jì)思路,給自己以后設(shè)計(jì)電路板打下基礎(chǔ)。在這里我推薦一下我們的51開發(fā)板,用來配套學(xué)習(xí)。我不敢說我們的設(shè)計(jì)是最好的,但是我可以很負(fù)責(zé)任的說,我們的板子是出自經(jīng)驗(yàn)豐富的一線工程師之手,其中的設(shè)計(jì)都是根據(jù)實(shí)際項(xiàng)目開發(fā)的思路進(jìn)行的,包括整體規(guī)劃、電路設(shè)計(jì)、器件布局等等,可以為你今后的項(xiàng)目開發(fā)提供一個(gè)優(yōu)質(zhì)的參考。另外一方面,因?yàn)槲覀兊慕坛淌腔谖覀兊拈_發(fā)板做的,所以大家用配套的話可以節(jié)省時(shí)間,提高學(xué)習(xí)效率。
當(dāng)然,即使不購買我們的開發(fā)板,你想學(xué)單片機(jī),必須要有一塊開發(fā)板,不要總?cè)ビ密浖抡,軟件仿真是學(xué)不會(huì)單片機(jī)技術(shù)的。經(jīng)常有同學(xué)過來問我,老師我用軟件模擬的好用,做了硬件不好用是什么原因。在這里我提一下,如果你上課用這個(gè)軟件仿真,糊弄老師應(yīng)付考試可以的,但是實(shí)際開發(fā)和仿真軟件差別太大,如果是學(xué)習(xí)單片機(jī)這門技術(shù),那我只能告訴你,拿起烙鐵焊電路,動(dòng)手寫程序,遠(yuǎn)離仿真軟件,靠軟件仿真永遠(yuǎn)學(xué)不到真正的技術(shù)。
單片機(jī)開發(fā)軟件環(huán)境搭建
單片機(jī)開發(fā),首要的兩個(gè)軟件一個(gè)是編程軟件,一個(gè)是下載軟件。編程軟件我們用Keil uVision4的51版本,也叫做keil C51,不做過多介紹,先直接講如何安裝。
1、首先準(zhǔn)備KEIL uVision4安裝源文件,雙擊安裝文件,彈出安裝的歡迎界面,如圖1所示。
圖1 Keil安裝歡迎界面
2、點(diǎn)擊“Next”按鈕,彈出“License Agreement”對(duì)話框,如圖2所示,這里顯示一些用戶安裝協(xié)議,我們?cè)凇癐 agree to all the terms of the preceding License Agreement”打勾,如圖2所示 圖2 “License Agreement”對(duì)話框
3、點(diǎn)擊“Next”按鈕,彈出“Folder Selection”對(duì)話框,如圖3所示。這里可以設(shè)置安裝路徑,默認(rèn)安裝路徑在“C\Keil”文件夾下。點(diǎn)擊“Browse”按鈕,可以修改安裝路徑,這里建議大家用默認(rèn)的安裝路徑,如果你要修改,也必須使用英文路徑,不要使用包含有中文字符的路徑。 圖3 “Folder Selection”對(duì)話框
4、點(diǎn)擊“Next”按鈕,彈出“Customer Information”對(duì)話框,如圖4所示。大家輸入用戶名、公司名稱以及E-mail地址即可。
圖4 用戶信息
5、單擊“Next”,就會(huì)自動(dòng)安裝軟件,如圖5所示
圖5 安裝過程
6、安裝完成后,彈出來安裝完成對(duì)話框,如圖6所示,并且出現(xiàn)幾個(gè)選項(xiàng),大家剛開始把這幾個(gè)選項(xiàng)的對(duì)號(hào)全部去掉就可以了,暫時(shí)先不用關(guān)注他有什么作用。
圖6安裝完成
7、最后,點(diǎn)擊“Finish”,Keil編程軟件開發(fā)環(huán)境就這么裝好了。
Keil基本概況介紹
首先,打開一個(gè)工程項(xiàng)目,如圖7所示
圖7 工程文件
從圖7我們可以很輕松的分辨出菜單欄、工具欄、工程管理區(qū)、程序代碼區(qū)和信息輸出窗口。這個(gè)是Keil4的英文版,網(wǎng)上有一些漢化版本的,我不建議用。即使你的英語不好,使用英文版本的軟件也一點(diǎn)問題沒有,剛開始大家先跟著我去使用,一共沒幾個(gè)單詞,不需要你去翻譯,用幾次你就記住怎么用了。因?yàn)橐院笞鰧?shí)際開發(fā)的時(shí)候,大多數(shù)軟件都是英文版的,如果現(xiàn)在學(xué)習(xí)的時(shí)候一直用中文軟件,將來一旦換了其它的英文軟件就會(huì)慌了,所以從現(xiàn)在開始,我們就慢慢的來熟悉英文軟件,將來以后再用到其他英文軟件的時(shí)候,就可以做到觸類旁通、駕輕就熟了。
Keil軟件菜單欄和工具欄的具體細(xì)化功能,和字典一樣用來備查,所以我把它寫到了附錄里邊,在這里只介紹一點(diǎn),關(guān)于Keil軟件里邊的字體大小和顏色設(shè)置。在View-->Configuration-->Colors &Fonts里邊,可以進(jìn)行程序的顏色,字體大小的設(shè)置,如圖8所示圖8 字體設(shè)置(一) 因?yàn)槲覀冇玫氖荂語言編程,所以我們?cè)赪indow欄用鼠標(biāo)選擇8051:Editor C Files,然后在右側(cè)Element欄目里可以選擇要修改的內(nèi)容,一般我們平時(shí)用到的,只是其中幾項(xiàng)而已,比如Text,Text Selection,Number,/*Comment*/,//Comment//,Keyword,String這幾項(xiàng),Keil本身也有默認(rèn)設(shè)置,你如果覺得不是很適合你的感覺,你可以更換一下。
圖9 字體設(shè)置(二) Keil菜單欄和工具欄的詳細(xì)介紹,和字典一樣,是備查的,不需要記住,所以我把它寫到了附錄里,如果大家對(duì)Keil哪個(gè)工具哪里有疑問,可以隨時(shí)到附錄里進(jìn)行查找。
答學(xué)生問
很多同學(xué)經(jīng)常問我一些問題,我把一些典型的,直接寫出來給大家看一下,讓大家了解這門技術(shù),了解我們這個(gè)行業(yè)。
1、單片機(jī)學(xué)完了能做什么?
單片機(jī)的應(yīng)用非常廣泛,電子,自動(dòng)化,通信等領(lǐng)域都能用到,至于能做什么,得看你將來以后做什么工作。如同電腦一樣,電腦可以用來編程,PS圖片,看電影,打游戲,你用電腦做什么是不一定的。但是掌握好這門技術(shù),起碼可以讓你學(xué)會(huì)一門工具,為將來從事電子、通信、自動(dòng)化等領(lǐng)域的工作做好準(zhǔn)備。
2、學(xué)單片機(jī)的捷徑是什么?
做技術(shù)必須得腳踏實(shí)地,沒有任何捷徑,如果說有的話,那我只能告訴你,拳不離手曲不離口,就是最好的捷徑,我學(xué)習(xí)單片機(jī)的時(shí)候,每天早上8點(diǎn)半進(jìn)入老師實(shí)驗(yàn)室,晚上10點(diǎn)離開實(shí)驗(yàn)室,曾經(jīng)創(chuàng)下連續(xù)3個(gè)月沒有休息日的記錄,你如果能這樣學(xué)的話,那估計(jì)很快可以學(xué)好這門技術(shù)。
3、學(xué)習(xí)單片機(jī)應(yīng)該學(xué)習(xí)什么語言,有沒有必要再學(xué)習(xí)匯編
相比較來說,匯編語言比較接近單片機(jī)的底層,使用匯編語言比較容易理解單片機(jī)內(nèi)部結(jié)構(gòu)。簡單的程序,用匯編語言,程序效率也比較高,但是當(dāng)程序容量達(dá)到到幾千上萬行以后(這時(shí)也僅能算個(gè)不太小的項(xiàng)目,還遠(yuǎn)沒到大項(xiàng)目的級(jí)別),匯編語言在組織結(jié)構(gòu)、修改維護(hù)等方面就會(huì)成為你的夢(mèng)魘了,此時(shí)時(shí)候C語言就有不可替代的優(yōu)勢(shì)了。所以實(shí)際開發(fā)過程中,90%以上的工程師都在用C語言做單片機(jī)開發(fā),只有在很低端的應(yīng)用中或者是特殊要求的場合,才會(huì)用匯編語言開發(fā),所以我建議大家還是用C語言開發(fā)比較好一些。
如果現(xiàn)在正好上學(xué)學(xué)到了匯編語言,我建議認(rèn)真學(xué)一下,學(xué)好了肯定有益無害。但是現(xiàn)在如果說想直接快速學(xué)單片機(jī)技術(shù),那我建議不要去看匯編語言了,直接學(xué)C語言就可以了,那些單片機(jī)底層的結(jié)構(gòu)什么的,也可以在開發(fā)過程中慢慢理解。
4、學(xué)會(huì)單片機(jī)后能找什么樣的工作
單片機(jī)是一個(gè)工具,和電腦有點(diǎn)類似但不完全一樣,我們學(xué)會(huì)電腦,可以用來編程,可以用來畫圖,可以用來PS照片,可以用來看電影.......學(xué)會(huì)單片機(jī),可以用來做通信技術(shù),做自動(dòng)控制技術(shù)等等,但是單片機(jī)本身來說僅僅是一個(gè)工具,你在用單片機(jī)的時(shí)候,慢慢接觸多了,會(huì)有一個(gè)應(yīng)用方向,你不僅僅要會(huì)單片機(jī),也得對(duì)這個(gè)應(yīng)用方向熟悉,比如我個(gè)人從事過擴(kuò)頻通信技術(shù)的算法研究,那么我就要對(duì)擴(kuò)頻通信熟悉,然后把這個(gè)技術(shù)用單片機(jī)實(shí)現(xiàn)出來,也得會(huì)用單片機(jī)。當(dāng)然大家也不用擔(dān)心,找工作的時(shí)候公司對(duì)這個(gè)方向問題要求也不會(huì)很高,懂的話,肯定也會(huì)提高自己的競爭力。
5、學(xué)完了這個(gè)工資待遇如何
對(duì)于技術(shù)來說,技術(shù)水平高低直接決定你的工資薪酬。技術(shù)如果學(xué)的不好,那工作都找不到,更談不上工資了,而技術(shù)做的好的,那工資就會(huì)很高。我們不清高,我們需要足以安身立命的薪資報(bào)酬,但是我希望的是,一旦你決定從事技術(shù),你不用把過多的精力關(guān)注在能掙多少錢上,而應(yīng)該放在如何把技術(shù)提高起來,只要技術(shù)水平高,比很多人都厲害,錢自然就找上門了。有一部印度的勵(lì)志片叫做《三傻大鬧寶萊塢》,我推薦做技術(shù)的都可以看看,里邊有一句經(jīng)典臺(tái)詞非常適合我們技術(shù)人員:追求卓越,成功就會(huì)在不經(jīng)意間追上你。
單片機(jī)學(xué)習(xí)的4個(gè)階段
一、整體了解
要知道 單片機(jī)是什么?單片機(jī)有何用?如何系統(tǒng)學(xué)習(xí)單片機(jī)?單片機(jī)系統(tǒng)設(shè)計(jì)的流程是怎樣的,需要掌握哪些輔助軟件?
了解這些之后,我們的學(xué)習(xí)就有了目標(biāo)和方向。
二、揭秘 單片機(jī)很難學(xué),是因?yàn)槠鋬?nèi)部結(jié)構(gòu)、編程語言抽象,且實(shí)際應(yīng)用中與其他電子技術(shù)和元器件知識(shí)相互關(guān)聯(lián),需結(jié)合起來一起設(shè)計(jì)開發(fā)產(chǎn)品。所以,第二階段要了解單片機(jī)的內(nèi)部結(jié)構(gòu)是怎樣的?單片機(jī)開發(fā)經(jīng)常會(huì)用到哪些電子技術(shù)和元器件知識(shí)?如何將一條條編程指令組合成一段段有效的程序?
三、解密 之所以單片機(jī)能成為控制核心,設(shè)計(jì)出包羅萬象的應(yīng)用系統(tǒng)來,是因?yàn)殚_發(fā)者利用了單片機(jī)提供的種種功能及各種外設(shè)。所以,第三階段我們要掌握單片機(jī)的各種功能,再加上諸如傳感器、模數(shù)轉(zhuǎn)換、掃描顯示、串行、中斷的應(yīng)用思維,結(jié)合更多的元器件、電子電路知識(shí),逐個(gè)學(xué)習(xí)、體會(huì)實(shí)際的單片機(jī)系統(tǒng)的秘密。
四、遠(yuǎn)航 通過以上三個(gè)階段,讀者基本就可掌握單片機(jī)的應(yīng)用了。但要設(shè)計(jì)出豐富的單片機(jī)系統(tǒng),解決復(fù)雜的實(shí)際問題,還需要了解更多的外設(shè)知識(shí)及其與單片機(jī)的聯(lián)系(如電動(dòng)機(jī)、各類存儲(chǔ)器、繼電器、紅外管等)。這些需要不斷的學(xué)習(xí)和積累。有時(shí)候,接到一些開發(fā)任務(wù),就需要你針對(duì)這個(gè)任務(wù)自覺地去搜集、學(xué)習(xí)相關(guān)知識(shí),在實(shí)踐中不斷載學(xué)習(xí)和提高。
最后推薦一本經(jīng)典圖書:《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用(配教學(xué)視頻)》,楊欣編著(他寫過多本很有口碑的電子讀物,風(fēng)格獨(dú)特),電子工業(yè)出版社出版。
編輯:admin 最后修改時(shí)間:2019-08-09