




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
微機原理及其接口技術(shù)微機原理及其接口技術(shù)微機原理及其接口技術(shù)參考書梁合慶等.MCS-96系列十六位單片微機實用手冊.北京:電子工業(yè)出版社,1995張友德等.單片微型計算機原理、應(yīng)用及實驗.上海:復(fù)旦大學(xué)出版社,1992肖廣潤等.微機原理及應(yīng)用—8051、8098單片機應(yīng)用基礎(chǔ).武漢:華中理工大學(xué)出版社陳光東.單片微型計算機原理及接口技術(shù).武漢:華中理工大學(xué)出版社第一章微型計算機的基礎(chǔ)知識(2學(xué)時)§1.電子計算機的發(fā)展簡史電子計算機的發(fā)展史回顧微型計算機的發(fā)展歷史微型計算機的特點§2.單片機的發(fā)展概況單片機的發(fā)展簡史單片機的特點單片機的應(yīng)用領(lǐng)域第一章微型計算機的基礎(chǔ)知識(2學(xué)時)§3.有關(guān)計算機的基本概念計算機的基本組成一些術(shù)語的介紹§4.計算機中的數(shù)制及碼制計算機中的數(shù)制不同數(shù)制之間的轉(zhuǎn)換二進制編碼微機中數(shù)的表示法§5.計算機的硬件和軟件計算機的硬件和軟件的有關(guān)概念計算機語言系統(tǒng)軟件、應(yīng)用軟件及數(shù)據(jù)庫§6.計算機的基本工作原理微型計算機的組成微型計算機的指令系統(tǒng)微型計算機的程序編寫將程序輸入模型計算機一條指令的執(zhí)行過程模型機程序執(zhí)行過程第一章微型計算機的基礎(chǔ)知識(2學(xué)時)第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理(8學(xué)時)§2-1.概述§2-2.單片機芯片的基本結(jié)構(gòu)及特點8096/8098芯片的基本結(jié)構(gòu)8096/8098芯片的主要特性8096/8098芯片的引腳及功能8096/8098芯片的封裝形式芯片的引腳功能第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理§2-3.CPU及其操作CPU的具體組成及其特色CPU總線寄存器算術(shù)邏輯單元RALUCPU寄存器陣列CPU的操作CPU的時序第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理§2-4.8096/8098的存儲器空間存儲空間的配置情況內(nèi)部寄存器空間寄存器陣列特殊功能寄存器(SFR)專用存儲器空間存儲器控制器第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理§2-5.I/O口及其控制I/O口的功能及基本結(jié)構(gòu)8096/8098的I/O口簡介P0口(數(shù)字輸入兼模擬輸入口)P1口(準雙向I/O口)P2口(多功能口)P3口和P4口(數(shù)字I/O口兼總線口)I/O控制及狀態(tài)寄存器I/O控制寄存器I/O狀態(tài)寄存器第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理§2-6.芯片配置寄存器關(guān)于CCR的說明CCR各位的定義及說明總線控制標準總線方式地址有效選通方式寫選通方式地址有效且寫選通方式就緒控制第二章MCS-96單片機
的基本結(jié)構(gòu)及工作原理§2-7.時鐘信號時鐘源振蕩信號的產(chǎn)生內(nèi)部三相時鐘的產(chǎn)生§2-8.復(fù)位復(fù)位的概念復(fù)位電路復(fù)位狀態(tài)其它復(fù)位途徑第三章存儲器及其及系統(tǒng)連接§1.存儲器簡介半導(dǎo)體存儲器的分類存儲器芯片的選擇§2.常用存儲器芯片簡介RAM芯片EPROM芯片EEPROM芯片第三章存儲器及其及系統(tǒng)連接§3.存儲器的尋址方法線選法全譯碼法部分譯碼法§4.存儲器及系統(tǒng)的接連常用譯碼器、鎖存器的介紹最基本的8096/8098單片機系統(tǒng)的硬件邏輯最簡單的存儲器及單片機的連接多個存儲器芯片的單片機系統(tǒng)第四章MCS-96指令系統(tǒng)§1.指令系統(tǒng)概述指令的格式操作數(shù)的類型狀態(tài)標志及8096/8098程序狀態(tài)字堆棧的概念§2.尋址方式尋址及尋址方式MCS-96系列內(nèi)部寄存器陣列中寄存器的命名問題MCS-96系列單片機指令系統(tǒng)的尋址方式§3.數(shù)據(jù)傳送指令第四章MCS-96指令系統(tǒng)§4.算術(shù)及邏輯運算指令§5.跳轉(zhuǎn)和調(diào)用指令無條件轉(zhuǎn)移指令條件轉(zhuǎn)移指令§6.單寄存器指令§7.移位指令§8.專用控制指令§9.偽指令第五章匯編語言程序設(shè)計§1.概述§2.順序程序§3.分支程序§4.循環(huán)程序§5.子程序設(shè)計§6.查表程序第六章輸入輸出及中斷§1.輸入/輸出的概述輸入輸出的概念輸入輸出接口及其功能I/O接口電路的一般結(jié)構(gòu)端口的概念接口電路的分類CPU及外設(shè)間的接口信號接口設(shè)計的基本任務(wù)和原則接口電路芯片第六章輸入輸出及中斷§2.CPU及外設(shè)交換信息的方式無條件傳送方式查詢傳送方式中斷傳送方式直接數(shù)據(jù)通道傳送方式(DMA方式)§3.I/O接口的尋址方式及地址譯碼方式I/O接口的尋址方式I/O端口的地址譯碼方式第六章輸入輸出及中斷§4.中斷技術(shù)中斷的概念中斷技術(shù)的優(yōu)點實時控制系統(tǒng)中中斷系統(tǒng)的應(yīng)用中斷源及其優(yōu)先級的概念中斷嵌套中斷響應(yīng)的條件中斷響應(yīng)的過程中斷傳送方式的接口電路第六章輸入輸出及中斷§5.8096/8098單片機的中斷系統(tǒng)8096/8098單片機中斷系統(tǒng)的結(jié)構(gòu)框圖8096/8098單片機的中斷源8096/8098的中斷控制8096/8098單片機中斷響應(yīng)的過程中斷響應(yīng)的時間中斷禁區(qū)的概念第六章輸入輸出及中斷§6.8096/8098單片機的中斷優(yōu)先級控制8096/8098中斷優(yōu)先級排隊的特點實現(xiàn)預(yù)定的優(yōu)先級排隊順序的軟件措施8096/8098中斷優(yōu)先級控制小結(jié)§7.中斷系統(tǒng)軟件的設(shè)計要點中斷系統(tǒng)軟件設(shè)計的一般方法中斷系統(tǒng)軟件設(shè)計的一些問題§8.中斷系統(tǒng)編程示例用軟件產(chǎn)生中斷中斷優(yōu)先級的改變及中斷嵌套改變中斷返回地址第七章微型計算機的接口技術(shù)§1.微機接口技術(shù)原理概述微機接口技術(shù)的基本內(nèi)涵接口電路的基本任務(wù)單片機接口設(shè)計的特點及任務(wù)微機接口技術(shù)的一般原理和方法§2.典型的并行I/O接口芯片8255A可編程并行I/O接口芯片8155可編程并行I/O接口芯片第七章微型計算機的接口技術(shù)§3.微機及顯示器的接口LED及單片機的接口LCD及單片機的接口§4.微機及鍵盤的接口鍵盤及其接口的基本功能非編碼鍵盤的工作原理非編碼鍵盤及8096/8098單片機的接口設(shè)計第七章微型計算機的接口技術(shù)§5.單片機及8279可編程鍵盤/顯示器接口8279可編程鍵盤/顯示控制器8279的命令及狀態(tài)字8279的輸入數(shù)據(jù)的格式8096/8098單片機及8279的接口§6.微機及打印機的接口TPμP-40A微型打印機的接口信號單片機及TPμP-40A打印機的接口電路打印程序的編制第八章定時器及其應(yīng)用§1.8096/8098單片機中的硬件定時器T1和T2定時器1定時器2T1和T2中斷定時器中斷的產(chǎn)生及控制過程§2.定時器的應(yīng)用定時器T1的應(yīng)用定時器T2的應(yīng)用§3.監(jiān)視定時器及其應(yīng)用第九章高速輸入部件HSI及其應(yīng)用§1.高速輸入部件HSI的結(jié)構(gòu)及工作原理HSI的基本結(jié)構(gòu)HSI的工作過程HSI的中斷§2.HSI的應(yīng)用HSI的用途HSI對事件的檢測方法HSI的應(yīng)用第十章高速輸出部件HSO及其應(yīng)用§1.高速輸出部件HSO的結(jié)構(gòu)及工作原理HSO觸發(fā)的事件HSO的基本結(jié)構(gòu)HSO的工作過程§2.HSO的使用方法HSO觸發(fā)事件的設(shè)置關(guān)于采用T2作為HSO時間基準的若干問題關(guān)于軟件定時器HSO的中斷HSO中事件的清除§3.HSO的編程及應(yīng)用實例編程步驟及要點HSO的應(yīng)用第十一章A/D和PWM及其應(yīng)用§1.8096/8098的A/D轉(zhuǎn)換器及其應(yīng)用8096/8098A/D轉(zhuǎn)換器原理8096/8098A/D轉(zhuǎn)換器的控制8096/8098A/D轉(zhuǎn)換器的編程§2.PWM輸出(D/A)PWM的結(jié)構(gòu)和工作原理產(chǎn)生PWM波形第十二章串行口及其應(yīng)用§1.串行通信的基本概念串行通信的特點及方式數(shù)據(jù)傳送模式信號的調(diào)制及解調(diào)信號的檢錯及糾錯傳輸速率及傳送距離§2.RS-232C接口標準第十二章串行口及其應(yīng)用§3.8096/8098串行口的工作原理8096/8098串行口的工作方式8096/8098串行口的控制§4.8096/8098串行口的應(yīng)用串行口的使用特點串行口的應(yīng)用第十三章80C196KB/KC單片機§1.80C196芯片的引腳及封裝§2.80C196單片機的結(jié)構(gòu)及其主要特色80C196芯片的基本構(gòu)成80C196芯片的主要特色§3.80C196的存儲器空間§4.80C196單片機增加的指令§5.80C196芯片中的不同格式的寄存器PSW的狀態(tài)位芯片配置寄存器CCRSFR中的一些寄存器第十三章80C196KB/KC單片機§6.80C196的中斷系統(tǒng)80C196新增的中斷源80C196的中斷優(yōu)先級80C196的中斷控制如何學(xué)習(xí)本門課程硬件部份是基礎(chǔ),只有熟知單片機的硬件結(jié)構(gòu)的特點,才能進行各種編程、應(yīng)用和開發(fā)。指令系統(tǒng)的關(guān)鍵是要正確理解和掌握指令的尋址方式。存儲器及外部擴展系統(tǒng)要運用許多基礎(chǔ)知識,將各種外圍電路及單片機之間實現(xiàn)接口,因此要求掌握外圍電路的原理、特性和使用方法。這是進行系統(tǒng)設(shè)計的基礎(chǔ)。實驗是鞏固知識的必要手段,參加實驗前認真做好預(yù)習(xí)。學(xué)會使用參考書。電子計算機的發(fā)展簡史第一代──電子管計算機(1946-1958)第二代──晶體管計算機(1958-1964)第三代──集成電路計算機(1964-1971)第四代──大規(guī)模集成電路計算機(1971-現(xiàn)在)第五代──智能型計算機(?-?)微型計算機的發(fā)展歷史第一代微處理器(1971-1973)──4004第二代微處理器(1973-1975)──8080第三代微處理器(1975-1978)──Z80第四代微處理器(1978-80年代中期)──8086第五代微處理器(80年代中期-現(xiàn)在)──Pentium微型計算機的發(fā)展比較
字長(位)集成度(管/片)引腳(個)時鐘(MHz)數(shù)據(jù)總線(位)地址總線(位)代表軟件第一代4/81200-200016-240.5-0.84/84/8機器語言、簡單匯編語言第二代85000-9000401-2.588匯編語言、高級語言第三代820000-7000040-645-108/1616匯編語言、高級語言、操作系統(tǒng)第四代16/3210萬-100萬6410-10016-3220-32匯編、高級語言、高級操作系統(tǒng)第五代64100萬以上64以上100以上6464匯編語言、高級語言、專家系統(tǒng)微型計算機的特點體積小、重量輕性能價格比高可靠性高、功耗低靈活和實用單片機的發(fā)展概況分支一:充分利用超大規(guī)模集成電路技術(shù),不斷擴大微處理器的功能,向以趕超小型機、超級小型機乃至中大型計算機為目標的發(fā)展方向。分支二:單片機的誕生和發(fā)展,為滿足各個領(lǐng)域的廣泛應(yīng)用,不求規(guī)模大,力爭小而全。單片機的定義在一塊芯片上集成了構(gòu)成一臺計算機的基本部件:中央處理器(CPU)、存儲器(RAM/ROM)、I/O接口以及其他有關(guān)部件(如定時器/計數(shù)器、中斷控制、系統(tǒng)時鐘、系統(tǒng)總線和A/D及D/A轉(zhuǎn)換器等)。一塊芯片就構(gòu)成了一臺計算機,故稱為單晶片微型計算機(SingleChipMicrocomputer),簡稱單片機,又稱微控制器(MicrocontrollerUnit)或嵌埋式控制器(EmbeddedController)。單片機的發(fā)展第一代單片機(1974-1980)──MCS-48系列第二代單片機(1980-1983)──MCS-51系列第三代單片機(1983-現(xiàn)在)──MCS-96系列型號ROM/EPROM寄存器RAM內(nèi)部RAM定時器/計數(shù)器A/D通道I/O引腳捕獲/比較串行口PWM速度(MHz)尋址空間8x988k23202432HSIO111264k8x96BH8k23202048HSIO111264k8x97BH8k23202848HSIO111264k8x95BH8k23202432HSIO111264k8x9xJF16k2322562848HSIO111264k8xc196KC8k23202848HSIO1112、1664k8xC1988k23202434HSIO1112、1664k8xC1948K23202034HSIO111264K8xC196KC16K48802848HSIO1316,2064k8xC196KD32K100002848HSIO1316,2064k8xC196MC16K4880213538EPAPTS方式21664k8xC196MD16K48802146412EPAPTS方式21664k8xC196MH32K744028506EPA221664k8xC196JQ12K36012826416EPA2EPA實現(xiàn)1664k8xC196JR16K488256265610EPA2EPA實現(xiàn)1664k8xC196KQ12K36012828566EPA2EPA實現(xiàn)1664k8xC196KR16K488256285610EPA2EPA實現(xiàn)1664k8xC196KT32K1000512285610EPA2EPA實現(xiàn)1664k8XC196NP4K1000020334EPA13241M8XC196NT32K1000512245610EPA2EPA實現(xiàn)201M8XC196NQ12K360128245610EPA2EPA實現(xiàn)201M單片機的特點體積小、功能全價格低廉面向控制特別適合于機電一體化智能產(chǎn)品單片機的應(yīng)用領(lǐng)域用單片機構(gòu)成智能化產(chǎn)品智能式儀器儀表家用產(chǎn)品醫(yī)療儀器計算機外部設(shè)備單片機在工業(yè)測控領(lǐng)域中的應(yīng)用過程控制數(shù)據(jù)采集信號處理舊設(shè)備改造計算機的基本概念——基本組成馮?諾依曼結(jié)構(gòu)計算機的基本概念——基本組成輸入設(shè)備(InputEquipment)存儲器(Memory)運算器(ArithmeticLogicUnit----ALU)輸出設(shè)備(OutputEquipment)控制器(ControlBlocK)計算機的常用術(shù)語中央處理器(ControlProcessingUnit----CPU)CPU=ALU+控制器微處理器(MicroProcessingUnit----MPU)外部設(shè)備(Peripheral)輸入/輸出接口電路(I/OInterfacing)總線(Bus)數(shù)據(jù)總線(DataBus)地址總線(AddressBus)控制總線(ControlBus)計算機的常用術(shù)語計算機字長(WordLength)微型計算機(Microcomputer)微型計算機系統(tǒng)(MicrocomputerSystem)微型計算機:MPU、Bus、存儲器、I/O接口外部設(shè)備:顯示器、鍵盤、打印機、外存儲器軟件:系統(tǒng)軟件、應(yīng)用軟件、數(shù)據(jù)庫電源基本進制──二進制數(shù)碼:0和1計數(shù)規(guī)律:逢二進一優(yōu)點:數(shù)字裝置簡單可靠,所用元件少;運算規(guī)則簡單,運算操作簡便。缺點:不太符合人們的習(xí)慣;位數(shù)太多時書寫及記憶不方便。1位為“比特”(Bit),8位為字節(jié)(Byte),16位為字(Word)。十六進制和八進制數(shù)碼:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F計數(shù)規(guī)律:逢十六進一優(yōu)點:以二進制為基礎(chǔ),轉(zhuǎn)換方便;比二進制數(shù)書寫和記憶方便。八進制可由十六進制推知。例1:10011100101101001000B=9CB48H10011100101101001000B=2345510O不同數(shù)制之間的轉(zhuǎn)換其他數(shù)制轉(zhuǎn)換成十進制數(shù):十進制數(shù)轉(zhuǎn)換為二進制數(shù):整數(shù):(N)D=bn2n+bn-12n-1+…+b121+b020例2將N連續(xù)除以2取余數(shù)bi,直到商為0。小數(shù):(N)D=b-12-1+b-22-2+…+b-n2-n例3將N連續(xù)乘以2取整b-i,直到滿足精度。十進制轉(zhuǎn)換成R進制:整數(shù)部分連續(xù)除以R取余數(shù)作為結(jié)果,小數(shù)部分連續(xù)乘以R取整作為結(jié)果,從“.”起始。將(25)D轉(zhuǎn)換成二進制數(shù)解:所以(25)D=(b4b3b2b1b0)B=11001B將(0.706)D轉(zhuǎn)換成誤
差ε不大于2-5的二進制數(shù)解:所以(0.706)D=0.10110B其誤差ε=0.592×2-5<2-5,滿足要求二進制編碼ASCII碼:美國標準信息交換代碼(Ameri-canStandardCodeforInformationInterchange),它用七位二進制碼表示一個字母、符號和數(shù)值。國際標準漢字碼:用16位二進制碼表示一個漢字,并且每個字節(jié)最高位為1,以區(qū)別其是否為ASCII碼。數(shù)值編碼有權(quán)碼:8421BCD碼、自然二進制碼、2421碼、5421碼等。8421BCD碼的表示形式是二進制的,但實質(zhì)是十進制的,所以在進行算術(shù)運算時,計算機總是進行二進制的運算,所以需將結(jié)果進行修正才正確。(例4)無權(quán)碼:編碼關(guān)系不能用位權(quán)關(guān)系來表示的數(shù)碼,例如:余3碼、格雷碼等。8421BCD碼求96+84的值解:微機中數(shù)的表示法——原碼、反碼和補碼原碼:在自然二進制碼前直接加符號位的表示法。如:[+7]原=00000111B,[-7]原=10000111B反碼:正數(shù)及原碼相同,負數(shù)數(shù)值部分按位取反,符號位不變。如:[+7]反=00000111B,[-7]反=11111000B補碼:正數(shù)及原碼相同,負數(shù)數(shù)值部分按位取反后加1,符號位不變。如:[+7]補=00000111B,[-7]補=11111001B微機中數(shù)的表示法——定點數(shù)和浮點數(shù)定點數(shù):指小數(shù)點的位置固定不變的數(shù)。整數(shù):小數(shù)點固定在數(shù)據(jù)最低位之后純小數(shù):小數(shù)點固定于符號位及數(shù)據(jù)位之間小數(shù):小數(shù)點固定于事先約定的某位之后浮點數(shù):為克服定點數(shù)范圍太小而表示成±K×2b,其中K是尾數(shù)(純小數(shù)),b是階碼(整數(shù))。如讓尾數(shù)的最高位數(shù)值不為0,則是規(guī)格化浮點數(shù),計算機運算都用該種數(shù)。(例5)將(24.09375)D
轉(zhuǎn)換成規(guī)格化浮點數(shù)解:⑴(24.09375)D=11000.00011B⑵規(guī)格化K=+0.1100000011Bb=+5=+101B⑶地址分布存儲器(地址0~127)程序區(qū)(RAM或ROM)數(shù)據(jù)區(qū)(只能用RAM)外部設(shè)備和接口電路鍵盤(輸入設(shè)備)顯示器(輸出設(shè)備)總線數(shù)據(jù)總線DB(D0~D7)地址總線AB(A0~A7)控制總線CB(WR和RD)模型計算機的基本結(jié)構(gòu)微處理器(CPU)算術(shù)邏輯單元(ALU)控制器:包括指令寄存器IR、指令譯碼器ID和定時、控制電路等部分。寄存器:專用寄存器:程序計數(shù)器PC、存儲地址寄存器MAR、標志寄存器F、數(shù)據(jù)寄存器DR和指令寄存器IR通用寄存器:寄存器A和寄存器B模型計算機的指令系統(tǒng)指令系統(tǒng)(共4條)LD──將一個數(shù)裝入某個寄存器ST──將寄存器內(nèi)的數(shù)送往某個存儲單元或某個I/O端口ADD──完成兩個數(shù)的加法運算SJMP──程序跳轉(zhuǎn)到指定單元繼續(xù)執(zhí)行指令組成助記符目的操作數(shù),源操作數(shù)將兩個數(shù)8和9相加的
結(jié)果送到存儲器和顯示器程序區(qū)為存儲器的00H~20H,其余為數(shù)據(jù)區(qū)。30H存結(jié)果,80H為顯示器端口。LDA,#08HADDA,#09HLDB,#30HSTA,[B]LDB,#80HSTA,[B]
LP:SJMPLP將程序輸入模型計算機將匯編語言對照指令表逐條翻譯成機器代碼,用十六進制表示;存儲器中決定程序區(qū),確定程序起始地址;將機器指令代碼逐個字節(jié)送至相應(yīng)的存儲單元;采用一定的方法對已輸入的程序進行調(diào)試,排除設(shè)計或翻譯中可能出現(xiàn)的錯誤。模型計算機的執(zhí)行過程一條指令執(zhí)行過程:取指階段:PC→MAR,PC+1→PC;MAR→AB且RD有效,數(shù)據(jù)→DB→DR分析執(zhí)行階段:操作碼DR→IR→控制操作數(shù)DR→被處理程序執(zhí)行過程:逐條指令按上述過程執(zhí)行,PC起始為00H,逐漸增加。讀存儲器時RD有效,存數(shù)據(jù)或輸出到端口時WR有效。最后程序循環(huán)等。計算機的軟件系統(tǒng)軟件(SystemSoftware)操作系統(tǒng)(OperatingSystem)翻譯軟件管理維護軟件程序庫應(yīng)用軟件(AppliedSoftware)數(shù)據(jù)庫(DataBase)第一章作業(yè)計算機有哪幾種基本結(jié)構(gòu)?試述它們的各自特點,MCS-96單片機屬于哪種結(jié)構(gòu)?教材習(xí)題一9.(6);11.(2);13。第2章MCS-96系列單片機的基本結(jié)構(gòu)及工作原理
內(nèi)容提要本章首先介紹單片機的發(fā)展及應(yīng)用概況和單片機的軟硬件系統(tǒng),并對8096單片機和存儲器的性能特點作了簡要說明。此外還介紹了有關(guān)的基礎(chǔ)知識,以便為學(xué)習(xí)和應(yīng)用單片機打下必要的基礎(chǔ)8096/8098芯片的基本結(jié)構(gòu)單片機和普通的微機是一樣的原理,但是單片機主要用在控制方面,所以也有許多的特點和優(yōu)勢。一個單片機芯片是把中央處理單元CPU、隨機存取存儲器RAM、只讀存儲器ROM、定時器/計數(shù)器以及I/O接口電路等主要計算機部件,集合在一塊集成電路芯片上的微型計算機,也就是說它不僅包涵了以上的運算器、存儲器、控制器,而且也包含了部分的輸入輸出器件,這些器件方便實現(xiàn)了單片機控制功能強的特點。本書以8096為例子,其芯片硬件結(jié)構(gòu)如圖2-1。MCS-96系列單片機的典型硬件結(jié)構(gòu)框圖MCS-96系列芯片的功能部件中央處理器CPU:采用面向寄存器結(jié)構(gòu)存儲器:256字節(jié)RAM(或有8K字節(jié)ROM)輸入/輸出(I/O)功能部件三個定時器T1、T2及WATCHDOG高速輸入/輸出部件HSI/HSOA/D轉(zhuǎn)換部件脈寬調(diào)制輸出(PWM)部件串行通訊接口四(五)個并行I/O接口P0,P2,P3及P4口(或有P1)MCS-96系列芯片的主要特性CPU為16位,采用面向寄存器結(jié)構(gòu)支持位、字節(jié)和字以及雙字操作片內(nèi)有256字節(jié)RAM用作寄存器時鐘頻率可達12MHz,執(zhí)行指令最短1μs指令系統(tǒng)可對符號數(shù)和非符號數(shù)操作,指令可帶多達3個操作數(shù),非常靈活硬件完成乘、除法運算帶有多種可編程I/O功能部件8096/8098芯片引腳及功能MCS-96系列芯片有48腳、52腳、64腳68腳和80腳等多種封裝形式8098的DIP48腳及8096引腳配置基本相同,只是14腳和15腳有點差別8096引腳引腳功能工作電源及地:VCC、VSS、VPP、VPD、VREF、ANGNDI/O信號線:HSI、HSO、P0、P1、P2、P3、P4控制信號和時鐘信號:
RESET(入)、RD(出)、WR/WRL(出)、READY(入)、EA(入)、ALE/ADV(出)、XTALT1(入)、XTALT2(出)、BHE/WRHBHE/WRH功能總線高位字節(jié)允許(BHE)或?qū)懲獠看鎯ζ鞲呶蛔止?jié)(WRH)的輸出信號,由CCR選擇。由于8096的數(shù)據(jù)寬度為16位,可以按字或字節(jié)訪問存儲器;而8098的內(nèi)部總線雖為16位,但訪問外部存儲器都是按8位進行的。因此8096有BHE,而8098沒有。若A0=0,BHE=1:訪問低位(偶數(shù))字節(jié)若A0=1,BHE=0:訪問高位(奇數(shù))字節(jié)若A0=0,BHE=0:同時訪問高低兩個字節(jié)CPU的具體組成及其特色CPU的結(jié)構(gòu)(硬件結(jié)構(gòu)框圖)運算器:RALU和寄存器陣列控制器:控制器、地址譯碼器、指令寄存器及外部聯(lián)系方式:通過地址寄存器B和D-Bus通過地址寄存器A和A-BusCPU的特點大多數(shù)CPU采用面向累加器的結(jié)構(gòu),雖結(jié)構(gòu)較簡單,但減慢了運算速度。8096/8098的CPU采用面向寄存器的結(jié)構(gòu),每個通用寄存器都具有累加器的作用,故加快了整體速度。CPU總線數(shù)據(jù)總線D-Bus(16位)用于RALU和通用寄存器通過特殊功能寄存器(SFR)及輸入/輸出端口通訊。地址總線A-Bus(8位)用于RALU、通用寄存器和指令寄存器控制器通過存儲器控制器及片內(nèi)和片外存儲器通訊。注意CPU總線是CPU內(nèi)部總線,及后面談及的系統(tǒng)總線(外部總線)是不同的概念。(硬件結(jié)構(gòu)框圖)寄存器算術(shù)邏輯單元RALUALU(17bits)程序計數(shù)器PC(16bits)增量器(16bits)PSW高字節(jié)(8bits)字/移位寄存器(高或低)(各16bits)暫存寄存器(16bits)循環(huán)計數(shù)器(5bits)延時環(huán)節(jié)常數(shù)(0,1,2)CPU寄存器陣列在內(nèi)部RAM中,除了24個特殊功能寄存器外,其他各寄存器構(gòu)成寄存器陣列,每個寄存器都可作為通用寄存器,且均累加器的功能。232個寄存器陣列中,18H—19H兩個單元作為堆棧指示器,其他230個單元除不能存放程序代碼外,用作其它控制。(硬件結(jié)構(gòu)框圖)CPU的操作存放在外部存儲器的程序指令在存儲控制器的控制下由A-Bus進入CPU的指令寄存器;控制器對指令譯碼,產(chǎn)生響應(yīng)的操作控制信號;RALU完成指令所規(guī)定的操作。除法指令的執(zhí)行為例說明CPU的操作過程。(結(jié)構(gòu)框圖)
CPU的時序時序的概念在指令執(zhí)行過程中,對應(yīng)于微命令的脈沖信號的出現(xiàn)在時間上的先后次序,稱為時序。時鐘信號、狀態(tài)周期和指令周期振蕩信號及振蕩周期振蕩信號是片外振蕩電路產(chǎn)生,典型的振蕩頻率是12MHz,振蕩周期是1/12μs。時鐘信號及狀態(tài)周期時鐘信號是計算機一切微操作的基準信號,是振蕩信號三分頻后產(chǎn)生,時鐘信號的周期就是狀態(tài)周期T(典型值0.25μs)指令周期是一條指令執(zhí)行的時間,最短是4T,最長43T?!?8096∕8098的存儲器空間8096∕8098可尋址空間為64KB。分為片內(nèi)和片外兩大部分:8098片內(nèi)只有256個字節(jié)的RAM,在使用時,一般需要外接存儲器。片內(nèi)、片外統(tǒng)一編址,片內(nèi)占有最低地址號。一、存儲空間的配置情況存儲器的地址編號為0000~FFFFH,整個存儲空間根據(jù)系統(tǒng)功能均分若干個部份,如下表所示。存儲器分布圖只能作為數(shù)據(jù)存放,不能存放指令代碼非專用掉電保護寄存器陣列寄存器陣列占內(nèi)部RAM中的18H~0FFH共232個單元,作通用寄存器,不可存放指令代碼。(存儲器分布圖)18H和19H可作堆棧指針,但在無堆棧時可當(dāng)成通用寄存器使用。寄存器可直接使用地址,也可用字母命名(用偽指令為寄存器取名)。0F0H~0FFH共16個單元的掉電保護空間的數(shù)據(jù)不會因VCC掉電丟失(VPD接干電池)。特殊功能寄存器(SFR)特殊功能寄存器(SFR)00H~17H共24個單元是特殊功能寄存器(SpecialFunctionalRegisters),不能作為通用寄存器。(存儲器分布圖)SFR用于片內(nèi)的I/O功能部件的控制。TIMER1,TIMER2,HSI_TIME和HSO_TIME只能按字訪問,R0可按字或字節(jié)訪問,其他的專用寄存器只能按字節(jié)訪問。很多寄存器讀寫的功能不一樣,要注意。存儲器控制器RALU和內(nèi)外存儲器交換信息時需經(jīng)過存儲器控制器,它通過A-Bus及幾條控制線及RALU相連。(硬件結(jié)構(gòu)框圖)RALU中的PC值和數(shù)據(jù)地址都分成兩個字節(jié)傳送(A-Bus是8位)。為加速程序的取指,控制器中有一個輔助程序計數(shù)器(從PC),能自動加一,只有執(zhí)行非順序指令才取PC。為加速數(shù)據(jù)的存取,存儲器控制器設(shè)有三個字節(jié)的隊列?!?-5I∕O口及I∕O控制、狀態(tài)寄存器構(gòu)成:MCS-96系列單片機中,48腳的芯片有4個I/O口,68腳的芯片有5個I/O口功能:用于微機及外部設(shè)備的信息交換。輸入引腳用于將外部的數(shù)字或模擬信號輸入至計算機內(nèi)供CPU處理,輸出引腳將CPU輸出的數(shù)字量轉(zhuǎn)換成一定電平信號向外部輸出。組成:主要由輸入∕輸出緩沖器以及內(nèi)部寄存器組成。輸入口通過輸入緩沖器連向芯片內(nèi)部總線,輸出口通過輸出緩沖器連向內(nèi)部寄存器,而雙向口則有一個內(nèi)部寄存器、一個輸入緩沖器和一個輸出緩沖器組成P0口(數(shù)字輸入兼模擬輸入口)P0口專做輸入口使用,通過控制可以輸入數(shù)字量或模擬量。作為數(shù)字量輸入時,通過P0口的輸入緩沖器直接上D-Bus。(硬件結(jié)構(gòu)框圖)作為模擬量輸入時,通過A/D命令寄存器有選擇地將P0口的任一條接向A/D變換器。P0口是高阻抗數(shù)字量輸入口,而模擬量輸入時,其特性是變化的。P1口(準雙向I/O口)P1口由P1寄存器和驅(qū)動部分組成。T1和T2是低阻抗MOS管,T3是高阻抗耗盡型MOS管。P1作為輸入口時,必須先寫“1”再讀,才能獲得正確數(shù)據(jù)。P1口的一個管腳P2口(多功能口)P2口為多功能口,第二功能的選擇由IOC控制,它作為一般I/O口是準雙向性質(zhì)。48腳芯片只有P2.0~P2.2和P2.5,而64腳芯片則有P2.0~P2.7。P2.0:串行口發(fā)送TXD(出),受控于IOC1.5;P2.1:串行口接收RXD(入),無特殊控制;P2.2:外部中斷EXTINT(入),受控于IOC1.1;P2.3:定時器2的T2CLK(入),受控于IOC0.7;P2.4:定時2復(fù)位T2RST(入),受控于IOC0.5;P2.5:脈寬調(diào)制PWM(出),受控于IOC1.0;P2.6和P2.7:沒有第二功能。P2口的多功能引腳P2引腳號基本功能其它功能引腳選擇信號P2.0輸出TXD(串行口發(fā)送)IOC1.5P2.1輸入RXD(串行口接收)P2.2輸入EXTINT(外部中斷)IOC1.1P2.5輸出PWM(脈沖調(diào)制)IOC1.0P3口和P4口
(數(shù)字I/O口兼總線口)P3和P4都是雙功能口。P3和P4作為雙向I/O口時是漏極開路的。作輸入時必須先寫“1”才能讀;作輸出時必須外接上拉電阻。P3口的引腳編號為P3.0~P3.7,做系統(tǒng)總線時,用作地址/數(shù)據(jù)復(fù)用總線,傳送低字節(jié)AD0~AD7。P4口的引腳編號為P4.0~P4.7,做系統(tǒng)總線時,用作地址總線,傳送高字節(jié)A8~A15。P3和P4作為總線時是三態(tài)口。在傳送數(shù)據(jù)時,P3口的8根線分時傳送16位的數(shù)據(jù),先傳數(shù)據(jù)的低8位,再傳高8位:在傳送地址時,P3口送出地址碼的低8位;P4口傳送地址碼的高8位P3和P4口的結(jié)構(gòu)I/O控制寄存器IOC0控制定時器2和高速輸入單元(HSI)IOC1控制中斷源和高速輸出單元(HSO)及其他。I/O狀態(tài)寄存器IOS0保存關(guān)于HSO的有關(guān)狀態(tài)。IOS1保存定時器及HSI的有關(guān)狀態(tài)。注意讀完定時器的狀態(tài)后,IOS相應(yīng)位會被清0,故應(yīng)該備份。CCR的定義及說明芯片配置寄存器CCR(ChipConfi-gureRegister)存放芯片操作的有關(guān)信息。CCR的內(nèi)容不能直接設(shè)置,必須通過對CCB(地址為2018H)單元進行設(shè)置,做RESET操作后CCB中的內(nèi)容被自動裝入CCR。CCR的數(shù)據(jù)格式D7D6D5D4D3D2D1D0保留位(D0=1以便與將來的器件兼容)數(shù)據(jù)總線寬度選擇:D1=1是為16位,D1=0時為8位寫選通方式選擇:對于8098:D2=1時標準方式,0時寫選通方式地址有效選通信號選擇D3=1時,芯片提供地址所存允許信號ALE;D3=0時,芯片提供地址有效輸出信號ADV決定內(nèi)部就緒控制方式:即在總線周期中插入等待狀態(tài)數(shù)00:最多等待一個狀態(tài)周期01:最多等待兩個狀態(tài)周期10:最多等待三個狀態(tài)周期11:禁止內(nèi)部就緒控制片內(nèi)程序加密方式:00:讀/寫保護01:讀保護10:寫保護11:不保護對于8098,設(shè)置為10總線控制方式系統(tǒng)總線采用何種方式運行就是所謂的總線控制問題。通過CCR可靈活選擇不同的總線控制方式,減少外部硬件設(shè)計。CCR.3CCR.2輸出控制信號控制方式11100100WR+BHE,ALEWRH+WRL,ALEWR+BHE,ADVWRH+WRL,ADV標準寫選通地址有效寫選通和地址有效標準總線方式標準總線方式是最常用的控制方式,控制信號是ALE、BHE和WR。ALE下降沿時地址碼有效,地址鎖存入外部鎖存器。寫操作由WR控制,16位數(shù)據(jù)還需BHE控制。地址有效選通方式在此方式下,ALE的功能被地址有效選通信號ADV所代替。ADV既可作為鎖存觸發(fā)信號,又可作為片選信號,在存儲器片數(shù)不多時可節(jié)省外加的譯碼電路。寫選通方式8位總線時可選擇WR信號的寬度,這對于靠WR的下降沿鎖存數(shù)據(jù)的器件接口非常有用。16位總線時WRL和WRH取代了WR和BHE信號,因而無須譯碼電路便可得到奇偶字節(jié)的選通信號。地址有效且寫選通方式此方式既有地址有效選通方式的特點,又有寫選通方式的特點。就緒控制就緒控制:為協(xié)調(diào)慢速器件及CUP的連接,在CPU總線周期中插入等待狀態(tài),讓外設(shè)準備好。就緒控制是通過Ready引腳電平被拉低開始到Ready引腳變?yōu)楦唠娖?外部控制)或CCR所規(guī)定的狀態(tài)數(shù)到(內(nèi)部控制)結(jié)束來實現(xiàn)的。CCR.5CCR.4等待狀態(tài)數(shù)00011011最多等待一個狀態(tài)周期最多等待二個狀態(tài)周期最多等待三個狀態(tài)周期禁止內(nèi)部就緒控制時鐘源振蕩信號的產(chǎn)生CPU的工作是在時鐘的控制下有序地進行的。8096/8098的時鐘由外部時鐘源或外接石英晶體(6~12MHz)及內(nèi)部振蕩電路配合工作先產(chǎn)生1個振蕩信號,然后經(jīng)3分頻再生成3種不同相位的時鐘信號(A相、B相、C相,見下圖)3相時鐘的周期T被稱為狀態(tài)周期,也叫機器周期,簡稱T狀態(tài),它是8098CPU操作的最小計時單位。8098的大部分內(nèi)部操作及A相、B相或C相之一同步,因而運行速度大大提高。時鐘源振蕩信號的產(chǎn)生內(nèi)部振蕩方式:在引腳XTAL1和XTAL2外接石英晶振(簡稱晶振)。由于單片機內(nèi)部有一個高增益運算放大器,當(dāng)外接晶振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時鐘脈沖。C1、C2起穩(wěn)定振蕩頻率、快速起振的作用。電容值一般為5~30PF。時鐘源振蕩信號的產(chǎn)生把已有的時鐘信號引入單片機。這種方式適宜用于使單片機的時鐘及外部信號保持一致。內(nèi)部三相時鐘的產(chǎn)生復(fù)位信號的產(chǎn)生系統(tǒng)復(fù)位的目的是使系統(tǒng)能夠進入一種初始狀態(tài),為系統(tǒng)的正常工作做好準備。復(fù)位操作需RESET引腳上持續(xù)兩個狀態(tài)周期的低電平。復(fù)位電平由低變高后,芯片內(nèi)部執(zhí)行10個狀態(tài)周期,使一些寄存器初始化,清PSW,將2080H賦給PC,芯片配置字節(jié)(CCB)從2018H讀出寫入芯片配置寄存器(CCR)。復(fù)位信號可由復(fù)位電路產(chǎn)生,也可由監(jiān)視定時器溢出或復(fù)位指令RST產(chǎn)生。復(fù)位電路復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)寄存器或管腳復(fù)位狀態(tài)P1口不定PWM_CTRL00HTIMER10000HP2口xx0xxxxxBINT_PENDING不定TIMER20000HP3口0FFHINT_MASK00HIOS000HP4口0FFHAD_RESULT不定IOS100HIOC0x0x0x0x0BAD_COMMAND不定PSW0000HIOC1x0x0xxx1BHSI_MODE0FFHSP不定SP_STATx00xxxxxBHSI_STATUS不定PC2080HSP_CONxxxx0xxxBHSI_FIFO空RD高電平SBUF(TX)不定HSO_CAM空WR高電平SBUF(RX)不定WATCHDOG0000HALE/ADV低/高電平片內(nèi)的監(jiān)視定時器溢出或當(dāng)執(zhí)行專門的復(fù)位指令RST時,也將實現(xiàn)復(fù)位,復(fù)位操作過程一致。其它復(fù)位途徑第二章作業(yè)教材習(xí)題二2;5;10;15。存儲器的分類隨機存儲器RAM(RandomAccessMemory)用于存放現(xiàn)場輸入、輸出的數(shù)據(jù),運算的中間結(jié)果等各種臨時數(shù)據(jù),可隨時讀寫,但掉電數(shù)據(jù)會丟失。RAM從結(jié)構(gòu)上可分為靜態(tài)RAM和動態(tài)RAM。只讀存儲器ROM(ReadOnlyMemory)用于存放程序、表格和常數(shù)等永久性數(shù)據(jù),可讀但不可隨意修改,掉電數(shù)據(jù)不會丟失。ROM有掩模ROM、PROM、EPROM和E2PROM。存儲器芯片的選擇存儲器類型容量速度價格功耗對電源的要求總的原則:在滿足技術(shù)指標的前提下,盡量選用價格低廉、功耗小、電源種類少、使用方便的芯片。常用存儲器芯片——RAM芯片6264RAM芯片8K×8的靜態(tài)RAM,CMOS工藝,雙列直插式封裝,28個引腳,地址線A0~A12,使用單一+5V電源,額定功耗220mW,典型存取時間為200nsI0∕O0~I7∕O7數(shù)據(jù)線A0~A12地址線片選信號線數(shù)據(jù)輸出允許信號線62256RAM芯片容量:32K×8的靜態(tài)RAM,28個引腳,地址線A0~A14,使用單一+5V電源,常用存儲器芯片——EPROM芯片2764EPROM芯片8K×8的EPROM,紫外線擦除,電編程,雙列直插式封裝,28個引腳,地址線A0~A12,工作電源+5V,編程電源+21V,最大工作電流為100mA,標準讀出時間為250ns編程信號線27128EPROM芯片16K×8EPROM,紫外線擦除,電編程,雙列直插式封裝,28個引腳,地址線A0~A13,工作電源+5V,編程電源+21V,最大工作電流為150mA,標準讀出時間為250ns,及2764相似。27256EPROM芯片32K×8的大容量EPROM,紫外線擦除,電編程,雙列直插式封裝,28個引腳,地址線A0~A14,工作電源+5V,編程電源+21V,最大工作電流為150mA常用存儲器芯片——E2PROM芯片2816EEPROM芯片2K×8的大容量EPROM,電擦除,電編程,既能對單個存儲單元進行擦除和重寫,也能對整個芯片在10ms內(nèi)進行擦除。雙列直插式封裝,24個引腳,地址線A0~A10,工作電源+5V,編程電源+21V,典型讀取時間為250ms。
三種工作方式:(1)讀取式(2)單字節(jié)寫模式(3)芯片擦除模式2817AEEPROM芯片2K×8的EEPROM,電擦除,電編程,在進行擦寫操作時無需外加編程電源和寫入脈沖“擦、寫完畢”聯(lián)絡(luò)信號線選法實施方法字選:將存儲器芯片的全部地址線及系統(tǒng)總線的低位線一一對應(yīng)相連;片選:將剩余的系統(tǒng)地址總線高位中某一根直接用作某一存儲器的片選信號。特點:簡便易行,不需要外加任何譯碼邏輯電路,適用于容量較小的系統(tǒng)設(shè)計中。造成存儲空間浪費,且大多數(shù)情況下地址不連續(xù),給存儲器操作帶來不便;易產(chǎn)生地址重疊;任一時刻,只能有一個片選信號有效;片選信號比可用地址線多時,不能用例3-1某存儲器由兩片存儲器芯片組成,其中一片為RAM,容量為1K×8,另一片為EPROM,容量為4K×8,試用線選法為其編址,并決定每一芯片的地址范圍。線選法——示例解:一般單片機系統(tǒng)中,地址總線的根數(shù)是16根。因此設(shè)系統(tǒng)地址總線為16根,其編號為A0~A15。容量為1K×8的芯片的地址總線為10根,其編號為,它們及系統(tǒng)地址總線的低10位A0~A9相連;容量為4K×8的芯片的地址總線為12根,其編號為,它們及系統(tǒng)地址總線的低12位A0~A11相連;而片選信號由剩余的系統(tǒng)地址總線A12~A15給出,任用兩根。現(xiàn)設(shè)A12作為RAM的片選信號,A13作為EPROM的片選信號,且A12=1時選中RAM芯片,A13=1時選中EPROM芯片。CE是低電平有效,則每一片選線上均加一非門。RAM占用地址范圍:1000H~13FFHEPROM占用地址范圍:2000H~2FFFH例3-2某微機系統(tǒng)有兩片2K×8的RAM芯片,還有兩個外設(shè)端口,試用線選法為存儲器芯片和外設(shè)端口編址。解:外設(shè)端口編址方法:(1)存儲器方式;(2)I/O映射方式。8098是(1)方式。RAM芯片:容量均為2K×8,片上地址線共11根,編號為,其及系統(tǒng)地址總線的低11位A0~A10對應(yīng)相連,又將A11、A12作為兩RAM的片選信號,當(dāng)A11和A12分別為1時選中芯片。則兩芯片的地址范圍為:RAM1:0800H~0FFFH,2K空間RAM2:1000H~17FFH,2K空間外設(shè)端口:每一端口分別用A13和A14作為尋址線;當(dāng)A13為1時選中端口1,當(dāng)A14為1時選中端口2,則兩端口的地址范圍為:外設(shè)1:2000H;外設(shè)2:4000H線選法——示例全譯碼法實施方法字選:將存儲器芯片的全部地址線及系統(tǒng)總線的低位線一一對應(yīng)相連;片選:每一芯片的片選信號由剩余的系統(tǒng)地址總線全部高位經(jīng)地址譯碼電路產(chǎn)生。特點:(1)若系統(tǒng)有N根地址線,則全譯碼法可提供全部的2N個地址碼,避免了線選法的浪費地址空間、地址編號不連續(xù)及地址重疊的問題;(2)全譯碼法及線選法的區(qū)別在于產(chǎn)生片選信號方法不同,線選法是將一根系統(tǒng)地址線作為一塊芯片(或一個外設(shè)端口)的片選信號,而全譯碼法則是將若干根系統(tǒng)地址線譯碼后得到某個片選信號;(3)全譯碼法需要譯碼電路,使得電路的結(jié)構(gòu)復(fù)雜,也增加了成本,容量越大,用于片選信號的地址線越少,電路愈簡單,而外設(shè)端口的地址選擇信號需要全部系統(tǒng)地址線,連線多,電路較為復(fù)雜,當(dāng)系統(tǒng)中有多個外設(shè)時,這一問題突出;(4)實際上,可采用集成電路的快速譯碼器及少量的門電路,對若干個存儲器或外設(shè)端口統(tǒng)一譯碼;(5)方便擴展例3-3某微機系統(tǒng)中有兩片存儲器芯片,一片為RAM,容量為2K×8,另一片為EPROM,容量為2K×8,試用全譯碼法為其編址,要求RAM的起始地址為0000H,且兩芯片的地址空間是連續(xù)的。全譯碼法_示例解:RAM芯片的容量為2K×8,片上地址線共11根,它們及系統(tǒng)地址總線的低11位A0~A10對應(yīng)相連,其起始地址為0000H,末地址為07FFH。片選信號應(yīng)用A11~A15,共5根線經(jīng)譯碼后產(chǎn)生。由芯片安排的地址號可見,應(yīng)在這5根線輸出全為0時選中該芯片。因此片選信號的邏輯表達式為:EPROM:芯片的容量為2K×8,其地址線亦為11根,它們及系統(tǒng)地址總線的低11位A0~A10對應(yīng)相連,該芯片的地址空間及RAM芯片相連,地址號為0800H其起始地址為0000H~0FFFH,其片選信號由A11~A15經(jīng)譯碼后產(chǎn)生。由芯片地址號可知,當(dāng)A15A14A13A12A11=00001時選中該片,則芯片的片選信號表達式為:解:EPROM芯片:容量為8K×8,其地址線共13根,地址范圍為2000H~3FFFH,13根地址線及系統(tǒng)地址總線的低13位A0~A12直接相連,則A13~A15作為片選信號,且A13A14A15=1時選中芯片,則片選信號的邏輯表達式:外設(shè)端口的地址號應(yīng)用全部地址總線A0~A15共16根經(jīng)譯碼后產(chǎn)生,因其地址號為4F08H,則當(dāng)A0~A15=0100111100001000B時選中該端口。若外設(shè)的片選信號是低電平有效,則邏輯表達式為:例3-4一單片機系統(tǒng)有一容量為8K×8的EPROM芯片,其起始地址為2000H,一外設(shè)的地址號為4F08H,試用全譯碼法編址。部分譯碼法實施方法字選:將存儲器芯片的全部地址線及系統(tǒng)總線的低位線一一對應(yīng)相連;片選:對于存儲器芯片,由剩余地址總線中部分譯碼產(chǎn)生;對外設(shè)端口可由線選法產(chǎn)生。特點:(1)是線選法和全譯碼的綜合,既避免了過多的地址空間的浪費,又簡化了電路;(2)使用多少根地址線完成片選信號的譯碼需根據(jù)系統(tǒng)的具體情況而定;(3)仍存在存儲空間的浪費;(4)實際上,一般采用譯碼器(如三—八譯碼器74L138)對存儲器編碼。例3-5某系統(tǒng)中三片2K×8的EPROM芯片和兩個外設(shè)端口,試用部分譯碼法為它們編址,要求存儲器的起始地址為0000H且地址號是連續(xù)的。部分譯碼法——示例解:EPROM芯片的地址線共11根,它們及系統(tǒng)地址總線的低11位A0~A10對應(yīng)相連,其起始地址為0000H,地址總線中剩有A11~A155根線可用于片選信號,現(xiàn)用其中三根線A11、A12、A13來產(chǎn)生三片EPROM芯片和兩個外設(shè)端口的片選信號,具體連接如下:EPROM1:地址為0000H~07FFH,則A13A12A11=000EPROM2:地址為0800H~0FFFH,則A13A12A11=001EPROM3:地址為1000H~17FFH,則A13A12A11=010外設(shè)端口1:取A13A12A11=011,地址為1800H外設(shè)端口2:取A13A12A11=100,地址為2000H存儲器及系統(tǒng)連接的器件
——常用譯碼器、鎖存器常用譯碼器:74LS138(3-8線譯碼器)譯碼器的作用:避免分散使用多個由一般邏輯器件構(gòu)成的譯碼電路,節(jié)省元器件,使整個電路結(jié)構(gòu)更為簡潔清晰。譯碼器的輸出作為存儲器或I/O端口的片選信號,一片譯碼器有多個輸出。使能端由G1、G2A、G2B組成,輸入端為A、B、C,輸出端為,低電平有效,僅當(dāng)使能端的電平組合為G1G2AG2B=100時,才能對輸入端進行譯碼,譯出23=8個有效信號。常用譯碼器:74LS139(雙2-4線譯碼器)兩個獨立的譯碼器,每個譯碼器有一個使能端(G端)、二個輸入端(A、B)和四個輸出端。僅當(dāng)使能端G=0時,才能對輸入端進行譯碼,譯出22=4個有效信號。存儲器及系統(tǒng)連接的器件
——常用譯碼器、鎖存器鎖存器:74LS373(8位)8位鎖存器,有一個使能端(G端)、一個輸出控制端E、8個輸入端(1D~8D)、8個輸出端(1Q~8Q)。功能如下表存儲器及系統(tǒng)連接的器件
——常用譯碼器、鎖存器驅(qū)動器:74LS240(8位反碼)、74LS244(8位原碼)8096/8098單片機的最小系統(tǒng)最基本的8096/8098單片機系統(tǒng)的硬件邏輯最簡單的存儲器及單片機的連接最簡單的存儲器及單片機的連接例3-6設(shè)8098單片機及一片2764EPROM芯片相連,試畫出接線圖多個存儲器芯片的單片機系統(tǒng)例:8096單片機需外接16K的RAM和16K的EPROM,RAM用6264,EPROM用2764,要求RAM芯片的起始地址為0000H,且四塊存儲器芯片的地址空間是連續(xù)的,另外系統(tǒng)中還有兩個外設(shè)端口,也需為它們編址,試設(shè)計這一系統(tǒng)。解:為使存儲空間連續(xù),且為進一步擴展留有余地,使用譯碼器來產(chǎn)生片選信號。多個存儲器芯片的單片機系統(tǒng)各存儲器和I/O端口的地址分布6264(低位):00xxxxxxxxxxxxx0B(0000H-3FFFH偶地址)6264(高位):00xxxxxxxxxxxxx1B(0000H-3FFFH奇地址)2764(低位):01xxxxxxxxxxxxx0B(4000H-7FFFH偶地址)2764(高位):01xxxxxxxxxxxxx1B(0000H-3FFFH奇地址)I/O端口1:8000H-BFFFH(16K字節(jié))I/O端口2:C000H-FFFFH(16K字節(jié))如果使用WR和BHE,則可以將上例的寫選通控制方式改為標準總線控制方式。如何實現(xiàn)可以作為思考題留給大家。例3-7第三章作業(yè)教材
習(xí)題三7、8。指令的格式基本指令格式:操作碼[操作數(shù)]機器指令格式:操作碼第一操作數(shù)低字節(jié)第一操作數(shù)高字節(jié)第二操作數(shù)目的操作數(shù)匯編指令格式:操作碼操作碼操作數(shù)操作碼目的操作數(shù),源操作數(shù)操作碼目的操作數(shù),第二操作數(shù),第一操作數(shù)
機器指令由操作碼和操作數(shù)兩個部分組成。操作碼:規(guī)定CPU應(yīng)執(zhí)行的操作類型,是指令的核心部分,每一指令必有操作碼。操作碼一般放在指令的最前面。一種代碼對應(yīng)一種操作。8096指令中操作碼的長度占1個字節(jié)。操作數(shù):這一部分給出參及操作的數(shù)據(jù)或數(shù)據(jù)所在的地址,操作數(shù)可有多種類型。操作數(shù)并不是指令的必要部分,在許多指令中可只有操作碼而無操作數(shù)。操作數(shù)在指令中可以沒有,最多可以有3個。操作數(shù)的長度在0~5個字節(jié)之間。每一字節(jié)為8位,第一個字節(jié)必須是操作碼。8096/8098的大多數(shù)指令的操作碼為一個字節(jié),最多為兩個字節(jié),且操作碼為兩個字節(jié)的情況只限于帶符號的乘除法指令。此時,操作碼的第一個字節(jié)均為FEH,這表明在8096/8098指令系統(tǒng)中,凡是以FEH為第一個字節(jié)的指令必是帶符號的乘除法指令,且機器碼的第二個字節(jié)必是操作碼。操作數(shù)位于操作碼之后,在8096/8098的指令中最多可有三個操作數(shù)。指令的格式——機器指令格式操作數(shù)的類型操作數(shù)的形式:直接數(shù)據(jù)(立即數(shù))、寄存器中的數(shù)據(jù)和存儲器中的數(shù)據(jù)。操作數(shù)的定位規(guī)則:位于寄存器或存儲器中的操作數(shù)需按類型規(guī)則存放,如有些操作數(shù)只能位于寄存器,有些操作數(shù)的有效地址必須是偶數(shù)地址等。操作數(shù)的類型:字節(jié)型(Byte)、字型(Word)、位型(Bit)、短整型(ShortInteger)、整型(Integer)、雙字型(DoubleWord)、長整型(LongInteger)8位無符號數(shù)(字節(jié)型)BYTE是無符號的8位變量,其取值范圍是0~255。對BYTE操作數(shù)可施行算術(shù)和邏輯關(guān)系操作,其結(jié)果以模256的方式出現(xiàn)。邏輯操作時,字節(jié)型變量是按位進行的。數(shù)據(jù)格式:D7~D0取值范圍:0~255操作數(shù)的類型16位無符號數(shù)(字型)WORD是無符號的16位變量,其取值范圍是0~65535。同理,對字型變量施行算術(shù)和邏輯關(guān)系操作時,其結(jié)果以模65536的形式出現(xiàn);邏輯操作也是按位進行的。在MCS-96的地址空間中,字型數(shù)據(jù)必須按偶數(shù)字節(jié)定位。一個字型數(shù)據(jù)的低位字節(jié)占有偶地址,而高位字節(jié)占有相鄰的較高(奇地址)地址。字的地址就是其低位字節(jié)的地址。數(shù)據(jù)格式:D15~D0取值范圍:0~65535定位規(guī)則:字型操作數(shù)的低字節(jié)應(yīng)位于偶地址單元,高字節(jié)位于下一個高地址(奇地址)單元。且字型操作數(shù)的地址以其低字節(jié)的地址表示。操作數(shù)的類型位型(Bit)位型操作數(shù)指字型操作數(shù)中的某一位,它只取“真”或“偽”兩個值(布爾值)。8096/8098單片機可對寄存器陣列中的任意單元進行位操作,用以控制程序的流向。由此可見,對8096/8098單片機而言,僅內(nèi)部寄存器陣列中的單元才有位型操作數(shù)的概念,且只有位測試并跳轉(zhuǎn)類指令涉及位型操作數(shù)。短整型(ShortInteger)短整型操作數(shù)為8位的有符號變量,其最高位D7位為符號位,它的取值范圍為-128~+127。原則上講,對短整型數(shù)可進行算術(shù)和邏輯運算,運算時應(yīng)注意符號位的變化情況;及字節(jié)型操作數(shù)相同,短整型數(shù)無定位規(guī)則,亦即它可位于存儲空間的任意地方,地址號位奇偶數(shù)均可。操作數(shù)的類型整型(Integer)整型操作數(shù)為16位的有符號變量,其最高位位為符號位,它的取值范圍為-32768~+32767[-~+]。對整型數(shù)可進行算術(shù)和邏輯運算,但需注意運算對符號位的影響。整型數(shù)的定位規(guī)則及字型數(shù)的定位規(guī)則完全相同。32位無符號數(shù)(雙字型)無符號的32位變量,其取值范圍是0~4294967295。數(shù)據(jù)格式:D31~D0
,取值范圍:0~(232-l)應(yīng)用場合:32位移位;32位除以16位運算中的被除數(shù);16位乘以16位運算中的乘積。定位規(guī)則:雙字型操作數(shù)必須存放在8096片內(nèi)RAM中,并且以能被4除盡的地址為其起始地址。雙字型操作數(shù)的地址以其最低字節(jié)的地址表示。操作數(shù)的類型狀態(tài)標志及狀態(tài)字8096/8098單片機存放標志位的程序狀態(tài)字PSW(ProgramStateWord)由位于CPU的標志寄存器和SFR的中斷屏蔽寄存器組成。應(yīng)用中既可以對PSW整體操作,也可對狀態(tài)標志和中斷屏蔽分別單獨操作。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0ZN
VVT
C-
ISTINT_MASK堆棧(Stack)堆棧用于存放臨時數(shù)據(jù),遵循“先進后出”的規(guī)則。MCS-96單片機堆棧既可建在片內(nèi)的寄存器陣列中,也可設(shè)置在內(nèi)外存儲器中。堆棧是由高地址向低地址方向生長的。堆棧的操作分為壓棧和出棧,每次操作都是針對一個字(16位)。ST標志粘連標志:保存右移時進入進位標志繼而從進位標志移出的內(nèi)容,用以正確反映右移后的四舍五入。四舍五入的規(guī)則常用:值≥1/2LSB則進位;否則舍去。改進:值<1/2LSB則舍去;值>1/2LSB則進位;值=1/2LSB時若LSB=1則進位,否則舍去,結(jié)果為偶數(shù)。CST移去位的值000110110(0≤值<1/4LSB)1/4LSB(1/4LSB≤值<1/2LSB)1/2LSB(1/2LSB≤值<3/4LSB)3/4LSB(3/4LSB≤值<LSB)尋址及尋址方式尋址是尋找指令所需的操作數(shù),因為大多數(shù)操作數(shù)是存在存儲器中,所以明確了存操作數(shù)的地址就找到了操作數(shù)。尋址方式就是得到操作數(shù)的方法。尋址方式愈多樣,指令系統(tǒng)就愈靈活,編程就愈方便,計算機的功能就愈強大。程序的編制和運行效率都及尋址方式有關(guān),主要體現(xiàn)在程序所占的空間和運行所需的時間。在8096/8098單片機中,內(nèi)部RAM取代了寄存器,其是整個存儲器空間的一部分,只不過地位較特殊,可作為寄存器使用。內(nèi)部RAM中的各單元均有特定的地址號,并無相應(yīng)的寄存器名,實際使用時,及其指令中應(yīng)以地址號表示寄存器,在匯編指令中,寄存器也以其對應(yīng)的地址號的形式出現(xiàn)。
MCS-96系列單片機內(nèi)部寄存器陣列中寄存器的命名為了方便使用,對8096/8098單片機中內(nèi)部寄存器陣列中的通用寄存器進行定義,予以命名。如將20H單元定義為字寄存器(16位)時,以AX表示,將22H單元定義為8位的寄存器,用BL表示等。要注意這樣定義的寄存器名僅僅是一個符號而已,并不代表特定的地址,即給寄存器命名時,編程人員可隨心所欲,可用任意的自負作為某個單元的寄存器名,但一旦給定某個寄存器命名,則不再予以變動,以免引起錯誤。對寄存器的命名通常用偽指令完成,關(guān)于偽指令將在本章的最后予以介紹。在介紹8096/8098的指令系統(tǒng)是,為了便于討論,應(yīng)以三個字型(16位)寄存器AX、BX和CX,及六個字節(jié)型(8位)。對BH、BL、CH和CL,其中AH為AX的高位字節(jié)(高8位),AL為AX的低位字節(jié)。對BH、BL、CH和CL也可作出類似的解釋。MCS—96系列單片機指令系統(tǒng)的尋址方式寄存器尋址寄存器間接尋址立即尋址自動增量尋址短變址尋址長變址尋址零寄存器尋址堆棧指針寄存器尋址MCS-96系列單片機指令系統(tǒng)的尋址方式寄存器尋址若指令中的全部操作數(shù)均為寄存器,則該指令所使用的是寄存器尋址方式,例如:LDB24H,38HADDAX,BX,CXINCBAH注意第一條指令中的兩個寄存器直接使用其他址號,而后面兩條指令中的寄存器均使用定義的寄存器名采用這種尋址方式的指令的機器碼字節(jié)數(shù)少,而且由于寄存器在芯片內(nèi)部,故執(zhí)行速度快。寄存器間接尋址若操作數(shù)置于存儲器單元中,但指令中并不直接給出該存儲器單元的地址號,而是將此地址號置于某一字型寄存器中,即用存儲器間接表示存儲器地址號,這種尋址方式稱為寄存器間接尋址方式。例如:LD20H,[30H]ADDBAL,BL,[CX]說明:(1)存放地址號的寄存器稱作間址寄存器,其存放的是地址號,也將其稱為地址指針。由于存儲器單元的地址號是16位的,因此間址寄存器是字型寄存器,由兩個字節(jié)組成,且使用方括號。(2)應(yīng)注意在間址寄存器中存放的是操作數(shù)所在的存儲器單元的地址號,不要誤以為存放的是操作數(shù)本身,理解這一點對正確地理解和使用這一尋址方式是極為重要的,譬如在第二條指令中,如在寄存器CX存放的數(shù)是2800H,則表明真正的操作數(shù)存放在地址號為2800H的單元中。(3)在一條指令中只能有一個操作數(shù)采用間接尋址方式,也就是說,只能有一個操作數(shù)存放在存儲器單元中,且其他的操作數(shù)必須為寄存器操作數(shù)。(4)利用這種尋址方式的指令,機器碼字節(jié)數(shù)較少,對操作數(shù)的尋址也較為靈活方便。MCS—96系列單片機指令系統(tǒng)的尋址方式立即尋址:LDB20H,#30H操作數(shù)以立即數(shù)的形式給出。為了避免和地址號混淆,8096/8098匯編指令中的立即數(shù)加前綴“#”符號。例如:LD20H,#2A00HLDBBL,#20H第一條指令中,操作數(shù)2A010H為立即數(shù),而另一操作數(shù)20H則為寄存器。在這種尋址方式中,操作數(shù)直接體現(xiàn)為數(shù)據(jù)本身,最為直觀明了,指令的機器碼字節(jié)數(shù)少,缺點是不夠靈活。
MCS—96系列單片機指令系統(tǒng)的尋址方式自動增量尋址:LDB20H,[30H]+這種尋址方式及寄存器間接尋址方式基本相同,即操作數(shù)的地址由間址寄存器給出,但有一個很重要的不同,即在指令執(zhí)行后,間址寄存器中的地址變量將自動增量,增值的大小取決于操作數(shù)的類型。若是單字節(jié)的操作數(shù),則間址寄存器的值自動增1;若是兩字節(jié)的操作數(shù),則自動增2,例如;LDBAL,[CX]+LDAX,[CX]+關(guān)于這種尋址方式,有如下幾點說明:(1)在匯編指令中,為及間接尋址方式區(qū)別,該尋址方式的標記是在間址寄存器的符號后加一“+”號。(2)在編程
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 商場保安雇傭合同范本
- 商鋪門頭合同范本
- Java開發(fā)述職報告
- 企業(yè)信息管理習(xí)題(附參考答案)
- 人教版部編版小學(xué)語文一年級上冊人教版大還是小教學(xué)設(shè)計教案24
- 幼兒園衛(wèi)生安全管理
- 胃食管反流病臨床管理
- 小學(xué)生信息科技自主學(xué)習(xí)能力培養(yǎng)策略
- 2025年拉擠樹脂項目合作計劃書
- 肺栓塞患者溶栓后的護理
- 內(nèi)蒙古機電職業(yè)技術(shù)學(xué)院單獨招生(機電類)專業(yè)知識考試題庫(必練500題)
- 早期矯正知識培訓(xùn)課件模板
- 電梯井道作業(yè)安全規(guī)程培訓(xùn)
- 化工建設(shè)行業(yè)分析
- 人教版三年級上冊數(shù)學(xué)應(yīng)用題100題及答案
- 私樁共享商業(yè)計劃書
- 蔬菜基地報告
- 大數(shù)據(jù)在人力資源管理中的應(yīng)用案例
- 福州地鐵公司招聘考試題目
- 2024-2025年美的集團財務(wù)報表分析
- 小學(xué)語文期末質(zhì)量分析報告
評論
0/150
提交評論