單片機原理與基本應用系統(tǒng)_第1頁
單片機原理與基本應用系統(tǒng)_第2頁
單片機原理與基本應用系統(tǒng)_第3頁
單片機原理與基本應用系統(tǒng)_第4頁
單片機原理與基本應用系統(tǒng)_第5頁
已閱讀5頁,還剩64頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與單片機原理與基本應用系統(tǒng)基本應用系統(tǒng) 本章主要內(nèi)容本章主要內(nèi)容1、單片機的內(nèi)部結構與引腳功能、單片機的內(nèi)部結構與引腳功能2、單片機存儲器空間配置與功能、單片機存儲器空間配置與功能 3、匯編語言指令格式與內(nèi)部、匯編語言指令格式與內(nèi)部RAM的操作的操作 指令指令 4、單片機、單片機I/O輸入輸出端口結構及工作原理輸入輸出端口結構及工作原理 5、單片機基本應用系統(tǒng)、單片機基本應用系統(tǒng)單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)一、一、AT89S51單片機內(nèi)部結構單片機內(nèi)部結構(

2、1)一個)一個8位的位的CPU;(2)一個片內(nèi)振蕩器及時鐘電路;一個片內(nèi)振蕩器及時鐘電路;(3)4KB的的Flash ROM;(4)128B的內(nèi)部的內(nèi)部RAM(5)可擴展可擴展64KB外部外部ROM和外部和外部 RAM的控制電路;的控制電路;(6)兩個十六位的定時)兩個十六位的定時/計數(shù)器;計數(shù)器;(7)26個特殊功能寄存器(雙數(shù)據(jù)個特殊功能寄存器(雙數(shù)據(jù) 指針);指針);(8)4個個8位的并行口;位的并行口;(9)一個全雙工的串行口;)一個全雙工的串行口;(10)5個中斷源,兩個外部中斷,個中斷源,兩個外部中斷, 三個內(nèi)部中斷;三個內(nèi)部中斷;(11)內(nèi)部硬件看門狗電路;)內(nèi)部硬件看門狗電路;

3、(12)一個)一個SPI串行接口,用于芯片串行接口,用于芯片 的在系統(tǒng)編程(的在系統(tǒng)編程(ISP)。)。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)1、電源、電源 VCC(P40)芯片電源,接芯片電源,接+5V。 VSS(P20) 接電源地。接電源地。二、二、AT89S51單片機引腳功能單片機引腳功能單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)2、時鐘、時鐘XTAL1(P19)晶體振蕩電路的反相器晶體振蕩電路的反相器 輸入端輸入端XTAL2(P18)晶體振蕩電路的反相器晶體振蕩電

4、路的反相器 輸出端。輸出端。 使用內(nèi)部振蕩電路時,該引腳外接石英晶使用內(nèi)部振蕩電路時,該引腳外接石英晶體和補償電容。使用外部振蕩輸入時從體和補償電容。使用外部振蕩輸入時從XTAL2輸入,此時輸入,此時XTAL1需接地。需接地。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)3、控制、控制 控制引腳有控制引腳有4個,先學習其中的兩個。個,先學習其中的兩個。 (1)RST/VPD復位復位/備用電源備用電源 RST復位功能是單片機正常工作必不可少復位功能是單片機正常工作必不可少的,因為復位可以使單片機從程序的開頭運行,的,因為復位可以使單片機從程

5、序的開頭運行,使單片機按照人們設計的程序運行,在單片機使單片機按照人們設計的程序運行,在單片機系統(tǒng)上電開始工作,或單片機系統(tǒng)由于外界干系統(tǒng)上電開始工作,或單片機系統(tǒng)由于外界干擾偏離正常運行,都需要復位。擾偏離正常運行,都需要復位。AT89S51單片單片機是高電平復位,只要在該引腳上一段時間機是高電平復位,只要在該引腳上一段時間(兩個機器周期以上)的高電平,單片機就復(兩個機器周期以上)的高電平,單片機就復位。在正常運行程序時該引腳為低電平。位。在正常運行程序時該引腳為低電平。 VPD功能是在功能是在VCC掉電情況下,該引腳接掉電情況下,該引腳接備用電源,向片內(nèi)的備用電源,向片內(nèi)的RAM供電,使

6、供電,使RAM中的中的數(shù)據(jù)不丟失。數(shù)據(jù)不丟失。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)3、控制、控制(2)EA/VPP內(nèi)外內(nèi)外ROM選擇選擇/EPROM編程電源編程電源 在通常的應用中在通常的應用中EA功能是作為內(nèi)部和外部功能是作為內(nèi)部和外部ROM的選擇端。當?shù)倪x擇端。當EA=1,CPU從芯片內(nèi)部從芯片內(nèi)部的的ROM中取指令運行,但超過中取指令運行,但超過4KB范圍的程范圍的程序,也從外部擴展的序,也從外部擴展的ROM中取得。反之當中取得。反之當EA=0時,只從芯片外部擴展的時,只從芯片外部擴展的ROM中取指中取指令運行。在絕大多

7、數(shù)的應用中,令運行。在絕大多數(shù)的應用中,4KB空間范空間范圍足夠存放程序,一般都選擇內(nèi)部圍足夠存放程序,一般都選擇內(nèi)部ROM,將,將EA接高電平。接高電平。 VPP功能是在我們要把程序下載到內(nèi)部功能是在我們要把程序下載到內(nèi)部ROM中才用到的功能,只有設計制造編程器中才用到的功能,只有設計制造編程器時考慮,一般情況用不到。時考慮,一般情況用不到。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)4、I/O口口 AT89S51單片機有單片機有4個個8位的并行位的并行口,分別稱為口,分別稱為P0口、口、P1口、口、P2口和口和P3口,共口,共32

8、個引腳個引腳 。 單片機就是通過這些口線對外部單片機就是通過這些口線對外部電路進行控制和檢測。它們的詳細結電路進行控制和檢測。它們的詳細結構原理和功能在本章第三節(jié)中介紹。構原理和功能在本章第三節(jié)中介紹。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)三、三、AT89S51單片機存儲空間配置單片機存儲空間配置 AT89S51單片機存儲器結構采用的是單片機存儲器結構采用的是哈佛型結構,程序存儲器(哈佛型結構,程序存儲器(ROM)和數(shù)和數(shù)據(jù)存儲器(據(jù)存儲器(RAM)是分開的,有各自的是分開的,有各自的尋址系統(tǒng)和控制信號,分別用不同的指尋址系統(tǒng)和控

9、制信號,分別用不同的指令操作。令操作。ROM用來存放我們編寫的程序用來存放我們編寫的程序和常數(shù)表格。數(shù)據(jù)存儲器用來存放程序和常數(shù)表格。數(shù)據(jù)存儲器用來存放程序運行的數(shù)據(jù)和結果。運行的數(shù)據(jù)和結果。ROM和和RAM都分為都分為內(nèi)部和外部。內(nèi)部和外部。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)內(nèi)部ROM(4KB)EA=1外部ROM(4KB)EA=0外部ROM(60KB)內(nèi)部RAM128BSFR(21個)外部RAM(64KB)0000H0000H0000H0FFFH0FFFH1000HFFFFHFFFFHFFH00H7FH80HMOVC指令操作

10、指令操作MOV指令操作指令操作MOVX指令操作指令操作ROM地址空間地址空間RAM地址空間地址空間單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)1、程序存儲器(、程序存儲器(ROM) 不管是內(nèi)部的還是外部的不管是內(nèi)部的還是外部的ROM,開頭的開頭的0003H002AH空間地址是中斷源的入口地址區(qū),空間地址是中斷源的入口地址區(qū),是專用單元,一般情況下用戶不能用來存放其它是專用單元,一般情況下用戶不能用來存放其它程序。程序。 CPU是根據(jù)是根據(jù)PC(程序計數(shù)器)值從程序計數(shù)器)值從ROM中中取指令來執(zhí)行的。取指令來執(zhí)行的。CPU每從每從ROM

11、中讀取一個字節(jié),中讀取一個字節(jié),自動執(zhí)行(自動執(zhí)行(PC)+1PC,即,即PC指向下一個地址指向下一個地址空間,一般情況下空間,一般情況下CPU是按是按ROM地址空間順序從地址空間順序從小到大依次執(zhí)行。只有執(zhí)行的指令是轉移類指令,小到大依次執(zhí)行。只有執(zhí)行的指令是轉移類指令,才根據(jù)轉移類指令所指示的新地址,調整才根據(jù)轉移類指令所指示的新地址,調整PC值,值,然后根據(jù)新的然后根據(jù)新的PC值從對應的地址空間中取指令來值從對應的地址空間中取指令來執(zhí)行。執(zhí)行。 當調用子程序或中斷發(fā)生時,當調用子程序或中斷發(fā)生時,PC值也會改變。值也會改變。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原

12、理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)2、內(nèi)部數(shù)據(jù)存儲器(內(nèi)、內(nèi)部數(shù)據(jù)存儲器(內(nèi)RAM) AT89S51單片機內(nèi)部有單片機內(nèi)部有128B字節(jié)劃分為三部分:字節(jié)劃分為三部分:工作寄存器區(qū)、位尋址區(qū)和數(shù)據(jù)緩沖區(qū)。工作寄存器區(qū)、位尋址區(qū)和數(shù)據(jù)緩沖區(qū)。 CyACF0RS1RS0OVF1P0區(qū)區(qū)1區(qū)區(qū)2區(qū)區(qū)3區(qū)區(qū)位尋址位尋址區(qū)區(qū)數(shù)據(jù)數(shù)據(jù)緩沖緩沖區(qū)區(qū)工作寄存器區(qū)工作寄存器區(qū)8位整體操作位整體操作位尋址區(qū)位尋址區(qū)8位整體操作、位操作位整體操作、位操作堆棧與數(shù)據(jù)緩沖區(qū)堆棧與數(shù)據(jù)緩沖區(qū)8位整體操作位整體操作0007H080FH1017H181FH202FH位地址位地址D7D0PSW07H 06H 05H 04

13、H03H 02H 01H 00HD7D020H(字節(jié)地址)字節(jié)地址)(R0R7)307FH單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(1)工作寄存器區(qū))工作寄存器區(qū) 從從00H1FH共共32個單元為工作寄存器區(qū),每個單元為工作寄存器區(qū),每8個一組,分為個一組,分為4個區(qū),依次為:個區(qū),依次為: 0區(qū)(區(qū)(00H07H) 1區(qū)(區(qū)(08H0FH) 2區(qū)(區(qū)(10H17H) 3區(qū)(區(qū)(18H1FH) 在任一時刻只有一個區(qū)作為當前的工作寄存在任一時刻只有一個區(qū)作為當前的工作寄存器區(qū),相應的空間單元作為工作寄存器使用。器區(qū),相應的空間單元作為

14、工作寄存器使用。工作寄存器區(qū)的選擇可通過程序狀態(tài)字工作寄存器區(qū)的選擇可通過程序狀態(tài)字PSW中中的的D4、D3位實現(xiàn)。不是當前工作寄存器區(qū)的可位實現(xiàn)。不是當前工作寄存器區(qū)的可以作為一般的以作為一般的RAM空間使用??臻g使用。 操作方式:操作方式:8位整體操作。位整體操作。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(2)位尋址區(qū))位尋址區(qū) 20H2FH共計共計16個單元為位尋址區(qū),每個單元為位尋址區(qū),每個單元的個單元的8位又位操作,有位的置位又位操作,有位的置1、清、清0、取、取反以及判斷操作有自己的位地址反以及判斷操作有自己的位地址

15、。 位地址的范圍:位地址的范圍:007FH。(。(要注意和內(nèi)要注意和內(nèi)RAM空間單元地址的區(qū)別)空間單元地址的區(qū)別) 位尋址區(qū)空間單元操作的有兩種方法,即位尋址區(qū)空間單元操作的有兩種方法,即可以象其它可以象其它RAM空間一樣進行空間一樣進行8位整體操作,位整體操作,也可以通過位地址對這些空間單元的某一。也可以通過位地址對這些空間單元的某一。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)字節(jié)字節(jié)地址地址位位 地地 址址D7D6D5D4D3D2D1D02FH7FH7EH7DH7CH7BH7AH79H78H2EH77H76H75H74H73H7

16、2H71H70H2DH6FH6EH6DH6CH6BH6AH69H68H2CH67H66H65H64H63H62H61H60H2BH5FH5EH5DH5CH5BH5AH59H58H2AH57H56H55H54H53H52H51H50H29H4FH4EH4DH4CH4BH4AH49H48H28H47H46H45H44H43H42H41H40H27H3FH3EH3DH3CH3BH3AH39H38H26H37H36H35H34H33H32H31H30H25H2FH2EH2DH2CH2BH2AH29H28H24H27H26H25H24H23H22H21H20H23H1FH1EH1DH1CH1BH1AH1

17、9H18H22H17H16H15H14H13H12H11H10H21H0FH0EH0DH0CH0BH0AH09H08H20H07H06H05H04H03H02H01H00H位尋址區(qū)的位地址映象表位尋址區(qū)的位地址映象表單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)位尋址區(qū)的位地址形式有兩種:位地址和位編號。位尋址區(qū)的位地址形式有兩種:位地址和位編號。位地址07H 06H 05H 04H03H 02H 01H 00HD7D020H(字節(jié)地址) 如如20H單元的單元的8個位個位位地址為:位地址為:00H07H位編號為:位編號為:20H.020H

18、.7 它們的含義是一致的,都表示它們的含義是一致的,都表示20H單元的位地址,單元的位地址,在應用中可以互換,位編號更便于記憶。在應用中可以互換,位編號更便于記憶。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(3)堆棧與數(shù)據(jù)緩沖區(qū))堆棧與數(shù)據(jù)緩沖區(qū) 30H7FH為數(shù)據(jù)緩沖區(qū),用于存放數(shù)據(jù)和中間結為數(shù)據(jù)緩沖區(qū),用于存放數(shù)據(jù)和中間結果,起到數(shù)據(jù)緩沖的作用,這些空間數(shù)據(jù)的操作是果,起到數(shù)據(jù)緩沖的作用,這些空間數(shù)據(jù)的操作是8位的整體操作位的整體操作 。3、特殊功能寄存器(、特殊功能寄存器(SFR) 51系列單片機的狀態(tài)字、并行口、串行口、定時器

19、系列單片機的狀態(tài)字、并行口、串行口、定時器和中斷系統(tǒng)的寄存器等,是一些有專門用途的寄存器,和中斷系統(tǒng)的寄存器等,是一些有專門用途的寄存器,稱為特殊功能寄存器稱為特殊功能寄存器SFR,離散地分布在離散地分布在80HFFH地址地址范圍內(nèi)。范圍內(nèi)。 SFR操作同內(nèi)部操作同內(nèi)部RAM的操作,其中字節(jié)地址能被的操作,其中字節(jié)地址能被8整除的特殊功能器,它們的每一位也有自己的位地址,整除的特殊功能器,它們的每一位也有自己的位地址,也可以進行位操作。字節(jié)地址不能被也可以進行位操作。字節(jié)地址不能被8整除的特殊功能寄整除的特殊功能寄存器,只能存器,只能8位的整體操作。位的整體操作。8位整體操作既可以對它們位整體

20、操作既可以對它們的字節(jié)地址操作,也可以對它們的符號(名稱)操作。的字節(jié)地址操作,也可以對它們的符號(名稱)操作。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)幾個常用的特殊功能寄存器:幾個常用的特殊功能寄存器: (1)累加器累加器ACC 累加器累加器ACC是是51系列單片系列單片機最常用的寄存器,許多指令都用到累加機最常用的寄存器,許多指令都用到累加器,特別是算術運算都需要用到,在指令器,特別是算術運算都需要用到,在指令中中ACC簡寫為簡寫為A。(2)寄存器寄存器B 乘除法指令都要用到寄存器乘除法指令都要用到寄存器B,B也可以作為一般的寄

21、存器使用。也可以作為一般的寄存器使用。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(3)程序狀態(tài)字寄存器)程序狀態(tài)字寄存器PSW , PSW反映的反映的程序運行的狀態(tài),其結構和含義如下表所程序運行的狀態(tài),其結構和含義如下表所示。示。 位編號位編號PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位地址位地址D7HD6HD5HD4HD3HD2HD1HD0H位定義位定義CyACF0RS1RS0OVF1PCy進位標志。進位標志。 累加器累加器A在執(zhí)行加減法運算中,如果最高在執(zhí)行加減法運算中,如果最高位有進位或借

22、位,位有進位或借位,Cy置置1,否則清,否則清0,用于無,用于無符號數(shù)運算。另符號數(shù)運算。另Cy還是位操作累加器,在指還是位操作累加器,在指令中簡寫為令中簡寫為C。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)OV溢出標志。溢出標志。 累加器累加器A在執(zhí)行加減法運算中,如果最高在執(zhí)行加減法運算中,如果最高位和次高位只有一個進位或借位,位和次高位只有一個進位或借位,OV置置1,否則清否則清0,用于有符號數(shù)的運算。,用于有符號數(shù)的運算。AC進位標志輔助。進位標志輔助。 累加器執(zhí)行加法運算時,低累加器執(zhí)行加法運算時,低4位向高位向高4位進位進

23、位時置位時置1,否則清,否則清0。BCD碼加法運算調整標碼加法運算調整標志。志。P奇偶標志。奇偶標志。 表示累加器表示累加器A中中“1”的個數(shù)的奇偶性。如的個數(shù)的奇偶性。如果果A中中“1”的個數(shù)為奇數(shù),則的個數(shù)為奇數(shù),則P置置1,否則清,否則清0 。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)F0、F1用戶標志。用戶標志。 與位尋址區(qū)的位地址功能相同。與位尋址區(qū)的位地址功能相同。RS1、RS0工作寄存器區(qū)選擇位。工作寄存器區(qū)選擇位。 工作寄存器區(qū)有工作寄存器區(qū)有4個,每次只有一個區(qū)當個,每次只有一個區(qū)當作工作寄存器用,通過作工作寄存器用

24、,通過RS1、RS0可以選擇它可以選擇它們中的一個。們中的一個。 RS1、RS0=000區(qū)(區(qū)(00H07H) RS1、RS0=011區(qū)(區(qū)(08H0FH) RS1、RS0=102區(qū)(區(qū)(10H17H) RS1、RS0=113區(qū)(區(qū)(18H1FH)單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)例例2-1 設設A中有下面的加法運算,分析中有下面的加法運算,分析PSW中有關中有關位的值,及其表示的含義。位的值,及其表示的含義。 0 1 1 0 0 1 1 1 + 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 最高位沒有向更高

25、位進位,因此最高位沒有向更高位進位,因此Cy=0,表明如表明如果我們把這兩個數(shù)看作無符號數(shù),它們的和沒有超果我們把這兩個數(shù)看作無符號數(shù),它們的和沒有超過過256。 次高位向最高位進位,最高位沒有進位,因此次高位向最高位進位,最高位沒有進位,因此OV=1,表明如果我們把這兩個數(shù)看作有符號數(shù),表明如果我們把這兩個數(shù)看作有符號數(shù),它們的和超出了范圍,顯然兩個正數(shù)相加,不可能它們的和超出了范圍,顯然兩個正數(shù)相加,不可能得到負數(shù)。得到負數(shù)。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng) 低低4位向高位向高4位進位,位進位,AC=1,表明如果把表明

26、如果把這兩個數(shù)看作是這兩個數(shù)看作是BCD碼表示的數(shù),需要在低碼表示的數(shù),需要在低4位加位加6調整才能得到結果仍是調整才能得到結果仍是BCD碼的正確結碼的正確結果。顯然看作果。顯然看作BCD碼,兩個分別是碼,兩個分別是67和和29,相,相加后得到加后得到96,低,低4位加位加6可得可得96的的BCD碼。碼。 加法運算的結果是放在加法運算的結果是放在A中的,中的,8位中共有位中共有2個個“1”,因此,因此P=0,表明此時累加器中的數(shù)表明此時累加器中的數(shù)據(jù)滿足偶校驗。據(jù)滿足偶校驗。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(4)數(shù)據(jù)指針)

27、數(shù)據(jù)指針DPTR0、DPTR1。 AT89S51單片機內(nèi)部有兩個數(shù)據(jù)指針(都單片機內(nèi)部有兩個數(shù)據(jù)指針(都是是16位),但在某一時刻只能使用其中一個作位),但在某一時刻只能使用其中一個作為數(shù)據(jù)指針為數(shù)據(jù)指針DPTR,由輔助寄存器由輔助寄存器1 (AUXR1)的的DPS位控制,位控制,DPS=0,選擇選擇DPTR0的兩個的兩個8位位的寄存器構成數(shù)據(jù)指針,的寄存器構成數(shù)據(jù)指針,DPS=1,選擇選擇DPTR1的兩個的兩個8位的寄存器構成數(shù)據(jù)指針。統(tǒng)一用位的寄存器構成數(shù)據(jù)指針。統(tǒng)一用DPH表示表示DPTR的高的高8 位,位,DPL表示低表示低8位??梢允???梢允徽w操作,也可以分開按六位整體操作,

28、也可以分開按8位操作。位操作。 在實際的應用中在實際的應用中DPTR一般用來一般用來存放存放ROM空間或外部空間或外部RAM空間的空間的地址地址。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)一、一、匯編語言指令的基本格式匯編語言指令的基本格式 1、51系列單片機匯編語言指令格式由系列單片機匯編語言指令格式由4部分構成:部分構成:標號:操作碼 目的操作數(shù),源操作數(shù) ;注釋。(1)標號:為該指令的符號地址,根據(jù)需要設置。)標號:為該指令的符號地址,根據(jù)需要設置。 標號以字母開頭,由字母、數(shù)字和下畫線組成的標號以字母開頭,由字母、數(shù)字和下畫

29、線組成的字符串,字符串的最后必須有字符串,字符串的最后必須有“:” ,系統(tǒng)的保留,系統(tǒng)的保留字不能作為標號字不能作為標號 。 標號是該指令的符號地址,它的實質是反映該指標號是該指令的符號地址,它的實質是反映該指令在令在ROM中的地址(存放位置),因此在同一個程中的地址(存放位置),因此在同一個程序中標號不可重復。序中標號不可重復。 標號在程序中主要是作為其它轉移類指令的目的標號在程序中主要是作為其它轉移類指令的目的地址,或子程序的名稱。地址,或子程序的名稱。 指令舉例:LOOP:MOV A,20H;將20H單 ;元內(nèi)容送 ;累加器A單片機單片機實用教程實用教程第第2章章 AT89S51單片機原

30、理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(2)操作碼)操作碼 操作碼是每條匯編語言指令都必須有的,它是操作碼是每條匯編語言指令都必須有的,它是51系列單片機指令系統(tǒng)規(guī)定的助記符,規(guī)定某條指令的系列單片機指令系統(tǒng)規(guī)定的助記符,規(guī)定某條指令的操作功能。操作功能。 (3)操作數(shù))操作數(shù) 操作數(shù)是參與操作的數(shù)據(jù)或地址。不同功能的指操作數(shù)是參與操作的數(shù)據(jù)或地址。不同功能的指令,操作數(shù)的個數(shù)是不同的,在令,操作數(shù)的個數(shù)是不同的,在03個之間。在書寫個之間。在書寫時操作數(shù)和操作碼之間要留有空格,當有多個操作數(shù)時操作數(shù)和操作碼之間要留有空格,當有多個操作數(shù)時,操作數(shù)之間要用時,操作數(shù)之間要用“,”隔開,前面的

31、操作數(shù)稱為隔開,前面的操作數(shù)稱為目的操作數(shù),后面的稱為源操作數(shù)。目的操作數(shù),后面的稱為源操作數(shù)。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(4)注釋。是對該條指令的說明,便于閱讀)注釋。是對該條指令的說明,便于閱讀和理解程序功能。必須以和理解程序功能。必須以“;”開始。開始。 二、51系列單片機匯編語言指令中系列單片機匯編語言指令中常用符號常用符號 即操作數(shù)的符號。即操作數(shù)的符號。(1)Rn:當前工作寄存器區(qū)的當前工作寄存器區(qū)的8個工作寄存?zhèn)€工作寄存器器R0R7,n=07。(2)Ri:當前工作寄存器當前工作寄存器R0和和R1, i=

32、0,1。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(3)direct:8位的直接地址,代表內(nèi)部位的直接地址,代表內(nèi)部RAM 00H7FH單元,以及特殊功能寄存器單元,以及特殊功能寄存器的字節(jié)地址或名稱。的字節(jié)地址或名稱。(4)Ri:8位的間接地址,也代表內(nèi)部位的間接地址,也代表內(nèi)部RAM 00H7FH的某一單元,此時工作寄存的某一單元,此時工作寄存器器Ri的內(nèi)容是多少,就代表相應的單元。的內(nèi)容是多少,就代表相應的單元。 用間址尋址的優(yōu)點之一是循環(huán)方便。用間址尋址的優(yōu)點之一是循環(huán)方便。 (5)#data:8位的立即數(shù),所謂立即數(shù)就是位的

33、立即數(shù),所謂立即數(shù)就是指令中直接參與操作的數(shù)據(jù)。指令中直接參與操作的數(shù)據(jù)。(6)#data16:16位的立即數(shù)。位的立即數(shù)。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(7)bit:位地址。代表內(nèi)部位地址。代表內(nèi)部RAM 位尋址位尋址區(qū)區(qū) (20H2FH)中可尋址位以及中可尋址位以及SFR中的中的可尋址位。具體的形式可以是位地址、位可尋址位。具體的形式可以是位地址、位編號以及位定義。編號以及位定義。(8)addr16:十六位的目的地址。十六位的目的地址。(9)addr11:11位的目的地址。位的目的地址。(10)rel:帶符號的帶符號的

34、8位偏移地址。范圍是位偏移地址。范圍是 +127 128。 X:某寄存器或某單元某寄存器或某單元 (X):某寄存器或某單元中的內(nèi)容。某寄存器或某單元中的內(nèi)容。 :指令執(zhí)行后數(shù)據(jù)傳送的方向。:指令執(zhí)行后數(shù)據(jù)傳送的方向。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng) 操作數(shù)在具體程序中是數(shù)字形式或操作數(shù)在具體程序中是數(shù)字形式或標號,標號,direct、data、bit可以用二進制數(shù)、可以用二進制數(shù)、十進制數(shù)或十六進制數(shù)書寫,用十六進十進制數(shù)或十六進制數(shù)書寫,用十六進制數(shù)時,如果高位是制數(shù)時,如果高位是A、B、C、D、E、F時,必須在數(shù)的前面加

35、時,必須在數(shù)的前面加0,以便和標號,以便和標號區(qū)別開來。區(qū)別開來。addr16、addr11、rel在程序在程序中的形式就是編程者所起的標號名稱。中的形式就是編程者所起的標號名稱。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)三、內(nèi)部內(nèi)部RAM的操作指令的操作指令 1、內(nèi)、內(nèi)RAM間的數(shù)據(jù)傳送指令間的數(shù)據(jù)傳送指令 MOV 目的操作數(shù)目的操作數(shù),源操作數(shù)源操作數(shù) “MOV”是操作碼,英語是操作碼,英語MOVE的的簡寫,功能就是把源操作數(shù)傳送到目的操簡寫,功能就是把源操作數(shù)傳送到目的操作數(shù),源操作數(shù)保持不變,操作數(shù)就是我作數(shù),源操作數(shù)保持不

36、變,操作數(shù)就是我們前面講的們前面講的A、Rn、direct、Ri、data。(1)以累加器以累加器A為目的地址傳送指令為目的地址傳送指令單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(1)以累加器)以累加器A為目的地址傳送指令為目的地址傳送指令1) MOV A,Rn ;ARn,Rn里的內(nèi)容送里的內(nèi)容送 ;到累加器;到累加器A2) MOV A,direct;A(direct),),direct ;單元里的內(nèi)容送單元里的內(nèi)容送A3) MOV A,Ri ;A(Ri),),內(nèi)部內(nèi)部RAM ;某一單元里某一單元里(以(以Ri里的里的 ;內(nèi)容為地址的

37、單元);內(nèi)容為地址的單元) ;的內(nèi)容送到累加器;的內(nèi)容送到累加器A4) MOV A,#data ;Adata 8位的立即位的立即 ;數(shù)送到累加器;數(shù)送到累加器A單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(2)以工作寄存器)以工作寄存器Rn 為目的地址傳送指令為目的地址傳送指令 1) MOV Rn,A ;RnA 2) MOV Rn,direct ;Rn(direct) 3) MOV Rn,#data ;Rndata注意:工作寄存器相互間、注意:工作寄存器相互間、Rn與與Ri之間、之間、R0與與R1之間沒有傳送指令。之間沒有傳送指令。單片

38、機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)(3)以)以direct為目的地址傳送指令為目的地址傳送指令 1)MOV direct,A ;(;(direct)A 2)MOV direct,Rn ;(;(direct)Rn 3)MOV direct1,direct2 ;(;(direct1) ;(;(direct2) 4)MOV direct,Ri ;(;(direct) ;(;(Ri) 5)MOV direct,#data ;(;(direct)data單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理

39、與基本應用系統(tǒng)(4)以)以Ri為目的地址傳送指令為目的地址傳送指令 1)MOV Ri,A ;(;(Ri)A2)MOV Ri,direct ;(;(Ri)(direct)3)MOV Ri,#data ;(;(Ri)data單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng) 例例2-2 分析下面程序運行的結果分析下面程序運行的結果MOV A,#30H ;A30H,即,即A=30HMOV R0,A ;R0A,即,即R0=30HMOV 70H,R0 ;(;(70H)R0, ;即(即(70H)=30HMOV R0, #55H ;(;(R0)55H, ;

40、即(即(30H)=55HMOV R1,30H ;R1(30H),), ;即;即R1=(30H)=55HMOV 55H,#0AAH ;(;(55H)AAH, ;即(即(55H)=AAHMOV 40H,R1 ;(;(40H)(R1),), ;即(即(40H)=(55H)=AAH單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)2、累加器、累加器A的清零與取反指令的清零與取反指令 CLR A ;A0,將累加器將累加器A的內(nèi)容的內(nèi)容 ;清為;清為0 CPL A ;將累加器將累加器A的內(nèi)容按位的內(nèi)容按位 ;取反;取反3 16位數(shù)據(jù)傳送指令位數(shù)據(jù)傳送指令

41、 MOV DPTR,#data16 ;data16DPTR 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)4、位操作指令、位操作指令 1)位置)位置1指令指令SETB bit ;bit1SETB C ;C12)位清位清0指令指令CLR bit ;bit0CLR C ;C03)位取反指令位取反指令CPL bit ;bitbitCPL C ;CC單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)4)位傳送指令)位傳送指令MOV bit,C ;bitCMOV C,bit ;Cbit 位操作指令

42、中位操作指令中bit的形式可以是位地址、位編號的形式可以是位地址、位編號和位定義,例如:和位定義,例如:CLR 0D4HSETB 0D3HCLR PWS.4SETB PWS.3CLR RS1SETB RS0三組指令的功能是一致的,都是選擇工三組指令的功能是一致的,都是選擇工作寄存器作寄存器1區(qū)作為當前工作寄存器。區(qū)作為當前工作寄存器。注意:以字母為開頭的地址前要加零,以和整個程序中轉移的標號相區(qū)別。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)一、一、P0口口 作為作為I/OI/O使用時:使用時: CPUCPU有關指令有關指令執(zhí)行產(chǎn)生的時

43、序信執(zhí)行產(chǎn)生的時序信號使這時的號使這時的“控制控制”為為0 0,電子開關接,電子開關接通通B B端,端,“地址地址/ /數(shù)數(shù)據(jù)據(jù)”信號與后面的信號與后面的電路聯(lián)系被切斷,電路聯(lián)系被切斷,同時使與門輸出同時使與門輸出0 0,V1V1截止,使輸出級截止,使輸出級為開漏輸出電路為開漏輸出電路。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)1、作為輸出口、作為輸出口 此時輸出級是開漏狀態(tài),所以要外接上拉此時輸出級是開漏狀態(tài),所以要外接上拉電阻。電阻。 1)輸出)輸出0 “0”在寫鎖存器信號作用下,輸出到在寫鎖存器信號作用下,輸出到Q,Q輸出輸出

44、“1”,使,使V2導通,在引腳上輸出導通,在引腳上輸出0(低電平)。(低電平)。 2)輸出)輸出1 “1”在寫鎖存器信號作用下,輸出到在寫鎖存器信號作用下,輸出到Q,Q輸出輸出 “0”,使,使V2截至,在引腳上輸出截至,在引腳上輸出1(高電平)。(高電平)。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)2、作為輸入口、作為輸入口 作為輸入口使用時,作為輸入口使用時,V2必須截至,外信號才能加必須截至,外信號才能加到引腳上。當向鎖存器寫入到引腳上。當向鎖存器寫入“1”時,時,V2截止,在做截止,在做輸入操作之前先向鎖存器寫入輸入操作之前先向

45、鎖存器寫入“1”,引腳上的信號在引腳上的信號在“讀引腳讀引腳”信號作用下讀入單片機內(nèi)部。信號作用下讀入單片機內(nèi)部。3、讀、讀修改修改寫寫 “讀讀修改修改寫寫”操作是對操作是對I/O的邏輯運算操作,的邏輯運算操作,該類指令操作時,該類指令操作時,CPU時序使時序使“讀鎖存器讀鎖存器”信號有信號有效,將鎖存器的狀態(tài)讀入單片機內(nèi)部,與指令中的操效,將鎖存器的狀態(tài)讀入單片機內(nèi)部,與指令中的操作數(shù)進行邏輯運算,再將運算結果寫入鎖存器,在引作數(shù)進行邏輯運算,再將運算結果寫入鎖存器,在引腳上輸出。腳上輸出。 P0口的負載能力:口的負載能力:8個個LSTTL門電路。門電路。單片機單片機實用教程實用教程第第2章

46、章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)二、二、P1口口 作為作為I/O使用時:使用時: 和和P0口有類似的功口有類似的功能。能。與與P0口的區(qū)別:口的區(qū)別: 1、P1口內(nèi)部有上拉口內(nèi)部有上拉電阻,在作為輸出口使電阻,在作為輸出口使用時不需接上拉電阻。用時不需接上拉電阻。 2、P1口的驅動能力口的驅動能力是是4個個LSTTL門電路。門電路。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)三、三、P2口口 1、作為、作為I/O使用時:使用時: CPU有關指令執(zhí)有關指令執(zhí)行產(chǎn)生的時序信號使行產(chǎn)生的時序信號使這時的這時的

47、“控制控制”為為0,電子開關接通電子開關接通B端,端,“地址地址”信號與后面信號與后面的電路聯(lián)系被切斷。的電路聯(lián)系被切斷。2、作為、作為I/O口使用時:口使用時: P2口性能與口性能與P1口口相同。相同。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)四、四、P3口口 1、作為、作為I/O口使用時,口使用時,P3口口的性能與的性能與P1口相同??谙嗤?2、P3口的第二功能??诘牡诙δ堋?1)第二功能輸出)第二功能輸出 需向該位的鎖存器寫入需向該位的鎖存器寫入“1”,使與非門的輸出只受,使與非門的輸出只受“第二功能輸出第二功能輸出”控制,

48、第二功控制,第二功能輸出信號通過與非門和輸出級能輸出信號通過與非門和輸出級電路到該位的引腳上;電路到該位的引腳上; 2)P3口的某位作為第二功口的某位作為第二功能輸入使用時,該位的鎖存器和能輸入使用時,該位的鎖存器和“第二功能輸出第二功能輸出”端會自行置端會自行置“1”,V截止,該位引腳上的截止,該位引腳上的信號通過緩沖器送入信號通過緩沖器送入“第二功能第二功能輸入輸入” 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)P3口的第二功能:口的第二功能: P3.0RXD:串行口輸入端;串行口輸入端; P3.1TXD:串行口輸出端;串行口輸出端

49、; P3.2INT0:外部中斷外部中斷0中斷請求信號輸入端;中斷請求信號輸入端; P3.3INT1:外部中斷外部中斷1中斷請求信號輸入端;中斷請求信號輸入端; P3.4T0:定時定時/計數(shù)器計數(shù)器0外部信號輸入端;外部信號輸入端; P3.5T1:定時定時/計數(shù)器計數(shù)器1外部信號輸入端;外部信號輸入端; P3.6WR:外:外RAM寫選通信號輸出端;寫選通信號輸出端; P3.7RD:外:外RAM讀選通信號輸出端;讀選通信號輸出端;單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)五、I/O口的操作 I/O口的操作指令口的操作指令 :內(nèi)部:內(nèi)部RA

50、M操作指令。操作指令。操作的方式有兩種:操作的方式有兩種:8位整體操作和位操作。位整體操作和位操作。 以以P1口為例口為例 輸出操作:輸出操作:MOV P1,#55H ;將;將55H立即數(shù)從立即數(shù)從P1口輸出口輸出MOV P1,A ;將累加器將累加器A中的內(nèi)容從中的內(nèi)容從P1口輸出口輸出SETB P1.0 ;在;在P1.0引腳輸出高電平引腳輸出高電平CLR P1.1 ;在;在P1.1引腳輸出低電平引腳輸出低電平單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)輸入操作:輸入操作:MOV P1,#0FFH ;向;向P1口的口的8位鎖存器都寫入位

51、鎖存器都寫入“1”MOV A,P1;將;將P1口口8個引腳上的信號送入累加器個引腳上的信號送入累加器AMOV P1,#0FFH ;向;向P1口的口的8位鎖存器都寫入位鎖存器都寫入“1”MOV R0,P1 ;將;將P1口口8個引腳上的信號送入個引腳上的信號送入R0中中SETB P1.0 ;向;向P1.0的鎖存器寫入的鎖存器寫入“1”MOV C,P1.0 ;將;將P1.0引腳的信號讀到引腳的信號讀到Cy中中單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)I/O口小結:口小結:1、作為輸出口使用,、作為輸出口使用,P0口需外接上拉電阻,其余口不口

52、需外接上拉電阻,其余口不需外接上拉電阻。需外接上拉電阻。2、作為輸入口使用時,都需先向對應的鎖存器寫入、作為輸入口使用時,都需先向對應的鎖存器寫入“1”。3、每一位可任意地作為輸入口或輸入口使用,一般用、每一位可任意地作為輸入口或輸入口使用,一般用低電平驅動外部電路。低電平驅動外部電路。4、P0口每位的負載能力是口每位的負載能力是8個個LSTTL門電路,門電路,P1、P2、P3口每位負載能力為口每位負載能力為4個個LSTTL門電路。門電路。5、I/O口的輸入口的輸入/輸出指令同內(nèi)輸出指令同內(nèi)RAM操作指令。操作指令。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)

53、單片機原理與基本應用系統(tǒng)一、最小硬件系統(tǒng) 1、電源、電源 (+5V)2、時鐘電路時鐘電路 與時序有關的概念:與時序有關的概念:(1)時鐘周期。即時鐘頻率的倒數(shù))時鐘周期。即時鐘頻率的倒數(shù)(2)狀態(tài)周期。兩個時鐘周期構成)狀態(tài)周期。兩個時鐘周期構成一個狀態(tài)周期。一個狀態(tài)周期。 (3)機器周期。)機器周期。 12個時鐘周期構成一個機器周期,指令的執(zhí)個時鐘周期構成一個機器周期,指令的執(zhí)行都是以機器周期為時間單位。行都是以機器周期為時間單位。 (4)指令字節(jié)。指某條指令占用存儲空間的長度)指令字節(jié)。指某條指令占用存儲空間的長度 3、復位電路、復位電路 (1)復位條件)復位條件 :兩個機器周期以上的高電

54、平。:兩個機器周期以上的高電平。 (2)復位后的狀態(tài):)復位后的狀態(tài):單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)單片機單片機復位后各寄存器狀態(tài):復位后各寄存器狀態(tài): PC: 0000H TMOD: 00H ACC: 00H TCON: 00H B: 00H TH0: 00H PSW: 00H TL0: 00H SP: 07H TH1: 00H DP0H: 00H TL1: 00H DP0L: 00H SCON: 00H DP1H: 00H SBUF: B DP1L: 00H PCON: 00000BP0P3: FFH WDTRST:

55、B IP: 00000B AUXR: 000B IE: 000000B AUXR1: 0B。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)二、匯編語言程序一般結構二、匯編語言程序一般結構 ORG 0000H ;匯編程序開頭匯編程序開頭 LJMP SETUP ;跳過中斷入口地址區(qū)跳過中斷入口地址區(qū) ;中斷入口地址區(qū);中斷入口地址區(qū) ORG 0030HSETUP: ;初始化區(qū)初始化區(qū)MAIN: ;主程序區(qū)主程序區(qū) LJMP MAIN ;主程序一般是反復循環(huán)執(zhí)行程序主程序一般是反復循環(huán)執(zhí)行程序 ;子程序和中斷服務程序區(qū);子程序和中斷服務程序區(qū)

56、END ;匯編程序結束匯編程序結束注:此程序又被稱做最小軟件系統(tǒng)。單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)1、無條件轉移指令、無條件轉移指令 (1)長轉移指令)長轉移指令 LJMP addr16 ;PCaddr16,轉移范圍為轉移范圍為64KB(2)短轉移指令短轉移指令 AJMP addr11 ;PCPC+2,PC100addr11, ;PC1511不變不變(3)相對轉移指令)相對轉移指令 SJMP rel ;PCPC+2,PCPC+rel 如果轉移指令到自己本身,可以省略指令前面的標號,如果轉移指令到自己本身,可以省略指令前面的標

57、號,而用而用“$”代替轉移的目標地址,下面的指令是等價的:代替轉移的目標地址,下面的指令是等價的: HERE:SJMP HERESJMP $ HERE:LJMP HERELJMP $單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng)2、偽指令、偽指令 匯編:將匯編語言程序和匯編:將匯編語言程序和C語言程序轉換成機器語言的過程語言程序轉換成機器語言的過程稱為稱為“匯編匯編”或或“編譯編譯”。 注:匯編有手工匯編和計算機匯編。注:匯編有手工匯編和計算機匯編。 偽指令:計算機在匯編過程中需要編程人員提供一些有關匯偽指令:計算機在匯編過程中需要編程人

58、員提供一些有關匯編信息的指令,如:指定程序或數(shù)據(jù)存放的其始位置、匯編的結編信息的指令,如:指定程序或數(shù)據(jù)存放的其始位置、匯編的結束等,這些指令在匯編時不產(chǎn)生機器碼,僅對匯編過程起一些控束等,這些指令在匯編時不產(chǎn)生機器碼,僅對匯編過程起一些控制作用,為匯編服務,這些指令不屬于制作用,為匯編服務,這些指令不屬于51系列單片機的指令系統(tǒng),系列單片機的指令系統(tǒng),我們稱它們?yōu)閭沃噶?。我們稱它們?yōu)閭沃噶睢?(1)ORG 起始偽指令起始偽指令 格式:格式:ORG 16位地址位地址 功能:指定其下面的程序在存儲空間的起始地址。例如:功能:指定其下面的程序在存儲空間的起始地址。例如: ORG 0000H LJM

59、P SETUP ORG 0000H表示它下面的指令表示它下面的指令LJMP SETUP在在ROM空間空間的的0000H單元開始存放。單元開始存放。 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機原理與基本應用系統(tǒng) (2)END 結束偽指令結束偽指令 格式:格式:END 功能:表明匯編源程序的結束。功能:表明匯編源程序的結束。3、匯編語言程序一般結構、匯編語言程序一般結構 (1)程序的開頭)程序的開頭 ORG 0000H LJMP SETUP (2)中斷入口地址區(qū)中斷入口地址區(qū) 0003H002BH這段存儲空間是作為中斷入口地址這段存儲空間是作為中斷入口地址

60、 (3)初始化區(qū))初始化區(qū) 系統(tǒng)開始運行的初始參數(shù)設置,如果系統(tǒng)中用到中斷資源系統(tǒng)開始運行的初始參數(shù)設置,如果系統(tǒng)中用到中斷資源 (4)主程序區(qū))主程序區(qū) 主程序的內(nèi)容往往是主程序的內(nèi)容往往是CPU需要不斷反復處理的任務,最常需要不斷反復處理的任務,最常用的就是顯示程序和鍵盤程序。主程序一般是一個反復執(zhí)行的用的就是顯示程序和鍵盤程序。主程序一般是一個反復執(zhí)行的程序。程序。 (5)子程序和中斷服務程序區(qū))子程序和中斷服務程序區(qū) 主程序中需要調用的子程序、中斷源的服務程序主程序中需要調用的子程序、中斷源的服務程序 單片機單片機實用教程實用教程第第2章章 AT89S51單片機原理與基本應用系統(tǒng)單片機

溫馨提示

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

評論

0/150

提交評論