單片機課程復(fù)習(xí)課件_第1頁
單片機課程復(fù)習(xí)課件_第2頁
單片機課程復(fù)習(xí)課件_第3頁
單片機課程復(fù)習(xí)課件_第4頁
單片機課程復(fù)習(xí)課件_第5頁
已閱讀5頁,還剩155頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

課程復(fù)習(xí)

課程復(fù)習(xí)2022/12/13-2-原則考前通看一遍教材重點部分準確掌握根據(jù)自己情況,確定復(fù)習(xí)方法2022/12/10-2-原則考前通看一遍教材2022/12/13-3-chap01計算機中的數(shù)制及數(shù)的轉(zhuǎn)換2,8,10,16進制相互轉(zhuǎn)換。(整數(shù)部分,小數(shù)部分)計算機中的數(shù)和編碼編碼ASCII碼機器數(shù)的真值,原碼,補碼(必考)計算機的組成:CPU(運算器和控制器),存儲器,輸入/輸出及系統(tǒng)總線等2022/12/10-3-chap01計算機中的數(shù)制及數(shù)的轉(zhuǎn)2022/12/13-4-十進制數(shù)30.375表示成十六進制數(shù)為_1E.6H_已知[X]真值=-23,則[X]原=___87_H,[X]補=_____E9___H,[2X]補=__D2__H.2022/12/10-4-十進制數(shù)30.375表示成十六進制2022/12/13-5-chap022.1.1CPU結(jié)構(gòu)1.算術(shù)邏輯部件(ALU)2.定時控制部件3專用寄存器組(**)(1)程序計數(shù)器PC(ProgramCounter)(2)累加器A(Accumulator),又記作ACC(3)通用寄存器B(4)DPTR(DPH,DPL),堆棧操作分別壓入/彈出2022/12/10-5-chap022.1.1CPU結(jié)構(gòu)2022/12/13-6-(4)

程序狀態(tài)字PSW(ProgramStatusWord)(**)反映指令執(zhí)行后的有關(guān)狀態(tài),通常是在指令執(zhí)行過程中自動形成的,也可由用戶根據(jù)需要用傳送指令加以改變.標志位的定義.(常考內(nèi)容)PSW7PSW0CyACF0RS1RS0OV--P若累加器A中1的個數(shù)為奇數(shù),則P=1;反之則為0,(偶檢驗)2022/12/10-6-(4)程序狀態(tài)字PSW(Prog2022/12/13-7-[例2.1]??贾匾R設(shè)程序執(zhí)行前F0=0,RS1,RS0=00,請問執(zhí)行如下程序后PSW中各位的狀態(tài).MOVA,#0FH;A0FHADDA,#0F8H;加運算OV=0,Cy=1,AC=1,P=11100,0001BPSW=C1H2022/12/10-7-[例2.1]??贾匾R設(shè)程序執(zhí)2022/12/13-8-(5)堆棧指針SP(StackPointer)堆棧是以先進后出(FILO,FirstInLastOut),或后進先出(LIFO,LastinFirstOut)方式工作的一段內(nèi)部RAM區(qū)域.(**)范圍00-7FH(或00-FFH,256字節(jié)內(nèi)部RAM)棧底地址固定不變,由SP初始值設(shè)定,棧頂?shù)刂肥冀K在SP中,SP是8位寄存器,能自動+1/-1,用來存放堆棧的棧頂?shù)刂?單片機初始化后SP的值為07HPUSH,POP操作時SP指針的變化.2022/12/10-8-(5)堆棧指針SP(StackP2022/12/13-9-(6)數(shù)據(jù)指針DTPR(DataPointer)數(shù)據(jù)指針是一個16位的寄存器,由兩個8位寄存器DPH和DPL組成,DPTR可用來存放片外RAM地址,或片內(nèi)/外ROM地址.MOVDPTR,#2000HMOVXA,@DPTR(**)把片外RAM地址單元2000H的內(nèi)容讀至累加器.2022/12/10-9-(6)數(shù)據(jù)指針DTPR(Da2022/12/13-10-2.1.2存儲器結(jié)構(gòu)8051的存儲器有ROM和RAM之分,還有片內(nèi)/片外之分.(51單片機是8位單片機)片內(nèi)RAM,ROM集成在芯片內(nèi)部,是其一部分.片外存儲器是專用存儲器芯片,單片機通過AB,DB,CB三總線與之相聯(lián),才能使之工作.MCS-51單片機是___8___位單片機,一般來說,可擴展的外部數(shù)據(jù)存儲器為___64K___字節(jié),程序存儲器總的容量為___64K__字節(jié)。2022/12/10-10-2.1.2存儲器結(jié)構(gòu)8051的2022/12/13-11-1.存儲器的地址分配存儲器的地址分配有3個地址空間.ROM存儲器空間(片內(nèi)/片外)地址范圍0000H-FFFFH;片內(nèi)RAM空間地址范圍00H-FFH片外RAM地址空間地址范圍0000H-FFFFH2022/12/10-11-1.存儲器的地址分配存儲器的地址2022/12/13-12-00-7FH地址空間的區(qū)分2022/12/10-12-00-7FH地址空間的區(qū)分2022/12/13-13-3,片外RAM片外RAM容量64K,地址0000-FFFFH讀/寫命令MOVXA,@Ri;MOVXA,@DPTRMOVX@Ri,AMOVX@DPTR,A2022/12/10-13-3,片外RAM片外RAM容量62022/12/13-14-5.特殊功能寄存器SFR(80H-FFH)8051或8031的SFR有21個,8052的SFR有26個,每個SFR占有一個RAM單元不為SFR占用的RAM單元實際上不存在,訪問它們是沒有意義的.在SFR中,可以通過直接尋址對其進行字節(jié)存取,也可對帶有*的11個(12個T2CON)字節(jié)寄存器的每一位進行位尋址直接尋址的表示方法有兩種使用物理地址:累加器A(E0H),B(F0H),SP(81H)采用寄存器標號:累加器ACC,B,PSW這種方法常用.2022/12/10-14-5.特殊功能寄存器SFR(80H2022/12/13-15-2.1.3I/O端口I/O端口又稱為I/O接口,通道,通路(port)串行I/O端口一次只能傳送1位二進制信息,并行I/O端口一次可以傳送一組(8位)二進制信息.1.并行I/O端口8051有4個并行I/O端口,命名為P0,1,2,3,每個端口有雙向I/O功能,輸入/出.2022/12/10-15-2.1.3I/O端口I/O端口2022/12/13-16-并行I/O端口(續(xù))4個并行I/O端口在結(jié)構(gòu)上并不相同,在功能和用途上的差異較大.除作為通過I/O口使用外,P0口可以輸出片外存儲器的低8位地址和讀寫數(shù)據(jù);P2口可輸出片外存儲器的高8位地址;P1口作為通用I/O口;P3口的第二功能.2022/12/10-16-并行I/O端口(續(xù))4個并行I/2022/12/13-17-Q:在MCS-51單片機與外部存儲器接口時,P0及P2口的功能是什么?此時,為什么PO口一般需外接一個鎖存器(如74LS373)?P0口輸出片外存儲器的低8位地址和讀寫數(shù)據(jù);P2口可輸出片外存儲器的高8位地址;P0先提供的低8位地址需經(jīng)鎖存器鎖存后,與隨后提供的數(shù)據(jù)同時提供給外部存儲器2022/12/10-17-Q:在MCS-51單片機與外部2022/12/13-18-P3口各位的第二功能2022/12/10-18-P3口各位的第二功能2022/12/13-19-2.1.4定時器/計數(shù)器(Timer/Counter)8051內(nèi)部有兩個16位的可編程定時器/計數(shù)器,T0,T1,由兩個8位寄存器組成TH0/TL0,TH1/TL1,加法計數(shù).T0和T1有定時器和計數(shù)器兩種方式定時器方式選擇寄存器TMOD定時器控制寄存器TCON2022/12/10-19-2.1.4定時器/計數(shù)器(T2022/12/13-20-2.1.5中斷系統(tǒng)中斷指CPU暫停原程序執(zhí)行轉(zhuǎn)為外部設(shè)備服務(wù)(執(zhí)行中斷服務(wù)程序ISR),并在服務(wù)完后回到原程序執(zhí)行的過程.中斷源指能產(chǎn)生中斷請求信號的來源.對5個中斷請求信號進行排隊和控制,并響應(yīng)其中優(yōu)先權(quán)最高的中斷請求.5個中斷源有內(nèi)部和外部之分.IE中斷允許控制器(InterruptEnable)IP中斷優(yōu)先級控制器(Interruptpriority)2022/12/10-20-2.1.5中斷系統(tǒng)中斷指CPU2022/12/13-21-中斷源2022/12/10-21-中斷源2022/12/13-22-與中斷系統(tǒng)相關(guān)的特殊功能寄存器中斷控制是對相應(yīng)的SFR的設(shè)置來實現(xiàn)。4個:定時器與外部中斷控制寄存器TCON;中斷優(yōu)先級控制寄存器IP;中斷允許控制寄存器IE;串行口控制寄存器SCON2022/12/10-22-與中斷系統(tǒng)相關(guān)的特殊功能寄存器中2022/12/13-23-2.2MCS-51單片機引腳功能2.2.1MCS-51單片機引腳及其功能2.2.28031對片外存儲器的連接2022/12/10-23-2.2MCS-51單片機引腳功2022/12/13-24-2.2.1MCS-51單片機引腳及其功能8051有40個引腳,共分為端口線,電源線和控制線三類.1.端口線(4*8=32個)Pi.0-Pi.7,(i=0,1,2,3)2.電源線(2條)VCC為+5V電源線,VSS為接地線3.控制線(6條)2022/12/10-24-2.2.1MCS-51單片機引2022/12/13-25-3.控制線(6條)(1)ALE+/PROG地址鎖存允許/編程線(2)/EA+Vpp允許訪問片外存儲器/編程電源(3)/PSEN

片外ROM讀選通4)RST+VPD復(fù)位/備用電源線當此引腳上出現(xiàn)兩個機器周期的高電平時,芯片復(fù)位.上電復(fù)位和開關(guān)復(fù)位兩種.(在課程設(shè)計和畢業(yè)設(shè)計中用)VPD不要求.(5)XTAL1,2外接石英晶體和電容,形成時鐘信號.2022/12/10-25-3.控制線(6條)(1)ALE+2022/12/13-26-2.3.1復(fù)位方式開機時需要復(fù)位,以使CPU以及其他功能部件處于一個確定的初始狀態(tài).復(fù)位信號是高電平有效,持續(xù)時間24個時鐘周期以上SP=07H,ALE,/PSEN,P0-P3各引腳為高電平.程序計數(shù)器PC的值0000H2022/12/10-26-2.3.1復(fù)位方式開機時需要復(fù)2022/12/13-27-2.4MCS-51單片機時序2.4.1機器周期和指令周期2.4.2MCS-51指令的取指/執(zhí)行時序(不要求)2.4.3訪問片內(nèi)ROM/RAM的指令時序(不要求)如果單片機的時鐘頻率為12MHZ,那么,它的一個時鐘周期是__0.083us__,一般來說,其機器周期為___1us__.2022/12/10-27-2.4MCS-51單片機時序2022/12/13-28-2.4.1時鐘,機器,指令周期1.時鐘周期T又稱為振蕩周期,為時鐘脈沖頻率的倒數(shù),是時序中最小/最基本的時間單位.常用的時鐘頻率6MHZ,12MHZ,11.0592MHZ2022/12/10-28-2.4.1時鐘,機器,指令周期2022/12/13-29-2.機器周期由12個時鐘周期組成,分為6個狀態(tài)(S1-S6),每個狀態(tài)分為P1,P2兩拍.12個時鐘周期分為S1P1,S1P2,…S6P1,S6P22022/12/10-29-2.機器周期由12個時鐘周期組成2022/12/13-30-3.指令周期執(zhí)行一條指令所需的時間分單周期(機器周期),雙周期指令和四周期指令(乘/除指令)2022/12/10-30-3.指令周期執(zhí)行一條指令所需的時2022/12/13-31-第3章MCS-51單片機指令系統(tǒng)3.1概述3.2尋址方式3.3數(shù)據(jù)傳送指令3.4算術(shù)邏輯運算和移位指令3.5控制轉(zhuǎn)移和位操作指令2022/12/10-31-第3章MCS-51單片機指令系2022/12/13-32-學(xué)習(xí)指令的注意事項指令的功能——該指令能夠?qū)崿F(xiàn)的操作。指令支持的尋址方式——該指令中的操作數(shù)可以采用的尋址方式指令對標志的影響——該指令執(zhí)行后是否對各個標志位有影響,以及如何影響2022/12/10-32-學(xué)習(xí)指令的注意事項2022/12/13-33-3.1

概述3.1.4指令的分類1.數(shù)據(jù)傳送指令(28條)2.算術(shù)運算指令(24條)3.邏輯操作和環(huán)移指令(25條)4.控制轉(zhuǎn)移指令(17條)5.位操作指令(17條)單片機的指令系統(tǒng)按執(zhí)行的操作或功能來分類,可分為哪幾大類?2022/12/10-33-3.1概述3.1.4指令的分2022/12/13-34-3.2尋址方式(**重要,???尋找操作數(shù)的地址(位置)的方法,稱為尋址方式.共7種(注意詳細看細節(jié))寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址2022/12/10-34-3.2尋址方式(**重要,常考2022/12/13-35-3.3數(shù)據(jù)傳送指令(28條)數(shù)據(jù)傳送是最基本,最主要的操作.C語言中賦值語句.格式:MOV<dest>,<src>目標操作數(shù),源操作數(shù)分為內(nèi)部數(shù)據(jù)傳送指令外部數(shù)據(jù)傳送指令堆棧操作指令數(shù)據(jù)交換指令以累加器A為目的操作數(shù)時影響P標志,其余指令不影響標志位.MOVPSW,A(直接影響標志寄存器?)2022/12/10-35-3.3數(shù)據(jù)傳送指令(28條)數(shù)2022/12/13-36-注意1,不要使用非法指令MOVRn,@Ri(注意)MOV#data,A(錯誤顯然)2,以A為目的寄存器的傳送指令會影響P標志位3,指令的字節(jié)數(shù),(不需估計)4,注意給程序加注釋2022/12/10-36-注意1,不要使用非法指令2022/12/13-37-3.3.2外部數(shù)據(jù)傳送指令(7條)1.16位數(shù)據(jù)傳送指令(1條)MOVDPTR,#data16(DPH,DPL)2,外部ROM的字節(jié)傳送指令MOVCA,@A+DPTRMOVCA,@A+PC用于查表指令2022/12/10-37-3.3.2外部數(shù)據(jù)傳送指令(72022/12/13-38-3.外部RAM的字節(jié)傳送指令MOVXA,@RiMOVX@Ri,AMOVXA,@DPTRMOVX@DPTR,A2022/12/10-38-3.外部RAM的字節(jié)傳送指令M2022/12/13-39-3.3.3堆棧操作指令(2條)PUSHdirect;spsp+1,(sp)(direct)POPdirect;(direct)(sp),spsp-1注意:堆棧操作是直接尋址指令,注意指令的格式正確錯誤PUSHACCPUSHAPUSH00HPUSHR0POPACCPOPAPOP00HPOPR02022/12/10-39-3.3.3堆棧操作指令(2條)2022/12/13-40-3.4算術(shù)與邏輯運算和移位指令3.4.1算術(shù)運算指令(24條)1.加法指令2.減法指令3.十進制調(diào)整指令4.乘法和除法指令3.4.2邏輯運算指令(20條)1.邏輯與運算指令2.邏輯或指令3.邏輯異或指令4.累加器清零和取反指令3.4.3移位指令(5條)2022/12/10-40-3.4算術(shù)與邏輯運算和移位指令2022/12/13-41-以下指令可不要求3.十進制調(diào)整指令4.乘法和除法指令2022/12/10-41-以下指令可不要求3.十進制調(diào)整2022/12/13-42-3.5控制轉(zhuǎn)移和位操作改變PC的內(nèi)容,控制程序執(zhí)行流向.3.5.1控制轉(zhuǎn)移指令(17條)無條件轉(zhuǎn)移條件轉(zhuǎn)移子程序調(diào)用與返回空操作AJMP,ACALL指令不要求2022/12/10-42-3.5控制轉(zhuǎn)移和位操作改變PC2022/12/13-43-(2)比較條件轉(zhuǎn)移指令4條CJNEA,#data,rel;影響CY標志ifa!=data,thenpcpc+3+relifa==data,thenpcpc+3CJNEA,direct,relCJNERn,#data,relCJNE@Ri,#data,rel2022/12/10-43-(2)比較條件轉(zhuǎn)移指令4條C2022/12/13-44-3.5.2位操作指令位操作指令的操作數(shù)不是字節(jié),而是字節(jié)中的某一位(每位取值0或1),故以稱為布爾變量操作指令.位操作指令的對象.分為位傳送,位置位,位清零,位運算及位控制轉(zhuǎn)移等4類2022/12/10-44-3.5.2位操作指令位操作指令2022/12/13-45-[例4.13]已知R0低4位有一個十六進制數(shù)(0-F中的一個),把它轉(zhuǎn)換成相應(yīng)的ASCII碼并送入R0的程序.介紹了3種方法,第二種方法不要求.2022/12/10-45-[例4.13]已知R0低4位有一2022/12/13-46-方法10-9對應(yīng)的ASCII碼30H-39Hx+30HA-F對應(yīng)的ASCII碼41H-46Hx+37H一種題型:讀懂程序,給程序加解釋.2022/12/10-46-方法10-9對應(yīng)的ASCII碼2022/12/13-47-[例4.13]程序

ORG0400HMOVA,R0ANLA,0FH;屏蔽高4位CJNEA,#10,NEXT1NEXT1:JNCNEXT2ADDA,#30H;A<10,thenAA+30HSJMPDONENEXT2:ADDA,#37H;A>=10thenAA+37HDONE:MOVR0,ASJMP$END2022/12/10-47-[例4.13]程序O2022/12/13-48-第4章匯編語言程序設(shè)計4.1匯編語言的構(gòu)成4.2匯編語言源程序的設(shè)計與匯編4.3簡單程序與分支程序設(shè)計4.4循環(huán)與查表程序設(shè)計4.5子程序與運算程序設(shè)計2022/12/10-48-第4章匯編語言程序設(shè)計4.12022/12/13-49-4.1.2匯編語言格式語句的格式標號段(:)操作碼段(空格)

操作數(shù)段(,)

(另一個操作數(shù))

(;)注釋段匯編語言源程序匯編(assembler)鏈接(link)可執(zhí)行程序2022/12/10-49-4.1.2匯編語言格式語句的格2022/12/13-50-簡述在實驗上機時,進行匯編語言程序設(shè)計的過程(1)建立匯編語言源程序,后綴名.asm,將其添加到項目(工程)文件中(2)進行匯編,鏈接生成可執(zhí)行文件,若有錯誤,進行修改.(3)進行調(diào)試(設(shè)置斷點,單步運行,觀察寄存器/存儲器等的變化等).2022/12/10-50-簡述在實驗上機時,進行匯編語言程2022/12/13-51-2指示性語句指示性語句又稱為偽指令.不會在匯編時產(chǎn)生供機器直接執(zhí)行的機器碼在匯編時供匯編程序識別和執(zhí)行的命令規(guī)定目標代碼在內(nèi)存中的存放區(qū)域ORG為源程序的符號和標號賦值DATA,EQU指示匯編的結(jié)束end2022/12/10-51-2指示性語句指示性語句又稱為偽2022/12/13-52-(1)ORG起始匯編偽指令(2)END(結(jié)束匯編)(3)EQU(賦值)(4)DATA(數(shù)值地址賦值)偽指令(5)DB偽指令DB(definebyte)定義字節(jié)(6)DW偽指令(7)DS偽指令DS(definestorage定義存儲空間)(8)BIT(位地址賦值)偽指令(不要求)2022/12/10-52-(1)ORG起始匯編偽指令2022/12/13-53-4.2匯編語言源程序的設(shè)計與匯編(不要求)注意流程圖的畫法2022/12/10-53-4.2匯編語言源程序的設(shè)計與匯2022/12/13-54-chap76264的引腳功能1,地址線A12-A0(13條)輸入2,數(shù)據(jù)線D7-D0(8條),雙向數(shù)據(jù)線3,控制線4條允許輸出線/OE,低電平有效,讀出數(shù)據(jù)送至數(shù)據(jù)總線上(可接8031讀信號/RD)片選信號線CS1和/CS1,前者為高,后者為低時,本芯片被選中.讀寫命令線/WE,若/WE為高電平,為讀出狀態(tài),若/WE為低電平,為寫入狀態(tài)(與8031的/WR信號相接)電源線(2條)VCC,與GND2022/12/10-54-chap76264的引腳功能12022/12/13-55-chap5中斷與定時系統(tǒng)中斷的定義和作用中斷是指計算機暫時停止原程序的執(zhí)行,轉(zhuǎn)而為外部設(shè)備服務(wù),即執(zhí)行中斷服務(wù)程序ISR(InterruptserviceRoutine,ISR),并在執(zhí)行完后自動返回原程序執(zhí)行的過程.中斷由中斷源產(chǎn)生,中斷源在需要時向CPU提出“中斷請求”,CPU一旦對這個電信號進行檢測和響應(yīng)便可自動轉(zhuǎn)入該中斷源的ISR,在執(zhí)行完后自動返回原程序繼續(xù)執(zhí)行。以硬件方式改變CPU的操作順序。2022/12/10-55-chap5中斷與定時系統(tǒng)中斷2022/12/13-56-中斷MCS-51的中斷源和中斷標志定時器控制寄存器TCON中斷允許寄存器IE中斷優(yōu)先級寄存器IP串行口控制寄存器SCON中斷服務(wù)程序的入口地址(**)MCS-51中斷系統(tǒng)的初始化(**)2022/12/10-56-中斷MCS-51的中斷源和中斷標2022/12/13-57-定時器/計數(shù)器8031/8051有兩個定時器/計數(shù)器T0,T18032/8052有3個定時/計數(shù)器T0,1,21,可設(shè)為定時器模式與計數(shù)器模式,每種模式有方式0,1,2,32,定時時間Tmax=2^(13,16,8)*T,T=12*1.0/fosc3,二進制加法器,由全1變?nèi)?時,產(chǎn)生溢出,申請中斷2022/12/10-57-定時器/計數(shù)器8031/80512022/12/13-58-相關(guān)的控制寄存器定時器控制寄存器2022/12/10-58-相關(guān)的控制寄存器定時器控制寄存器2022/12/13-59-2.定時器方式寄存器TMOD2022/12/10-59-2.定時器方式寄存器TMOD2022/12/13-60-定時器/計數(shù)器的初始化1.初始化步驟1)設(shè)置方式寄存器TMOD2)設(shè)置定時器/計數(shù)器的初始值TH1,0/TL1,03)設(shè)置中斷允許寄存器IE和中斷優(yōu)先級寄存器IP4)設(shè)置定時器控制寄存器TCON啟動/禁止定時器/計數(shù)器2022/12/10-60-定時器/計數(shù)器的初始化1.初始化2022/12/13-61-2.計數(shù)器初始值的計算1.計數(shù)若要計數(shù)C,則加法計數(shù)器,計數(shù)初值為TC,計數(shù)溢出值為M,有TC+C=MTC=M-C(M=2^(13,16,8))2.定時time=(M-TC)*12/fosc最大定時時間,若時鐘頻率12MHZ方式0:Tmax=2^13*1us=8.192ms方式1:Tmax=2^16*1us=65.536ms

方式2,3:Tmax=2^8*1us=0.256ms2022/12/10-61-2.計數(shù)器初始值的計算1.計數(shù)2022/12/13-62-P125例5-4題目同例5-3,但以中斷方式完成。即單片機晶振頻率為6MHz,使用定時器1以工作方式1產(chǎn)生周期為500μs的等寬連續(xù)正方波脈沖,并在P1.0端輸出。(1)計算計數(shù)初值TH1=0FFH TL1=06H書上有錯?是(2)TMOD寄存器初始化TMOD=10H2022/12/10-62-P125例5-4題目同例5-2022/12/13-63-(1)計算計數(shù)初值TH1=0FFH TL1=83H(2)TMOD寄存器初始化

TMOD=10H周期為500us,半周期為250us,單片機晶振頻率為6MHZ,定時周期12/6M=2us計數(shù)值為250/2=125計數(shù)初值為2^16-125=FF83H2^16-250=FF06H2022/12/10-63-(1)計算計數(shù)初值2022/12/13-64-第6章,第4章不要求2022/12/10-64-第6章,第4章不要求2022/12/13-65-chap07單片機的系統(tǒng)擴展7.151單片機擴展總線基礎(chǔ)3總線結(jié)構(gòu)與時序地址譯碼的方法一般采用全地址譯碼、部分地址譯碼和線選法。2022/12/10-65-chap07單片機的系統(tǒng)擴展72022/12/13-66-例7-5若單片機為8031,試采用1片2764把程序存儲器擴展為8KB,用1片62256把外部數(shù)據(jù)存儲器擴展為32KB。

P2.0-2.4P2.0-2.6存儲單元的地址范圍,地址譯碼方式,3總線的連接2022/12/10-66-例7-5若單片機為8031,試2022/12/13-67-7.351并行I/O接口的擴展1.采用鎖存器擴展簡單的8位輸出口

OUT377:--接下行

MOVDPTR,#7FFFHMOVA,#dataMOVX@DPTR,ARET2022/12/10-67-7.351并行I/O接口的擴展2022/12/13-68-2.用三態(tài)門擴展8位輸入并行口IN244:MOVDPTR,#0BFFFHMOVXA,@DPTRRET2022/12/10-68-2.用三態(tài)門擴展8位輸入并行口I2022/12/13-69-chap08單片機典型外圍接口技術(shù)8.1人機接口技術(shù)鍵盤/LED顯示的基本工作原理8.2A/D轉(zhuǎn)換器及接口技術(shù)ADC0809的引腳及功能EOC,START,OE,ALE及基本編程8.3D/A轉(zhuǎn)換器及接口技術(shù)8.4開關(guān)量接口2022/12/10-69-chap08單片機典型外圍接口2022/12/13-70-考試題型填空,選擇,簡答閱讀程序(分析,填空,解釋)匯編語言編程(編寫完整的程序)簡單的接口知識2022/12/10-70-考試題型填空,選擇,簡答2022/12/13-71-一、填空1,(376.125)D=1,0111,1000.001_B=178.2__H2,已知[X]補=1101,0010B,則[X]原=1010,1110B[X]真值=-46D,[2X]補=A4H

3,微型計算機由五大部分組成,即______4,MCS-51單片機復(fù)位后PC值為____,SP的值為____……2022/12/10-71-一、填空1,(376.125)D2022/12/13-72-二、選擇題MCS-51單片機的定時/計數(shù)器T0,T1采用什么計數(shù)器?A,加法,B減法,C,可逆,D,不確定三、敘述簡答題1,什么是堆棧?堆棧指針SP的作用是什么?2,什么是中斷,與中斷系統(tǒng)有關(guān)的SFR有哪些?2022/12/10-72-二、選擇題2022/12/13-73-四、閱讀程序…(略)1,這個程序的功能是什么?2,執(zhí)行完后,某寄存器,某存儲單元的內(nèi)容是什么?3,讀懂程序,加注釋.五、編程簡單程序,一般超過20行的復(fù)雜程序不要求從已有程序中得到參考六單片機擴展或接口技術(shù)2022/12/10-73-四、閱讀程序2022/12/13-74-[例4.13]程序的查表求解,注釋的寫法ORG0000HMOVA,R0;取數(shù)至ACCANLA,#0FH;取出其低4位MOVDPTR,#ASCTAB;將表的首地址賦給DPTRMOVCA,@A+DPTR;查表MOVR0,A;將結(jié)果送回R0SJMP$ASCTAB:DB‘0’,’1’,’2’,’3’,’4’DB…DB‘A’,…END2022/12/10-74-[例4.13]程序的查表求解,注2022/12/13-75-若R0低4位存放一個十六進制數(shù)(0-F),此程序完成的功能是什么?(2)若程序執(zhí)行之前R0的內(nèi)容為0CH,執(zhí)行之后,R0中的內(nèi)容是多少?(采用16進制表示)(提示:‘0’的ASCII碼為30H,‘A’的ASCII碼為41H)2022/12/10-75-若R0低4位存放一個十六進制數(shù)(2022/12/13-76-其他??汲绦蚯驨個數(shù)的和求N個數(shù)的最大值求符號函數(shù)查表程序求一個16進制數(shù)的ASCII碼……實驗中的幾個程序2022/12/10-76-其他??汲绦蚯驨個數(shù)的和2022/12/13-77-例7-4試采用SRAM芯片把外部數(shù)據(jù)存儲器擴展為32KB。

621282022/12/10-77-例7-4試采用SRAM芯片把外2022/12/13-78-考試時間9周周二上午8:00—9:40,4月25日地點:機143四教401機144機131-7,機133五教101注意以最后正式通知為準2022/12/10-78-考試時間9周周二上午8:00—2022/12/13-79-注意事項按序號就座(請各班班長,課代表協(xié)助)注意考場紀律**知道多少,答多少,每一步都有分數(shù).不知道的題目盡量不要空著。平時多下功夫,認真復(fù)習(xí).2022/12/10-79-注意事項按序號就座(請各班班長,2022/12/13-80-謝謝!2022/12/10-80-課程復(fù)習(xí)

課程復(fù)習(xí)2022/12/13-82-原則考前通看一遍教材重點部分準確掌握根據(jù)自己情況,確定復(fù)習(xí)方法2022/12/10-2-原則考前通看一遍教材2022/12/13-83-chap01計算機中的數(shù)制及數(shù)的轉(zhuǎn)換2,8,10,16進制相互轉(zhuǎn)換。(整數(shù)部分,小數(shù)部分)計算機中的數(shù)和編碼編碼ASCII碼機器數(shù)的真值,原碼,補碼(必考)計算機的組成:CPU(運算器和控制器),存儲器,輸入/輸出及系統(tǒng)總線等2022/12/10-3-chap01計算機中的數(shù)制及數(shù)的轉(zhuǎn)2022/12/13-84-十進制數(shù)30.375表示成十六進制數(shù)為_1E.6H_已知[X]真值=-23,則[X]原=___87_H,[X]補=_____E9___H,[2X]補=__D2__H.2022/12/10-4-十進制數(shù)30.375表示成十六進制2022/12/13-85-chap022.1.1CPU結(jié)構(gòu)1.算術(shù)邏輯部件(ALU)2.定時控制部件3專用寄存器組(**)(1)程序計數(shù)器PC(ProgramCounter)(2)累加器A(Accumulator),又記作ACC(3)通用寄存器B(4)DPTR(DPH,DPL),堆棧操作分別壓入/彈出2022/12/10-5-chap022.1.1CPU結(jié)構(gòu)2022/12/13-86-(4)

程序狀態(tài)字PSW(ProgramStatusWord)(**)反映指令執(zhí)行后的有關(guān)狀態(tài),通常是在指令執(zhí)行過程中自動形成的,也可由用戶根據(jù)需要用傳送指令加以改變.標志位的定義.(常考內(nèi)容)PSW7PSW0CyACF0RS1RS0OV--P若累加器A中1的個數(shù)為奇數(shù),則P=1;反之則為0,(偶檢驗)2022/12/10-6-(4)程序狀態(tài)字PSW(Prog2022/12/13-87-[例2.1]??贾匾R設(shè)程序執(zhí)行前F0=0,RS1,RS0=00,請問執(zhí)行如下程序后PSW中各位的狀態(tài).MOVA,#0FH;A0FHADDA,#0F8H;加運算OV=0,Cy=1,AC=1,P=11100,0001BPSW=C1H2022/12/10-7-[例2.1]??贾匾R設(shè)程序執(zhí)2022/12/13-88-(5)堆棧指針SP(StackPointer)堆棧是以先進后出(FILO,FirstInLastOut),或后進先出(LIFO,LastinFirstOut)方式工作的一段內(nèi)部RAM區(qū)域.(**)范圍00-7FH(或00-FFH,256字節(jié)內(nèi)部RAM)棧底地址固定不變,由SP初始值設(shè)定,棧頂?shù)刂肥冀K在SP中,SP是8位寄存器,能自動+1/-1,用來存放堆棧的棧頂?shù)刂?單片機初始化后SP的值為07HPUSH,POP操作時SP指針的變化.2022/12/10-8-(5)堆棧指針SP(StackP2022/12/13-89-(6)數(shù)據(jù)指針DTPR(DataPointer)數(shù)據(jù)指針是一個16位的寄存器,由兩個8位寄存器DPH和DPL組成,DPTR可用來存放片外RAM地址,或片內(nèi)/外ROM地址.MOVDPTR,#2000HMOVXA,@DPTR(**)把片外RAM地址單元2000H的內(nèi)容讀至累加器.2022/12/10-9-(6)數(shù)據(jù)指針DTPR(Da2022/12/13-90-2.1.2存儲器結(jié)構(gòu)8051的存儲器有ROM和RAM之分,還有片內(nèi)/片外之分.(51單片機是8位單片機)片內(nèi)RAM,ROM集成在芯片內(nèi)部,是其一部分.片外存儲器是專用存儲器芯片,單片機通過AB,DB,CB三總線與之相聯(lián),才能使之工作.MCS-51單片機是___8___位單片機,一般來說,可擴展的外部數(shù)據(jù)存儲器為___64K___字節(jié),程序存儲器總的容量為___64K__字節(jié)。2022/12/10-10-2.1.2存儲器結(jié)構(gòu)8051的2022/12/13-91-1.存儲器的地址分配存儲器的地址分配有3個地址空間.ROM存儲器空間(片內(nèi)/片外)地址范圍0000H-FFFFH;片內(nèi)RAM空間地址范圍00H-FFH片外RAM地址空間地址范圍0000H-FFFFH2022/12/10-11-1.存儲器的地址分配存儲器的地址2022/12/13-92-00-7FH地址空間的區(qū)分2022/12/10-12-00-7FH地址空間的區(qū)分2022/12/13-93-3,片外RAM片外RAM容量64K,地址0000-FFFFH讀/寫命令MOVXA,@Ri;MOVXA,@DPTRMOVX@Ri,AMOVX@DPTR,A2022/12/10-13-3,片外RAM片外RAM容量62022/12/13-94-5.特殊功能寄存器SFR(80H-FFH)8051或8031的SFR有21個,8052的SFR有26個,每個SFR占有一個RAM單元不為SFR占用的RAM單元實際上不存在,訪問它們是沒有意義的.在SFR中,可以通過直接尋址對其進行字節(jié)存取,也可對帶有*的11個(12個T2CON)字節(jié)寄存器的每一位進行位尋址直接尋址的表示方法有兩種使用物理地址:累加器A(E0H),B(F0H),SP(81H)采用寄存器標號:累加器ACC,B,PSW這種方法常用.2022/12/10-14-5.特殊功能寄存器SFR(80H2022/12/13-95-2.1.3I/O端口I/O端口又稱為I/O接口,通道,通路(port)串行I/O端口一次只能傳送1位二進制信息,并行I/O端口一次可以傳送一組(8位)二進制信息.1.并行I/O端口8051有4個并行I/O端口,命名為P0,1,2,3,每個端口有雙向I/O功能,輸入/出.2022/12/10-15-2.1.3I/O端口I/O端口2022/12/13-96-并行I/O端口(續(xù))4個并行I/O端口在結(jié)構(gòu)上并不相同,在功能和用途上的差異較大.除作為通過I/O口使用外,P0口可以輸出片外存儲器的低8位地址和讀寫數(shù)據(jù);P2口可輸出片外存儲器的高8位地址;P1口作為通用I/O口;P3口的第二功能.2022/12/10-16-并行I/O端口(續(xù))4個并行I/2022/12/13-97-Q:在MCS-51單片機與外部存儲器接口時,P0及P2口的功能是什么?此時,為什么PO口一般需外接一個鎖存器(如74LS373)?P0口輸出片外存儲器的低8位地址和讀寫數(shù)據(jù);P2口可輸出片外存儲器的高8位地址;P0先提供的低8位地址需經(jīng)鎖存器鎖存后,與隨后提供的數(shù)據(jù)同時提供給外部存儲器2022/12/10-17-Q:在MCS-51單片機與外部2022/12/13-98-P3口各位的第二功能2022/12/10-18-P3口各位的第二功能2022/12/13-99-2.1.4定時器/計數(shù)器(Timer/Counter)8051內(nèi)部有兩個16位的可編程定時器/計數(shù)器,T0,T1,由兩個8位寄存器組成TH0/TL0,TH1/TL1,加法計數(shù).T0和T1有定時器和計數(shù)器兩種方式定時器方式選擇寄存器TMOD定時器控制寄存器TCON2022/12/10-19-2.1.4定時器/計數(shù)器(T2022/12/13-100-2.1.5中斷系統(tǒng)中斷指CPU暫停原程序執(zhí)行轉(zhuǎn)為外部設(shè)備服務(wù)(執(zhí)行中斷服務(wù)程序ISR),并在服務(wù)完后回到原程序執(zhí)行的過程.中斷源指能產(chǎn)生中斷請求信號的來源.對5個中斷請求信號進行排隊和控制,并響應(yīng)其中優(yōu)先權(quán)最高的中斷請求.5個中斷源有內(nèi)部和外部之分.IE中斷允許控制器(InterruptEnable)IP中斷優(yōu)先級控制器(Interruptpriority)2022/12/10-20-2.1.5中斷系統(tǒng)中斷指CPU2022/12/13-101-中斷源2022/12/10-21-中斷源2022/12/13-102-與中斷系統(tǒng)相關(guān)的特殊功能寄存器中斷控制是對相應(yīng)的SFR的設(shè)置來實現(xiàn)。4個:定時器與外部中斷控制寄存器TCON;中斷優(yōu)先級控制寄存器IP;中斷允許控制寄存器IE;串行口控制寄存器SCON2022/12/10-22-與中斷系統(tǒng)相關(guān)的特殊功能寄存器中2022/12/13-103-2.2MCS-51單片機引腳功能2.2.1MCS-51單片機引腳及其功能2.2.28031對片外存儲器的連接2022/12/10-23-2.2MCS-51單片機引腳功2022/12/13-104-2.2.1MCS-51單片機引腳及其功能8051有40個引腳,共分為端口線,電源線和控制線三類.1.端口線(4*8=32個)Pi.0-Pi.7,(i=0,1,2,3)2.電源線(2條)VCC為+5V電源線,VSS為接地線3.控制線(6條)2022/12/10-24-2.2.1MCS-51單片機引2022/12/13-105-3.控制線(6條)(1)ALE+/PROG地址鎖存允許/編程線(2)/EA+Vpp允許訪問片外存儲器/編程電源(3)/PSEN

片外ROM讀選通4)RST+VPD復(fù)位/備用電源線當此引腳上出現(xiàn)兩個機器周期的高電平時,芯片復(fù)位.上電復(fù)位和開關(guān)復(fù)位兩種.(在課程設(shè)計和畢業(yè)設(shè)計中用)VPD不要求.(5)XTAL1,2外接石英晶體和電容,形成時鐘信號.2022/12/10-25-3.控制線(6條)(1)ALE+2022/12/13-106-2.3.1復(fù)位方式開機時需要復(fù)位,以使CPU以及其他功能部件處于一個確定的初始狀態(tài).復(fù)位信號是高電平有效,持續(xù)時間24個時鐘周期以上SP=07H,ALE,/PSEN,P0-P3各引腳為高電平.程序計數(shù)器PC的值0000H2022/12/10-26-2.3.1復(fù)位方式開機時需要復(fù)2022/12/13-107-2.4MCS-51單片機時序2.4.1機器周期和指令周期2.4.2MCS-51指令的取指/執(zhí)行時序(不要求)2.4.3訪問片內(nèi)ROM/RAM的指令時序(不要求)如果單片機的時鐘頻率為12MHZ,那么,它的一個時鐘周期是__0.083us__,一般來說,其機器周期為___1us__.2022/12/10-27-2.4MCS-51單片機時序2022/12/13-108-2.4.1時鐘,機器,指令周期1.時鐘周期T又稱為振蕩周期,為時鐘脈沖頻率的倒數(shù),是時序中最小/最基本的時間單位.常用的時鐘頻率6MHZ,12MHZ,11.0592MHZ2022/12/10-28-2.4.1時鐘,機器,指令周期2022/12/13-109-2.機器周期由12個時鐘周期組成,分為6個狀態(tài)(S1-S6),每個狀態(tài)分為P1,P2兩拍.12個時鐘周期分為S1P1,S1P2,…S6P1,S6P22022/12/10-29-2.機器周期由12個時鐘周期組成2022/12/13-110-3.指令周期執(zhí)行一條指令所需的時間分單周期(機器周期),雙周期指令和四周期指令(乘/除指令)2022/12/10-30-3.指令周期執(zhí)行一條指令所需的時2022/12/13-111-第3章MCS-51單片機指令系統(tǒng)3.1概述3.2尋址方式3.3數(shù)據(jù)傳送指令3.4算術(shù)邏輯運算和移位指令3.5控制轉(zhuǎn)移和位操作指令2022/12/10-31-第3章MCS-51單片機指令系2022/12/13-112-學(xué)習(xí)指令的注意事項指令的功能——該指令能夠?qū)崿F(xiàn)的操作。指令支持的尋址方式——該指令中的操作數(shù)可以采用的尋址方式指令對標志的影響——該指令執(zhí)行后是否對各個標志位有影響,以及如何影響2022/12/10-32-學(xué)習(xí)指令的注意事項2022/12/13-113-3.1

概述3.1.4指令的分類1.數(shù)據(jù)傳送指令(28條)2.算術(shù)運算指令(24條)3.邏輯操作和環(huán)移指令(25條)4.控制轉(zhuǎn)移指令(17條)5.位操作指令(17條)單片機的指令系統(tǒng)按執(zhí)行的操作或功能來分類,可分為哪幾大類?2022/12/10-33-3.1概述3.1.4指令的分2022/12/13-114-3.2尋址方式(**重要,???尋找操作數(shù)的地址(位置)的方法,稱為尋址方式.共7種(注意詳細看細節(jié))寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址2022/12/10-34-3.2尋址方式(**重要,???022/12/13-115-3.3數(shù)據(jù)傳送指令(28條)數(shù)據(jù)傳送是最基本,最主要的操作.C語言中賦值語句.格式:MOV<dest>,<src>目標操作數(shù),源操作數(shù)分為內(nèi)部數(shù)據(jù)傳送指令外部數(shù)據(jù)傳送指令堆棧操作指令數(shù)據(jù)交換指令以累加器A為目的操作數(shù)時影響P標志,其余指令不影響標志位.MOVPSW,A(直接影響標志寄存器?)2022/12/10-35-3.3數(shù)據(jù)傳送指令(28條)數(shù)2022/12/13-116-注意1,不要使用非法指令MOVRn,@Ri(注意)MOV#data,A(錯誤顯然)2,以A為目的寄存器的傳送指令會影響P標志位3,指令的字節(jié)數(shù),(不需估計)4,注意給程序加注釋2022/12/10-36-注意1,不要使用非法指令2022/12/13-117-3.3.2外部數(shù)據(jù)傳送指令(7條)1.16位數(shù)據(jù)傳送指令(1條)MOVDPTR,#data16(DPH,DPL)2,外部ROM的字節(jié)傳送指令MOVCA,@A+DPTRMOVCA,@A+PC用于查表指令2022/12/10-37-3.3.2外部數(shù)據(jù)傳送指令(72022/12/13-118-3.外部RAM的字節(jié)傳送指令MOVXA,@RiMOVX@Ri,AMOVXA,@DPTRMOVX@DPTR,A2022/12/10-38-3.外部RAM的字節(jié)傳送指令M2022/12/13-119-3.3.3堆棧操作指令(2條)PUSHdirect;spsp+1,(sp)(direct)POPdirect;(direct)(sp),spsp-1注意:堆棧操作是直接尋址指令,注意指令的格式正確錯誤PUSHACCPUSHAPUSH00HPUSHR0POPACCPOPAPOP00HPOPR02022/12/10-39-3.3.3堆棧操作指令(2條)2022/12/13-120-3.4算術(shù)與邏輯運算和移位指令3.4.1算術(shù)運算指令(24條)1.加法指令2.減法指令3.十進制調(diào)整指令4.乘法和除法指令3.4.2邏輯運算指令(20條)1.邏輯與運算指令2.邏輯或指令3.邏輯異或指令4.累加器清零和取反指令3.4.3移位指令(5條)2022/12/10-40-3.4算術(shù)與邏輯運算和移位指令2022/12/13-121-以下指令可不要求3.十進制調(diào)整指令4.乘法和除法指令2022/12/10-41-以下指令可不要求3.十進制調(diào)整2022/12/13-122-3.5控制轉(zhuǎn)移和位操作改變PC的內(nèi)容,控制程序執(zhí)行流向.3.5.1控制轉(zhuǎn)移指令(17條)無條件轉(zhuǎn)移條件轉(zhuǎn)移子程序調(diào)用與返回空操作AJMP,ACALL指令不要求2022/12/10-42-3.5控制轉(zhuǎn)移和位操作改變PC2022/12/13-123-(2)比較條件轉(zhuǎn)移指令4條CJNEA,#data,rel;影響CY標志ifa!=data,thenpcpc+3+relifa==data,thenpcpc+3CJNEA,direct,relCJNERn,#data,relCJNE@Ri,#data,rel2022/12/10-43-(2)比較條件轉(zhuǎn)移指令4條C2022/12/13-124-3.5.2位操作指令位操作指令的操作數(shù)不是字節(jié),而是字節(jié)中的某一位(每位取值0或1),故以稱為布爾變量操作指令.位操作指令的對象.分為位傳送,位置位,位清零,位運算及位控制轉(zhuǎn)移等4類2022/12/10-44-3.5.2位操作指令位操作指令2022/12/13-125-[例4.13]已知R0低4位有一個十六進制數(shù)(0-F中的一個),把它轉(zhuǎn)換成相應(yīng)的ASCII碼并送入R0的程序.介紹了3種方法,第二種方法不要求.2022/12/10-45-[例4.13]已知R0低4位有一2022/12/13-126-方法10-9對應(yīng)的ASCII碼30H-39Hx+30HA-F對應(yīng)的ASCII碼41H-46Hx+37H一種題型:讀懂程序,給程序加解釋.2022/12/10-46-方法10-9對應(yīng)的ASCII碼2022/12/13-127-[例4.13]程序

ORG0400HMOVA,R0ANLA,0FH;屏蔽高4位CJNEA,#10,NEXT1NEXT1:JNCNEXT2ADDA,#30H;A<10,thenAA+30HSJMPDONENEXT2:ADDA,#37H;A>=10thenAA+37HDONE:MOVR0,ASJMP$END2022/12/10-47-[例4.13]程序O2022/12/13-128-第4章匯編語言程序設(shè)計4.1匯編語言的構(gòu)成4.2匯編語言源程序的設(shè)計與匯編4.3簡單程序與分支程序設(shè)計4.4循環(huán)與查表程序設(shè)計4.5子程序與運算程序設(shè)計2022/12/10-48-第4章匯編語言程序設(shè)計4.12022/12/13-129-4.1.2匯編語言格式語句的格式標號段(:)操作碼段(空格)

操作數(shù)段(,)

(另一個操作數(shù))

(;)注釋段匯編語言源程序匯編(assembler)鏈接(link)可執(zhí)行程序2022/12/10-49-4.1.2匯編語言格式語句的格2022/12/13-130-簡述在實驗上機時,進行匯編語言程序設(shè)計的過程(1)建立匯編語言源程序,后綴名.asm,將其添加到項目(工程)文件中(2)進行匯編,鏈接生成可執(zhí)行文件,若有錯誤,進行修改.(3)進行調(diào)試(設(shè)置斷點,單步運行,觀察寄存器/存儲器等的變化等).2022/12/10-50-簡述在實驗上機時,進行匯編語言程2022/12/13-131-2指示性語句指示性語句又稱為偽指令.不會在匯編時產(chǎn)生供機器直接執(zhí)行的機器碼在匯編時供匯編程序識別和執(zhí)行的命令規(guī)定目標代碼在內(nèi)存中的存放區(qū)域ORG為源程序的符號和標號賦值DATA,EQU指示匯編的結(jié)束end2022/12/10-51-2指示性語句指示性語句又稱為偽2022/12/13-132-(1)ORG起始匯編偽指令(2)END(結(jié)束匯編)(3)EQU(賦值)(4)DATA(數(shù)值地址賦值)偽指令(5)DB偽指令DB(definebyte)定義字節(jié)(6)DW偽指令(7)DS偽指令DS(definestorage定義存儲空間)(8)BIT(位地址賦值)偽指令(不要求)2022/12/10-52-(1)ORG起始匯編偽指令2022/12/13-133-4.2匯編語言源程序的設(shè)計與匯編(不要求)注意流程圖的畫法2022/12/10-53-4.2匯編語言源程序的設(shè)計與匯2022/12/13-134-chap76264的引腳功能1,地址線A12-A0(13條)輸入2,數(shù)據(jù)線D7-D0(8條),雙向數(shù)據(jù)線3,控制線4條允許輸出線/OE,低電平有效,讀出數(shù)據(jù)送至數(shù)據(jù)總線上(可接8031讀信號/RD)片選信號線CS1和/CS1,前者為高,后者為低時,本芯片被選中.讀寫命令線/WE,若/WE為高電平,為讀出狀態(tài),若/WE為低電平,為寫入狀態(tài)(與8031的/WR信號相接)電源線(2條)VCC,與GND2022/12/10-54-chap76264的引腳功能12022/12/13-135-chap5中斷與定時系統(tǒng)中斷的定義和作用中斷是指計算機暫時停止原程序的執(zhí)行,轉(zhuǎn)而為外部設(shè)備服務(wù),即執(zhí)行中斷服務(wù)程序ISR(InterruptserviceRoutine,ISR),并在執(zhí)行完后自動返回原程序執(zhí)行的過程.中斷由中斷源產(chǎn)生,中斷源在需要時向CPU提出“中斷請求”,CPU一旦對這個電信號進行檢測和響應(yīng)便可自動轉(zhuǎn)入該中斷源的ISR,在執(zhí)行完后自動返回原程序繼續(xù)執(zhí)行。以硬件方式改變CPU的操作順序。2022/12/10-55-chap5中斷與定時系統(tǒng)中斷2022/12/13-136-中斷MCS-51的中斷源和中斷標志定時器控制寄存器TCON中斷允許寄存器IE中斷優(yōu)先級寄存器IP串行口控制寄存器SCON中斷服務(wù)程序的入口地址(**)MCS-51中斷系統(tǒng)的初始化(**)2022/12/10-56-中斷MCS-51的中斷源和中斷標2022/12/13-137-定時器/計數(shù)器8031/8051有兩個定時器/計數(shù)器T0,T18032/8052有3個定時/計數(shù)器T0,1,21,可設(shè)為定時器模式與計數(shù)器模式,每種模式有方式0,1,2,32,定時時間Tmax=2^(13,16,8)*T,T=12*1.0/fosc3,二進制加法器,由全1變?nèi)?時,產(chǎn)生溢出,申請中斷2022/12/10-57-定時器/計數(shù)器8031/80512022/12/13-138-相關(guān)的控制寄存器定時器控制寄存器2022/12/10-58-相關(guān)的控制寄存器定時器控制寄存器2022/12/13-139-2.定時器方式寄存器TMOD2022/12/10-59-2.定時器方式寄存器TMOD2022/12/13-140-定時器/計數(shù)器的初始化1.初始化步驟1)設(shè)置方式寄存器TMOD2)設(shè)置定時器/計數(shù)器的初始值TH1,0/TL1,03)設(shè)置中斷允許寄存器IE和中斷優(yōu)先級寄存器IP4)設(shè)置定時器控制寄存器TCON啟動/禁止定時器/計數(shù)器2022/12/10-60-定時器/計數(shù)器的初始化1.初始化2022/12/13-141-2.計數(shù)器初始值的計算1.計數(shù)若要計數(shù)C,則加法計數(shù)器,計數(shù)初值為TC,計數(shù)溢出值為M,有TC+C=MTC=M-C(M=2^(13,16,8))2.定時time=(M-TC)*12/fosc最大定時時間,若時鐘頻率12MHZ方式0:Tmax=2^13*1us=8.192ms方式1:Tmax=2^16*1us=65.536ms

方式2,3:Tmax=2^8*1us=0.256ms2022/12/10-61-2.計數(shù)器初始值的計算1.計數(shù)2022/12/13-142-P125例5-4題目同例5-3,但以中斷方式完成。即單片機晶振頻率為6MHz,使用定時器1以工作方式1產(chǎn)生周期為500μs的等寬連續(xù)正方波脈沖,并在P1.0端輸出。(1)計算計數(shù)初值TH1=0FFH TL1=06H書上有錯?是(2)TMOD寄存器初始化TMOD=10H2022/12/10-62-P125例5-4題目同例5-2022/12/13-143-

溫馨提示

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

評論

0/150

提交評論