導航:首頁 > 操作系統 > 單片機原理

單片機原理

發布時間:2022-03-08 00:49:17

單片機原理的單片機

單片機早期的含義為單片微型計算機SCM,簡稱單片機。

工作原理分為如下幾步:

  1. 取指令。從內存儲器取出指令送到指令寄存器。

  2. 分析指令。對指令寄存器中存放的指令進行分析,由解碼器對操作碼進行解碼,將指令的操作碼轉換成相應的控制電信號,並由地址碼確定操作數的地址。

  3. 執行指令。它是由操作控制線路發出的完成該操作所需的一系列控制信息,完成指令所需要的操作。

  4. 為執行下一條指令做准備。形成下一條指令的地址,指令計數器(PC)指向存放下一條指令的地址,最後控制單元將執行結果寫入內存。

❷ 單片機原理是什麼

單片機到底是什麼呢?就是一個電腦,只不過是微型的,麻雀雖小,五臟俱全:它內部也用和電腦功能類似的模塊,比如CPU,內存,並行匯流排,還有和硬碟作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復雜的工作足矣了。我們現在用的全自動滾筒洗衣機,排煙罩VCD等等的家電裡面都可以看到它的身影!......它主要是作為控制部分的核心部件。
它是一種在線式實時控制計算機,在線式就是現場控制,需要的是有較強的抗干擾能力,較低的成本,這也是和離線式計算機的(比如家用PC)的主要區別。
單片機是靠程序的,並且可以修改。通過不同的程序實現不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。一個不是很復雜的功能要是用美國50年代開發的74系列,或者60年代的CD4000系列這些純硬體來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有天壤之別!只因為單片機的通過你編寫的程序可以實現高智能,高效率,以及高可靠性!
由於單片機對成本是敏感的,所以目前占統治地位的軟體還是最低級匯編語言(近幾年,C語言也開始廣泛被應用),它是除了二進制機器碼以上最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。 單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC的也是承受不了的。
目前最常用的單片機為MCS-51,是由美國INTEL公司(生產CPU的英特爾)生產的,89C51是這幾年在我國非常流行的單片機,它是由美國ATMEL公司開發生產的,其內核兼容MCS-51單片機。

❸ 單片機原理的基本結構

1.運算器
運算器由運算部件——算術邏輯單元(Arithmetic & Logical Unit,簡稱ALU)、累加器和寄存器等幾部分組成。ALU的作用是把傳來的數據進行算術或邏輯運算,輸入來源為兩個8位數據,分別來自累加器和數據寄存器。ALU能完成對這兩個數據進行加、減、與、或、比較大小等操作,最後將結果存入累加器。例如,兩個數6和7相加,在相加之前,操作數6放在累加器中,7放在數據寄存器中,當執行加法指令時,ALU即把兩個數相加並把結果13存入累加器,取代累加器原來的內容6。
運算器有兩個功能:
(1) 執行各種算術運算。
(2) 執行各種邏輯運算,並進行邏輯測試,如零值測試或兩個值的比較。
運算器所執行全部操作都是由控制器發出的控制信號來指揮的,並且,一個算術操作產生一個運算結果,一個邏輯操作產生一個判決。
2.控制器
控制器由程序計數器、指令寄存器、指令解碼器、時序發生器和操作控制器等組成,是發布命令的「決策機構」,即協調和指揮整個微機系統的操作。其主要功能有:
(1) 從內存中取出一條指令,並指出下一條指令在內存中的位置。
(2) 對指令進行解碼和測試,並產生相應的操作控制信號,以便於執行規定的動作。
(3) 指揮並控制CPU、內存和輸入輸出設備之間數據流動的方向。
微處理器內通過內部匯流排把ALU、計數器、寄存器和控制部分互聯,並通過外部匯流排與外部的存儲器、輸入輸出介面電路聯接。外部匯流排又稱為系統匯流排,分為數據匯流排DB、地址匯流排AB和控制匯流排CB。通過輸入輸出介面電路,實現與各種外圍設備連接。
3.主要寄存器
(1)累加器A
圖1-2 單片機組成框圖
累加器A是微處理器中使用最頻繁的寄存器。在算術和邏輯運算時它有雙功能:運算前,用於保存一個操作數;運算後,用於保存所得的和、差或邏輯運算結果。
(2)數據寄存器DR
數據寄存器通過數據匯流排向存儲器和輸入/輸出設備送(寫)或取(讀)數據的暫存單元。它可以保存一條正在解碼的指令,也可以保存正在送往存儲器中存儲的一個數據位元組等等。
(3)指令寄存器IR和指令解碼器ID
指令包括操作碼和操作數。
指令寄存器是用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存中取到數據寄存器中,然後再傳送到指令寄存器。當系統執行給定的指令時,必須對操作碼進行解碼,以確定所要求的操作,指令解碼器就是負責這項工作的。其中,指令寄存器中操作碼欄位的輸出就是指令解碼器的輸入。
(4)程序計數器PC
PC用於確定下一條指令的地址,以保證程序能夠連續地執行下去,因此通常又被稱為指令地址計數器。在程序開始執行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執行指令的地址。
(5)地址寄存器AR
地址寄存器用於保存當前CPU所要訪問的內存單元或I/O設備的地址。由於內存與CPU之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內存讀/寫操作完成為止。
顯然,當CPU向存儲器存數據、CPU從內存取數據和CPU從內存讀出指令時,都要用到地址寄存器和數據寄存器。同樣,如果把外圍設備的地址作為內存地址單元來看的話,那麼當CPU和外圍設備交換信息時,也需要用到地址寄存器和數據寄存器。

❹ 單片機原理

糾正第三樓所說的。
三樓在文中說道:「單片機...,它是將電子計算機的基本環節,如:CPU(又稱中央處理器,主要由運算器,控制器組成),存儲器,匯流排,輸入輸出介面等,採用集成電路技術集成在一片硅基片上.」

。。。。。。。。。。。。。。。。。。。。。。。。。

單片機就是簡化的微型計算機。CPU中本身自帶存儲器ROM和RAM。CPU片內也有匯流排。IC(集成電路)技術是將電路通過特殊工藝做在一塊硅基片上封裝成晶元,比如CPU,片外存儲器等等。

將單片機CPU(比如51系列),晶振,存儲器,地址鎖存器,邏輯門,七段解碼器(顯示器),按鈕(類似鍵盤),擴展晶元,介面等通過PCB工藝(比如SMT貼片,或者插裝)做在環氧樹脂板上。這樣才是一個完整的單片(做在一塊PCB板上)的微型計算機。

有些還附加看門狗,CAN控制器/收發器,A/D,D/A轉換,PWM脈寬調制,濾波、PID信號處理等很多附加環節。

在糾正一點。並非所有電控都採用單片機。
在高性能數字、圖像信號處理領域,用DSP開始增多。
在工廠加工,測試,試驗設備方面,特別是順序控制方面,採用PLC較多。
在水泥廠,化工廠,用DCS比較多。
在運算量超復雜的場合,直接使用PC機控制。
在現場匯流排方面。上位機也用PC機。
在家用電器(比如微波爐),手機等受限資源控制和信號處理方面,採用Sun公司的Java嵌入式晶元,配J2ME函數庫做應用開發。

❺ 單片機原理圖

VCC接供電電源的正級,gnd接供電電源的負極。DU,WE是給單片機發出來的控制信號取的名字這里WE應該指的是位,WE1,WE2,WE3,分別控制3位數碼管的一位(圖上的CS1,CS2,CS3)。DU應該指的的段,下面的8個控制信號分別控制8段數碼管的8個LED燈(數碼管的顯示就是靠控制那7根條狀的LED燈和圓點LED燈的亮滅,不懂的話自己去找找數碼管的工作原理)。這些控制信號無非就是發送高低電平來控制數碼管的亮滅。

❻ 一位單片機原理

單片機原理是指一種在線式實時控制計算機的原理方式。在線式就是現場控制,需要的是有較強的抗干擾能力,較低的成本,這也是和離線式計算機(比如家用PC)的主要區別。

單片機就是一個微型電腦,它是靠程序工作的,並且可以修改。通過不同的程序實現不同的功能。

單片機到底是什麼呢?就是一個電腦,只不過是微型的,麻雀雖小,五臟俱全:它內部也有和電腦功能類似的模塊,比如CPU,內存,並行匯流排,還有和硬碟作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元......用它來做一些控制電器一類不是很復雜的工作足矣了。排煙罩VCD等等的家電裡面都可以看到它的身影!......它主要是作為控制部分的核心部件。

單片機是靠程序工作的,並且可以修改。通過不同的程序實現不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。一個不是很復雜的功能要是用美國50年代開發的74系列,或者60年代的CD4000系列這些純硬體來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有天壤之別!只因為單片機的通過你編寫的程序可以實現高智能,高效率,以及高可靠性!

由於單片機對成本是敏感的,所以占統治地位的軟體還是最低級匯編語言(近幾年,C語言也開始廣泛被應用),它是除了二進制機器碼以外最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。 單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC也是承受不了的。

❼ 單片機原理怎麼能夠學好

作為一電子愛好者,如你不懂單片機的話,不管你是搞維修的,還是搞開發的,在現在以及將來最起碼你不算一位合格的電子愛好者.我是99年6月開始學的單片機,算是還可以吧(自我感覺良好)!
要想學好單片機必須對它有興趣,這是必然的!也是最重要的!在這基礎上你從一個不知單片機是個什麼東東到自己能做一些單片機的東東----三個月用你的業余時間搞定,要知道到那時你是個鍍了金的"電子愛好者"(學校剛學完的本科生不過如此),那樣的興奮啊...!呵呵!
想學單片機從MCS-51開始,那是公認的,不必研究了.但單片機是一個很系統的學科,我們作為自學的,不可能象學校那樣很系統的學,那樣的話可能要倍上它三五年了.那麼怎麼才能在三個月而且是業余的時間學好它呢?我個人認為是---怎麼樣使自己盡快的入門是主要的,一旦入了門就什麼都好說!雖說不必等系統的學了計算機系統再來學單片機,但有的一些你必須要了解的,那就必須要學,必須要懂.學單片機要對數字邏輯(數字電路),數制,匯編語言等等---必須懂!頭開始大了吧!呵呵!誰叫你對它感興趣呢!但話也得說回來,感興趣歸感興趣,要是真的讓你買來幾本書,那感興趣的也是每本書的前面幾頁,或許用來作睡前摧眠罷了!可是應該要懂的就必須得學,怎麼辦呢?辦法是有的,因為我就是這么過來的!
首先:你對必須有電腦,我想你能上網電腦不是大問題,況且學單片機也是離不開電腦的,沒電腦你還是別動那個腦筋了!視頻教程應該聽說過吧!對了,就是視頻教程,這樣我們就不必看那摧眠的書了,就象看電視一樣的看教程,好的教師講的課程比較通俗易懂,容易理解,也就不象書那樣容易摧眠了.一旦你聽得下去了,你的興趣就更上來了,而且比在學校里聽老師講課還方便,聽不懂的地方你可以倒到前面重新來過,看了一次不明白的地方還可以重看N次,沒人會煩你!結合網上多得不能再多的有關內容做一些東東,你不想學會都難(真的不想學除外)!呵呵!不是吹牛!問題是怎麼學?從那兒學起?什麼教程好?怎麼按排好教程課時?
單片機是計算機的一個分支,是計算機一個系統的.它的硬體是一系列邏輯時序電路的組合."邏輯 時序"那就是數字電路啊!那數字電路原理也就必須要了解的啰!況且單片機里的什麼鎖存器啊,寄存器啊,解碼器啊,計數器啊,等等.都是數字電路里的東東,了解了數字電路你也就一隻腳進了單片機的大門.我有幸看了劉潤華老師的<數字電子電路基礎>的視頻教程,他可是一位很不錯的教授!通俗易懂,容易理解!教程30 個課時,我想如果你有一點點的電子基礎(那怕你一點不懂,你只要有興趣就行),這裡面的東東你只要理解便是了.它比模擬電子電路要好理解的多得多,我是三天看完的.給你一個星期吧!怎麼樣?呵呵!一個星期就能把前腳踏進單片機的大門,不錯吧!

你的一隻腳已經進了單片機的門,那麼我們就來考慮你的另外一隻腳吧!
我們假設你沒有太多的空時間,劉潤華老師的<數字電子電路基礎>的視頻教程,你用了15天,學這個東西最好是連著看,可不要斷斷續續的,三天打魚二天曬網的後果你是知道的!三個月是90天,你用了15天,那就再有75天了,我們怎麼按排這75天呢?總不能把入門的後一隻腳用了75天再把它拖進來吧!!呵呵!那還算叫「搞定」啊!入門後還要學會怎麼站起來走路,然後是怎麼跑著走路,這樣才是剛剛「搞定」!呵呵!暈了吧!不急,不是說過嗎,只要入了門什麼都好說,「跑」算什麼,「飛」都沒問題!我們走進門吧!
武慶生老師的《單片機原理及介面技術》視頻教程是個很不錯的選擇,武慶生老師是很敬業的教師,他把單片機中的很多技術難點,技術細節講得透透徹徹!明明白白!清清楚楚!盡管武慶生老師講得這么好,可對我們從來沒有聽過什麼是微機原理,什麼是計算機介面技術,什麼是計算機匯編語言等等的人來說,還是感到頭大!沒有劉潤華老師的<數字電子電路基礎>的視頻教程來得輕鬆了,我的過程是:買一本筆記,每一課時先認真的看一遍,然後再認真的重新看一遍,並把重要的記下來.這樣的話,有了<數字電子電路基礎>已經打了底的基礎,應該沒多大問題了,我是說讓後面的那隻腳進得門來沒多大問題了!呵呵!
<單片機原理及介面技術>整個課程33課時,我用了大概半個月吧!我是很認真很認真對待它的!整個課程我都做了筆記,而且我發現做筆記有很多好處,首先你會知道自己已經學到那兒了,學得怎麼樣了(最起碼是你懂了你才會記下來吧)!其次是課程里有很多很多經典的匯編程序,你記下來後可作會日後寫程序的范典.就算你不小心用了20天吧!這樣說來大概是35天後,你也就不小心進了單片機的大門.呵呵!我用"不小心"是很有意思的,我就是不經意間看完的.在這過程中每天都有"原來是這樣"和"緣來如此而已"!那種感受,你慢慢體會吧!
我再來說說細節問題,課程里一開始說得是單片機的內臟,你有了劉潤華老師的<數字電子電路基礎>的視頻教程的過程,應該沒有太大問題的!接下是匯編語言的指令部分,整個過程武慶生老師用了大量的實例,這部分你得十二份的認真對待,日後你要用這些語言寫東東的!往下是"定時器/計數器","串列介面","中斷系統"這三部分可謂是單片機的核心,有了"定時器/計數器"單片機才會自動控制,有了"中斷系統"單片機才會有了"智慧",有了"串列介面"單片機才會知道外面的世界有多大!再往下是"系統擴展"和"介面技術",盡管我是很認真的看完的,這里邊的"I/O口的擴展","鍵盤介面","A/D","D/A"等等,在<數字電子電路基礎>里有的已有交待,比較輕松的!有的也只限於了解就可以了,因為將來的單片機里象"A/D","D/A"等等是晶元自帶的,你可以有選擇的應用便可!
好了!到了這里我們算是完全進得門來了!不錯吧!只用了你大概一個月的時間.相當於學校一年多的本科生的時間.我不是說要三個月才能算是"搞定"嗎?是的,我們只不過是剛剛入門.接下來是怎麼"跑"的問題.
動手吧!花錢了!到網上多看看買一個帶ISP下載線的單片機開發板,100元左右.注意的是你學的是MCS-51,你就得買MCS-51的開發板.須要注意的是:
1/ 自帶程序的在線燒錄(自下載)功能.這會讓你省下了買編程器的費用!
2/ 帶標准RS232介面.看看板子上有沒有RS232晶元和24C**系列的EEPROM晶元,"串列介面","中斷系統"這兩部分的內容可以得到練習.
3/ 提供16*2字元顯示液晶板介面了嗎!以後用得著.
4/ 精確標準的時鍾電路.找找有沒有DS1302晶元,好東東!"定時器/計數器"可以得到練習.
其它的應該一般的開發板都會有的,就不必多說了!
KEIL 是美國Keil Software公司出品的51單片機軟體開發系統.不管你是用匯編的還是C語言的,它都能幫你產生目標代碼,生成的文件你再把它用ISP下載線寫進晶元,呵呵!你的東東就出來了!算是"跑"起來了吧!這跟鍛煉身體有點相似,跑得越多你的身體就越好,你的身體越好就跑得越快!到底能不能"跑"起來,或"跑"得快不快,那是你的事情了!至少你已經"走"起來了!
在這里我再說一些細節問題:學"跑"時,最好找一些簡單的現存的小程序玩玩!然後想辦法改程序,看看能不能再"跑"起來,我就是這樣"跑"起來的!玩比較大一些程序時盡量找現存的子程序(就是一些大蝦們說的"模塊")作為你的子程序,這樣就比較可靠了!我們假設你已經"跑"起來了("跑"不起來才怪)!就算你學"跑"用了30天左右的時間吧.入門用了你30天,看看學"跑"和入門的比例:佔了一半啊!是的學單片機就是練出來的!必須練,練,練,再練!最好在入門的時候就練!這一點很重要哦!
到了這里你的單片機已經算是基本上"搞定"了!如果你只是搞維修的,那你畢業了!呵呵!如果你是想搞單片機開發,並且想用單片機養家糊口的,那你離"搞定"還有一點距離.一些大的工程一般不是一個人能完成得了的,可能要幾個人甚至幾十個程序員一起合作.這時候你還用匯編語言就有點說不過去了!匯編語言優點是很多,可是它也有致命的弱點:很難交流,很難移值等等!C語言是個不錯的選擇,與匯編語言相比,C語言在功能,結構性,可讀性,可維護性上有明顯的優勢!生成的目標代碼效率非常高,多數語句生成的匯編代碼很緊湊!C語言的優勢還體現在你將來搞MCS-51以外的單片機的開發時,你只要對這種單片機的硬體結構有一個大概的了解就可以了!就是說C語言編程時對硬體結構的了解要求不是太高的!學C語言相比是比較容易的,我是網上找到的多媒體學習光碟!十天就能知道大概了!然後也是練,練,練!呵呵,沒這么容易吧!就這么容易!有的東西我們只是被它的外表嚇住了,就象漂亮的MM不是你想像的那麼難搞定一樣!自信很重要哦!!!!!!!
學了C語言就算把單片機"搞定"了吧!是的"搞定"了!但"搞定"是要你自己感覺的,這時候我建議你看看朱清新老師的<軟體工程>,這里會跟你說說什麼是編程!看過後你就有了一種更上一層樓的驚喜!什麼是結構化編程,什麼是面向對象編程!使你對程序結構和你的編程水平有了質的提升!羅克露老師的<計算機組成原理>,按照常規的教學是先學這裡面的內容,然後才是《單片機》.因為我要在這里提出來,如你能再系統的看一遍羅克露老師的<計算機組成原理>,也是有質的升華的!到那時再加上你從網上積累的東西,和你的實操經驗!呵呵!算是「搞定」了!算算吧!這樣的話三個月沒透支吧!
以上只是我的一家之言!有什麼不當的地方,請多多包含!

❽ 單片機原理的學習

一、單片機與嵌入式系統概述:包括嵌入式系統概念、單片機的特點、應用領域和發展趨勢、市場主流單片機性能比較與選型、常用51核單片機介紹、業內通用嵌入式系統開發方法和流程、開發板及相關開發工具的介紹和使用等;
二、51單片機架構及基本資源的使用:包括單片機工作原理介紹、51單片機架構介紹、單片機最小系統介紹、51單片機基本資源如並口、中斷、時鍾與復位、串口等的熟練使用等;
三、單片機基本資源擴展設計:包括存儲器擴展設計、可編程和不可編程I/O介面擴展設計、I2C匯流排的模擬設計等;
四、輸入輸出設備的設計:包括獨立式按鍵和矩陣鍵盤的各種輸入方法、數碼管及液晶顯示器的介面設計、蜂鳴器的設計;
五、輸入通道和輸出通道的設計:包括一定模擬和數字信號量的輸入、頻率量的輸入方法、A/D轉換原理與器件選型及其與單片機的介面設計、數字與模擬量的輸出方法、功率驅動相關知識、D/A轉換原理與器件選型及其與單片機的介面設計等;
六、單片機軟硬體設計和調試經驗:各種軟體開發和設計技巧、調試經驗等;
七、開發環境和開發工具介紹:Keil uVision2集成開發環境的使用與軟調試等;
八、軟硬體系統集成和調試方法,技術文檔的編寫規范

❾ 單片機原理講的是什麼

單片機的內部結構,怎麼工作,那個不需要知道太多,關鍵是學會利用單片機去完成一些控制類的項目

閱讀全文

與單片機原理相關的資料

熱點內容
函數的運演算法則題目 瀏覽:717
有免費編譯軟體嗎 瀏覽:916
java互聯網公司 瀏覽:70
對弈下象棋的app哪裡好 瀏覽:707
有什麼食譜app推薦 瀏覽:471
python實現動態口令 瀏覽:825
我的世界電腦伺服器地址怎麼添加 瀏覽:850
傳奇地圖怎麼加密到pak 瀏覽:977
linux刪除mysql用戶 瀏覽:755
圖案設計pdf 瀏覽:584
pdf編輯器在線 瀏覽:471
華為雲雲耀伺服器如何關機 瀏覽:994
數字加密的歷史 瀏覽:613
宏傑文件夾打不開 瀏覽:819
施工日記app哪個好 瀏覽:566
什麼是壓縮機的排氣量 瀏覽:538
在哪個app可以預約一科考試 瀏覽:634
易語言vmp加殼源碼 瀏覽:513
閱讀前端框架源碼 瀏覽:14
我的世界命令方塊傳送指令 瀏覽:545