51培訓單片機及其應用_第1頁
51培訓單片機及其應用_第2頁
51培訓單片機及其應用_第3頁
51培訓單片機及其應用_第4頁
51培訓單片機及其應用_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、1.1.1在方案的設計上做出了重要的貢獻。19466(EDVAC-ELECTRONIC 1.1.1在方案的設計上做出了重要的貢獻。19466(EDVAC-ELECTRONIC 計算機的結(jié)構(gòu)仍然沒有突破馮多板機(系統(tǒng)機將 CPU器、I/O 接口電路和總線接口等組裝在一塊主機板(即微機主輸入輸出器控制運算CPU、器、I/O程序ROM三種應用形態(tài)的比較 :系統(tǒng)機(多扳機CPU、器、I/O程序ROM三種應用形態(tài)的比較 :系統(tǒng)機(多扳機1980年, el公司推出MCS-51系列單片機:8CPU、4KROM、128字節(jié) RAM、4 個 8 位并口、1 個全雙工串行口、2 個 16 位定時/計數(shù)器。尋址范圍

2、 現(xiàn)在,MCS-51 已成為公認的單片機經(jīng)典機種 。內(nèi)集成:16 位 CPU、1980年, el公司推出MCS-51系列單片機:8CPU、4KROM、128字節(jié) RAM、4 個 8 位并口、1 個全雙工串行口、2 個 16 位定時/計數(shù)器。尋址范圍 現(xiàn)在,MCS-51 已成為公認的單片機經(jīng)典機種 。內(nèi)集成:16 位 CPU、8K 字節(jié) ROM、232 字節(jié) RAM、5 個 8 位并口、1 個全雙工串行口、216計數(shù)器。尋址范圍64K。片上還810ADC、路,近年來推出的非 80C51 系列的主要產(chǎn)品有:elMCS-9616各近期推出的單片機產(chǎn)集成有高速 I/O 口、ADC、WDT低電壓、低功耗

3、、串行擴展總線、控制網(wǎng)絡總線和開發(fā)方式(如在系統(tǒng)編程已減少到 8 個或更少??刂啤⒆詣由a(chǎn)線等 。汽車自動駕駛系統(tǒng)、航天測控系統(tǒng)、黑匣子等 。已減少到 8 個或更少。控制、自動生產(chǎn)線等 。汽車自動駕駛系統(tǒng)、航天測控系統(tǒng)、黑匣子等 。80C52/87C52/80C32OS是CMOS和HMOS 的結(jié)合,既保持了 HMOS高速度和高密度的特點,還具有CMOS 的低功耗的在產(chǎn)品型號中凡帶有字母“C”的即為的電平既與 TTL 電平兼容,又與 CMOS 電平兼容。,80C312.1.2 80C5180C51 是80C312.1.2 80C5180C51 是MCS-51 系列OS工藝的一個典型品種 ;其80

4、51基核開發(fā)出的 CMOS 工藝單片機產(chǎn)品統(tǒng)稱為 80C51 系列。當前常用的 80C51 系列* 的Philips、華邦、Dallas。80C51典型產(chǎn)品資源unsignedcharFlag=)P1 = if(Flag = =P1 = if(Flag = =84kbytes(52256bytes(52384bytes32I/O21 口:四個 位并行 率為 12M。I/OVCC:電源端,一般接 5V; 過1. 口:四個 位并行 率為 12M。I/OVCC:電源端,一般接 5V; 過1. 26S1S6,(4) 指令周期: 它是指 CPU 完成一條操作所需 26S1S6,(4) 指令周期: 它是指

5、 CPU 完成一條操作所需的全部時間。 每條指令執(zhí)行時間都是有一個或幾個機器周期組成。MCS51XTAL1后,ALE 引腳不斷向外輸出正弦脈沖信號,此頻率為振蕩器頻率的 1/6外器時,ALE 作為鎖存低 8 位地址的控制信號。此引腳的PROG8751PSEN:(Program Store Enable片外器時,此端定時輸出后,ALE 引腳不斷向外輸出正弦脈沖信號,此頻率為振蕩器頻率的 1/6外器時,ALE 作為鎖存低 8 位地址的控制信號。此引腳的PROG8751PSEN:(Program Store Enable片外器時,此端定時輸出負脈EA/VPP:(Enable Pulse 程序Prog

6、ramming)當 EA 接高電器中的指令,但當 PC(平時,片內(nèi) ROM,并執(zhí)行序計數(shù)器)的值超過 4K腳接低電平時,CPU 只不管是否有片內(nèi)程序時,將自動轉(zhuǎn)去執(zhí)行片器內(nèi)的程序。當 ROM行外部程序器。VPP8751 片內(nèi) ROM器中的指令,而程序時,作P0P3:4 個 8 位雙向輸入輸出端口,每個端口都有鎖存器、輸出驅(qū)動器和輸入緩沖器。4 個端口都可以做輸入輸出口使用,其中,P0 和 P2常用于對外部器。在這種方式下,把 P0 口作為地址/數(shù)據(jù)總線器KEILC51C-51C51例如:unsigned char code Flag = ROMRAMC51內(nèi)直接尋址 8C51例如:unsign

7、ed char code Flag = ROMRAMC51內(nèi)直接尋址 8內(nèi)間接尋址 88內(nèi)直接尋址 8內(nèi)間接尋址 88類型 所占數(shù)的(signed) 有(signed) 整型無 unsigned實3.4e-型1.7e-字8符unsigned 8C語言中的基本數(shù)據(jù)類型 所占數(shù)的(signed) 有(signed) 整型 unsigned無實有型3.4e-1.7e-字8符unsigned 8C51的數(shù)據(jù)類型擴充定sfr:特殊功能寄存bit:位變類型 所占數(shù)的(signed) 有(signed) 整型無 unsigned實3.4e-型1.7e-字8符unsigned 8C語言中的基本數(shù)據(jù)類型 所占數(shù)

8、的(signed) 有(signed) 整型 unsigned無實有型3.4e-1.7e-字8符unsigned 8C51的數(shù)據(jù)類型擴充定sfr:特殊功能寄存bit:位變例:YLX9)4 !YLX : #YHOZ5 !YLX : #YHOZ5-*-*/(大大于等小小于等于(測試測試不等于!(邏輯與邏輯或 邏輯)(位右位左移& (按位按位或)(按位異按位取) 的基本語與標準)語言基本相同YZI JUNO選擇語循環(huán)語循環(huán)語中斷服務函數(shù)名Tac/ 5口定 ac/ 5口定 LTKVXUZHZ 或用指針定INC DPTR INC R0SJMP LOOP C51 程序 main( )unsigned ch

9、ar xdata *p=0; 例:查找零的個數(shù)(在 !查找 358 358 35*6 35 0!查找 358 358 35*6 35 0+2 !取出內(nèi)容與相等嗎!取出個數(shù)/4)/)*08 !未完繼35*6 3590362 !相同數(shù)個數(shù)送 .2 查找零的個數(shù)C51main ( )unsignedcharxdata 指針p2100H單片機I/O口的使用P1、P2、P38。51 系列單片機有 4 個 I/O 端口,每個端口都是 8 位準雙向口,共占 32 根寄存器 P0P3在無器的系統(tǒng)中,這 4 個端口的每一位都可以作為準雙向通用 I/O口使用。在具有片外擴器的系統(tǒng)中,P2 口作為高 8 位P1、P

10、2、P38。51 系列單片機有 4 個 I/O 端口,每個端口都是 8 位準雙向口,共占 32 根寄存器 P0P3在無器的系統(tǒng)中,這 4 個端口的每一位都可以作為準雙向通用 I/O口使用。在具有片外擴器的系統(tǒng)中,P2 口作為高 8 位地址線,P0 口分時51 單片機 4 個 I/O 端口線路設計的非常巧妙,學習 I/O 端口邏輯電路,不一、P0 口的結(jié)構(gòu)下圖為 P0 口的某位 P0.n(n=07)結(jié)構(gòu)圖,它由一個及控制電路組成。從圖中可以看出,P0 口既可以作為 I/O 用,也可以作為地址/數(shù)據(jù)線用???、P0 口作為普通輸出時I/O CLK 口NMOS口 輸入分讀引腳或讀鎖存讀引腳:由傳送指

11、令(MOV)實現(xiàn);脈沖把該三態(tài)緩沖器打開,這樣端口引腳上的數(shù)據(jù)經(jīng)過緩沖器讀入到總線。CLK CLK 口NMOS口 輸入分讀引腳或讀鎖存讀引腳:由傳送指令(MOV)實現(xiàn);脈沖把該三態(tài)緩沖器打開,這樣端口引腳上的數(shù)據(jù)經(jīng)過緩沖器讀入到總線。CLK CLK 口 輸入分讀引腳或讀鎖存ANLP0,A-改-寫”上面一個緩沖器用于讀端口鎖存器數(shù)據(jù)??赑NCLK CLK 口 輸入分讀引腳或讀鎖存ANLP0,A-改-寫”上面一個緩沖器用于讀端口鎖存器數(shù)據(jù)??赑NCLK CLK 口(ANL CLK 口(ANL CLK 口在系統(tǒng)擴展時,端口作為地址/數(shù)據(jù)總線使用時,分為:引腳輸出地址/數(shù)據(jù)信息??贑PU 發(fā)出控制電平

12、“1”,打開“與”門, 又使多路開關(guān) 把 CPU的地址/數(shù)據(jù)總線與 T2柵極反相輸出地址或數(shù)據(jù)。由圖上可以看出,上下兩個FETCLK CLK 口在系統(tǒng)擴展時,端口作為地址/數(shù)據(jù)總線使用時,分為:引腳輸出地址/數(shù)據(jù)信息??贑PU 發(fā)出控制電平“1”,打開“與”門, 又使多路開關(guān) 把 CPU的地址/數(shù)據(jù)總線與 T2柵極反相輸出地址或數(shù)據(jù)。由圖上可以看出,上下兩個FETCLK CLK 口P0 引腳輸出地址/輸入數(shù)據(jù)輸入信號是從引腳通過輸入緩沖器進入總線。此時,CPU 自動使 MUX 向下,并向 P0 口寫“1”,“讀引腳”控制信號有效,口二、P2CPU 發(fā)出控制電平,使多路開關(guān)MUX 倒向鎖存Q一個

13、準雙向口。其功能與P1相同CLK CLK 口P0 引腳輸出地址/輸入數(shù)據(jù)輸入信號是從引腳通過輸入緩沖器進入總線。此時,CPU 自動使 MUX 向下,并向 P0 口寫“1”,“讀引腳”控制信號有效,口二、P2CPU 發(fā)出控制電平,使多路開關(guān)MUX 倒向鎖存Q一個準雙向口。其功能與P1相同CLK CLK 2.P2 口作為地址總線在系統(tǒng)擴展片外程序器擴展數(shù)據(jù)器且容量超過256B (用 MOVX 指令)時,CPU1”MUX輸出高 8 位地址。4.1.2 P1P3P1 口的一位它由一個輸出鎖存器兩個三態(tài)輸入緩沖器和輸出驅(qū)動電路組準雙地址 R總寫鎖存讀引腳地址 R總寫鎖存讀引腳2.P2 口作為地址總線在系

14、統(tǒng)擴展片外程序器擴展數(shù)據(jù)器且容量超過256B (用 MOVX 指令)時,CPU1”MUX輸出高 8 位地址。4.1.2 P1P3P1 口的一位它由一個輸出鎖存器兩個三態(tài)輸入緩沖器和輸出驅(qū)動電路組準雙地址 R總寫鎖存讀引腳地址 R總寫鎖存讀引腳R腳總T讀引腳P3 結(jié)一、作為通用I/O口與P1口類準雙向口WR口TP3 結(jié)二、P3 第二功此時引腳部分輸入(Q=1、W=1)(Q=1、WCLK CLK R腳總T讀引腳P3 結(jié)一、作為通用I/O口與P1口類準雙向口WR口TP3 結(jié)二、P3 第二功此時引腳部分輸入(Q=1、W=1)(Q=1、WCLK CLK WR口DQTQP3.0:RXD 串行口輸入 P3.

15、1:TXD 串行口輸出 P3.6:WR 外部寫控制 P3.7:RD 外部讀控制綜上所述:當 P0 作為 I/O 口使用時,特別是作為輸出WR口DQTQP3.0:RXD 串行口輸入 P3.1:TXD 串行口輸出 P3.6:WR 外部寫控制 P3.7:RD 外部讀控制綜上所述:當 P0 作為 I/O 口使用時,特別是作為輸出時,輸出級屬于開P1、P2 和 P3P1 口是用8 位準雙向I/O 具有通用輸入/輸出功能,位的鎖存器必須寫入“1”, 然后才能進入輸入操作。P28 位準I/O外接I/O 設備時, 可作為擴展系統(tǒng)8P0168031P2I/O在單片機組成的測控系統(tǒng)及智能化儀器中,用的最多的是非編

16、碼鍵盤01230 1 2374 5 A9BA8 BF在單片機組成的測控系統(tǒng)及智能化儀器中,用的最多的是非編碼鍵盤01230 1 2374 5 A9BA8 BF實際波形P13 DE穩(wěn)定閉合抖按下抖6Instruction 概7種尋址方式,111條指令單字節(jié)指令Instruction 概7種尋址方式,111條指令單字節(jié)指令:49雙字節(jié)指令:45單周期指令:64條四周期指2字節(jié)數(shù)運算速度數(shù)據(jù)傳送類:29算術(shù)運算類:24功邏輯運算類:24控制轉(zhuǎn)移類:1717Rn:工作寄存器中的寄存Rn:工作寄存器中的寄存器R0、R1R7之一Ri:工作寄存器中的寄存器R0或#data:8位立 addr16:16X:的直

17、接地址或寄存器尋址方式立即尋址操作數(shù)存在Immediate操作數(shù)就包含在指令代碼中,在操作碼之后,稱為尋址方式立即尋址操作數(shù)存在Immediate操作數(shù)就包含在指令代碼中,在操作碼之后,稱為立即數(shù),用“”表示MCS-如P1,R7,直接尋址Direct直接使用數(shù)所在單元的地址找到了操作數(shù),所以稱這種方法為直接尋址。操作數(shù)在 SFRRAM、位地址空間。如寄存器尋址Register對選定的工作寄存器 R0R7、累加器 A、通用寄存器B、地址寄存器DPTR中的例:MOV A,R0;將 R0工作寄存器中的數(shù)據(jù)送到累加器A 中去。提一個問題:知道,工作寄存器就是內(nèi)存單元的一部分,如選擇和作寄存器組 0,則R0RAM00H么這樣一MOVA00H A,R0 不就沒什么區(qū)別了嗎?的確,這兩條指令執(zhí)行的結(jié)果是完全相同的,都00H的內(nèi)容送到A中去,但是執(zhí)行的過程不同,執(zhí)行第一2機器周期,而第二條則只需要 1 個機器周期,第一條指令變成最終的目標碼要兩個字節(jié)(E5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論