<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > 教你學單片機 1 :簡介,關于單片機的OOXX

          教你學單片機 1 :簡介,關于單片機的OOXX

          作者: 時間:2016-11-25 來源:網絡 收藏
          微處理器的四十年歷史:四十年回顧 CPU處理器全面發(fā)展史
          后來,微處理器的發(fā)展就越來越迅猛了,掀起了一場個人電腦時代的技術革命,微處理器越來越風行,滲透到了人們生活的各方各面。人們見識到了微處理器的強大,于是他們就有一種想法,既然微處理器這么強大,是不是所有設備都可以由它來控制呢?如果可以的話確實是很方便,這個想法很美好,但是有一個問題:雖然相對大型計算機來講,微機的體積和功耗是少了很多,但如果要把它應用在日常生活中的小設備上,比如把它放到洗衣機上,讓它控制洗衣機自動運行,很顯然它還是太大了,因為根據馮諾依曼架構,一臺計算機必須具有五個部分,分別是:運算器,控制器,存儲設備,輸入設備,輸出設備。運算器和控制器集成在一起變成微處理器,但還是需要內存,還有IO設備,所有這些東西加在一起才可以正常工作。而現在人們想把這套東西放進洗衣機里面工作,先不說功耗和體積,它的價格就遠遠要高過洗衣機本身好多倍了。人們又在想,有什么辦法可以制造出一個可以擔當此類工作的計算機系統呢。其實計算機所做的工作是很廣泛的,稱之為通用計算機,“通用”兩個字表示它什么都可以做,但是如果我們只要它用來執(zhí)行某一些特定的,而且不復雜的任務,換句話說,我們能不能制造出這樣一種計算機,它必須功耗足夠小,價格讓人可以接受,功能可以不用那么強大,只需要執(zhí)行一些簡單的事情就行了,這樣不就可以滿足人們日常生活中對小型計算機系統的需求了?比如自動洗衣機?自動洗碗機?按照這種想法,人們就在想,可不可以把個人計算機再微型化,要變得足夠小、足夠小才行,最好小到把功能都放到一塊芯片里面,用一塊芯片就可以執(zhí)行所有功能!這時候,單片機就出現了,單片機全稱:單片機微型計算機,它按照人們的愿景,把本來需要放在外圍的隨機存儲器RAM,程序存儲器ROM,IO設備,定時器,CPU等等這些部件全部集中在一起芯片中,只要對它進行編程就能實現各種功能!這就是單片機的由來。
          1976年,英特爾推出它的第一款單片機:MCS-48。Zilog公司也于1976年研發(fā)出Z80微處理器。應該算是單片機的最早版本。而1980年,英特爾在MCS-48的基礎上,推出了MCS-51系列8位單片機,這個系列無論在性能還是容量上都較之前的單片機型號有了很大的提高,由于它是如此地好用,MCS-51架構到現在還是風靡全球,占領了低端單片機的大部分市場,很多芯片制造商就是購買了英特爾的MCS-51內核然后自己推出基于該內核的芯片,而我后面要講的內容都是以51單片機為平臺的。
          后來,隨著時代的發(fā)展,IC制造技術越來越高超,(根據IT行業(yè)的摩爾定律,每過18個月,CPU的速度就會提高一倍,內存容量會增大一倍),單片機的性能也越來越強大,體積也越做越小,滲入到生活的各方各面,從以前的MCU時代(性能較弱,內部只能運行簡單的控制程序)進入了SOC時代(System on chip,即片上系統,在芯片上運行操作系統),比如現在的移動終端,像手機、MP3等無不是用單片機作為控制核心,這些芯片已經達到很高的運行速度,性能直逼90年代中期的PC,目前最高端的手機CPU主頻已經超過了1.5G Hz。以前只能在電腦上做的事情現在單片機也可以很輕易地做到了,而且功耗還比電腦低得多。
          這就是單片機的簡單發(fā)展史。
          而現在,你即將進入這一領域,你可以想象一下,用你的手敲出一行行代碼,經過編譯器編譯之后變成單片機可以執(zhí)行的機器碼,然后經過一個下載器和一個下載軟件,機器碼就變成數字流通過導線一條條注入單片機內部,單片機把你的機器碼全部記錄在他的ROM里面,下載完畢之后,你按原計劃連好線路,接上電源,在你還沒反應過來的一瞬間,單片機就按照你的交代在乖巧地運行著代碼了!這一切看起來那么神奇,讓人振奮,你可以充分發(fā)揮你的想象,讓單片機為你做任何事情,讓你感到成就感十足!
          好了,如果你看到這里覺得很有趣,正在考慮想磨拳擦掌大干一場了,那我首先祝賀你,你的興趣已經被激發(fā)起來了,這是最重要的。但我也得打擊一下你,單片機不是那么好學的,需要你具有編程基礎,還要有一點點電子學的基礎。你沒學過編程?沒學過電子?沒關系,這些都可以學,最重要的是你必須有一顆堅持到底的心。老實告訴你,在你寫代碼的時候通常你不可能會第一次就可以把一個完全正確地寫出來,它有時候會產生BUG(軟件漏洞),導致程序錯亂,這時就需要你奈心地進行DEBUG(漏洞調試),直到它正常運行;有時候硬件也會出問題(不是有時候,是大多時候),這時候也需要你一點一點地檢查硬件電路,上網查找資料,直接到硬件調通。這個過程有時候是很漫長并且痛苦的,大多數人就是因為這樣而放棄了學習。不過你要知道,你的每次辛苦付出得到的都是超值的回報,比如你在一次軟件調試中成功地解決了某個算法的漏油,證明你在之后再次應用到這個算法的時候就會得心應手,不會再犯錯。高手都是從菜鳥進化來的。慢慢地,你就會非常享受每次調試完系統之后那種愉悅的成就感了。
          OK?沒問題?你覺得你能承受?你覺得你會堅持到底?嗯,我暫且相信你,畢竟你都看到這里來了。
          那你可以開始學單片機了。
          第一個問題是,你需要選擇一個什么樣的單片機來學?你上網搜索,搜著搜著,你發(fā)現,有一大堆單片機型號羅列在你面前,接著你去逛技術論壇,想聽一下高手們的意見,結果發(fā)現每種型號的單片機都有專門的技術版塊,每種都有很多資料,每個版塊的人都在向你說:學這種吧,OOXXOOXX~~~T_T~~~。你暈了。有時候選擇的東西太多了也是個麻煩事。
          這時候,你可能很想聽一下某個當初也是這么迷茫的人的建議。
          我的建議是,先學51單片機吧!好好地學,先把它學熟了再說吧!不要管有些人說:51過時了,幾十年前的架構,現在誰還用?我很想知道,他說這話的時候有沒有認真地學過51,是不是所有指令都會用了?
          事實就是,其實學哪種單片機都一樣,因為單片機的基本原理都是相通的,沒有太多特別的區(qū)別。但如果你剛開始入門學習,你必須要一個適應期,在這個適應期里你應該不止是使用單片機,你還得把它從里到外都搞通,你會用C語言熟練地給它編程之后,還必須要學會用匯編(關于匯編與C語言的紛爭我之后將會專門講一下),你還得了解它的內部結構,比如它是屬于哪種指令集(復雜指令集CISC和精簡指令集RISC),比如它在函數調用的時候都發(fā)生了哪些作用??傊?,在最后,你必須要懂得以機器執(zhí)行指令的過程來理解你的代碼的含義,這時候你才算成功地學會了單片機(而不是簡單地把單片機的外設學會,然后用高級語言按照人類的思維給它編程,然后下載了事)。你懂得以機器的角度來思考高級代碼之后,一理能百理明,你會發(fā)現很多事情都是相通的,你會在上《微機原理》的課程里比別人學得輕松,因為你已經懂得計算機工作的最基本原理。
          既然學哪種單片機都一樣,為什么要特別選擇51呢?這是因為一般情況下51單片機比別種類型的單片機外設要少,功能相對簡單一點,雖然這樣,但這對初學者來說卻是至關重要的。想象一下你剛上學的時候,老師從教你認識0-9的數字開始,然后教你加減法,后來再教你乘除法,當你有一些基礎之后,才開始教你函數和幾何,最后才是微積分。同樣的道理,當你開始學單片機的時候,要怎么讓你慢慢接受一個你以前從未接受過的概念?你當前希望解釋這個概念的模型要越簡單越直白越好,由淺入深。據此,51單片機給了你一個最簡單輕松的學習環(huán)境,有道理不?另外,51架構的存在已經有幾十年了,應用已經很廣泛(暫時不要去考慮哪種單片機有前景,千萬不要去糾結這種問題,你都還沒入門,就想起飛來了),所以相對其他單片機來說資料更齊全,對你學習更有幫助。
          經過一番解釋,我試圖說服你,學51沒錯。你被我說服了嗎?好吧。假如你還在猶豫之中,接下來我就大概一下介紹目前比較多人學的幾種芯片。
          先說51,51是這類芯片的內部架構,全稱8051,制造商有很多,但內核都是購買英特爾公司的。51跟其他芯片相比主頻比較低(主頻即是CPU每秒執(zhí)行的指令數),一條指令的執(zhí)行需要用12個時鐘周期(一個時鐘脈沖稱為一個時鐘周期),也就是說,需要給他12個時鐘脈沖才會完成一條指令;所以雖然有時候51的外部晶振頻率比別人高,但其實執(zhí)行速度沒有別人高。51一般內存比較小,標準C51(因為使用51內核的芯片很多,資源也不相同,下面我以標準C51來介紹)只有128字節(jié)內存,而且頭32個字節(jié)還要被用做通用寄存器,能給用戶使用的其實只有96字節(jié)。有32個通用IO口,可作為輸入或者輸出,P3口還有第二功能,串口等等,先不說這么多,以后再慢慢介紹。有8KB的程序存儲器。51使用的是復雜指令集CISC(什么東西?先不用管,了解就行了,呵呵)。

          關鍵詞: 單片機簡

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();