片機(jī)原理及其接口技術(shù)[1]_第1頁(yè)
片機(jī)原理及其接口技術(shù)[1]_第2頁(yè)
片機(jī)原理及其接口技術(shù)[1]_第3頁(yè)
片機(jī)原理及其接口技術(shù)[1]_第4頁(yè)
片機(jī)原理及其接口技術(shù)[1]_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第8章 16位單片機(jī)簡(jiǎn)介 主要內(nèi)容: 在MCS-51單片機(jī)基礎(chǔ)上以8096為例簡(jiǎn)單介紹了16位單片機(jī)MCS-96的基本組成、結(jié)構(gòu)、指令系統(tǒng),目的在于拋磚引玉,為讀者今后學(xué)習(xí)和應(yīng)用16位單片機(jī)奠定基礎(chǔ)。重點(diǎn)是16位單片機(jī)的特色(如:高速輸入與高速輸出、脈沖寬度調(diào)制PWM輸出、模擬輸入等)。難點(diǎn)是16位單片機(jī)與8位單片機(jī)的比較,在掌握8位單片機(jī)基礎(chǔ)上較快地掌握16位單片機(jī)的應(yīng)用。 片機(jī)原理及其接口技術(shù)18.1 概述 MCS-96系列單片機(jī)與MCS-51系列單片機(jī)相比較, 軟、硬件資源遠(yuǎn)比較豐富,CPU采用寄存器寄存器結(jié)構(gòu),提高了操作速度和數(shù)據(jù)吞吐能力;具有更快的運(yùn)算速度,更多的外圍子系統(tǒng),更高效的

2、指令系統(tǒng),在89C196KC以后的芯片中,增加了一個(gè)外設(shè)事務(wù)服務(wù)器PTS,專門用于處理外設(shè)中斷事務(wù),大大減少了CPU的軟件開(kāi)銷。 MCS-96系列單片機(jī)的主要特點(diǎn)包括以下幾個(gè)方面: (1)16位CPU,具有高速處理能力,沒(méi)有累加器,采用寄存器寄存器結(jié)構(gòu),具有232字節(jié)的寄存器陣列; (2)具有高效的指令系統(tǒng),大大提高了編程效率; (3) 4/8通道的10位A/D轉(zhuǎn)換器;片機(jī)原理及其接口技術(shù)1 (4)脈寬調(diào)制PWM輸出裝置; (5)全雙工的串行口,并有專門的波特率發(fā)生器; (6)高速的I/O系統(tǒng); (7)5個(gè)8位的I/O端口; (8)可編程的8個(gè)優(yōu)先級(jí)中斷源; (9)16位監(jiān)視定時(shí)器; (10)

3、可動(dòng)態(tài)配置的總線; (11)ROM/EPROM的內(nèi)容可加密; (12)2個(gè)16位的定時(shí)器/計(jì)數(shù)器,4個(gè)16位的軟件定時(shí)器。應(yīng)用范圍:應(yīng)用于自動(dòng)控制系統(tǒng)、測(cè)試系統(tǒng)、智能儀器、外設(shè)控制器、家用電器等。 片機(jī)原理及其接口技術(shù)18.2 MCS-96單片機(jī)的內(nèi)部結(jié)構(gòu)與引腳 8.2.1 CPU結(jié)構(gòu)與引腳 1型號(hào)與封裝形式 作為系列產(chǎn)品,MCS-96有不同的型號(hào)和封裝形式。MCS-96系列產(chǎn)品包含2個(gè)子系列:8096和8096BH,8096BH兼容8096,但前者在性能上比后者更強(qiáng),MCS-96系列的各型號(hào)產(chǎn)品如下表所示。片機(jī)原理及其接口技術(shù)1 MCS-96共有DIP,PGA,PLCC,LCC四種不同的封裝

4、形式。圖(a)、(b)分別給出了DIP、PLCC形式的封裝圖。 (a)MCS-96單片機(jī)DIP封裝形式 (b)MCS-96單片機(jī)PLCC封裝形式 片機(jī)原理及其接口技術(shù)12引腳功能 68引腳的MCS-96的各引腳功能分別說(shuō)明如下: VCC:主電源電壓(+5V)。 VSS:數(shù)字地。 VPD:RAM備用電源引腳(+5V)。 VREF:A/D轉(zhuǎn)換器的基準(zhǔn)電源,也是其模擬部分的電源(+5V)。 ANGND:A/D轉(zhuǎn)換器的參考模擬地,通常與Vss端同電平。 VBB:由片內(nèi)的反偏置發(fā)生器發(fā)出的襯底電壓。 XTAL1:振蕩器中反相器的輸入和內(nèi)部時(shí)鐘發(fā)生器的輸入。 XTAL2:振蕩器中反相器的輸出。 CLKOU

5、T:內(nèi)部時(shí)鐘發(fā)生器的輸出端,其頻率為1/3振蕩頻率。 :復(fù)位輸入端,在此引腳保待2個(gè)狀態(tài)周期以上的低電平信號(hào),將使芯片復(fù)位。 TEST:輸入為低時(shí),可選通工廠測(cè)試方式。正常工作時(shí),應(yīng)把此腳接到Vcc。片機(jī)原理及其接口技術(shù)1NMI:非屏蔽中斷信號(hào)輸入。INST:當(dāng)對(duì)外部存儲(chǔ)器進(jìn)行讀操作時(shí),此引腳輸出為高,表示是取指周期。ALE:地址鎖存允許輸出。 :對(duì)外部存儲(chǔ)器的讀信號(hào)輸出。 :對(duì)外部存儲(chǔ)器的寫信號(hào)輸出。 :外部存儲(chǔ)器總線的高字節(jié)允許信號(hào)輸出。READY:加長(zhǎng)存儲(chǔ)器周期的輸出控制信號(hào)。HSI.0HSI.3:高速輸入單元的輸入信號(hào)。HSO.0HSO.5:高速輸出單元的輸出信號(hào)。P0.0P0.7:8

6、位高阻抗輸入口??勺鳛?位數(shù)字量輸入口,也可以作為片內(nèi)A/D轉(zhuǎn)換器的8個(gè)模擬量輸入信號(hào)線。當(dāng)對(duì)片內(nèi)EPROM編程時(shí),另有定義。P1.0P1.7:8位準(zhǔn)雙向I/O口。P2.0P2.7:8位多功能口,其中,6條引腳分別與RXD,TXD,EXTINT,T2CLK,T2RST,PWM功能線復(fù)用。P2.6和P2.7為準(zhǔn)雙向口線,當(dāng)對(duì)片內(nèi)EPROM編程時(shí),另有定義。片機(jī)原理及其接口技術(shù)1 P3.0P3.7,P4.0P4.7:均為具有漏極開(kāi)路輸出的8位雙向I/O口。這些引腳可用做多路轉(zhuǎn)換的地址/數(shù)據(jù)總線,它們具有內(nèi)部上拉功能。當(dāng)對(duì)片內(nèi)EPROM編程時(shí),另有定義。 3MCS-96系列結(jié)鉤特點(diǎn) MCS-96系列

7、16位單片機(jī)內(nèi)部結(jié)構(gòu)如下圖所示。 8096 CPU是由寄存器、算術(shù)邏輯單元(RALU)、寄存器陣列、指令寄存器、控制單元、地址譯碼寄存器等部分組成。其最大特點(diǎn)是RALU直接對(duì)232字節(jié)寄存器陣列及專用寄存器進(jìn)行各種算術(shù)邏輯操作,而沒(méi)有采用常規(guī)的累加器結(jié)構(gòu),從而加速了數(shù)據(jù)的處理能力,提高了CPU的吞吐能力。同時(shí),由于可通過(guò)專用寄存器來(lái)直接控制I/O口,加速了I/O過(guò)程。(1)CPU總線 CPU內(nèi)部的寄存器陣列通過(guò)一個(gè)控制器和2條總線( 8位的A-BUS和16位的D-BUS )與RALU相連。 D-BUS只用于RALU與寄存器之間傳送數(shù)據(jù),而A-BUS用做上述傳送過(guò)程中的地址總線。當(dāng)CPU訪問(wèn)片內(nèi)

8、、外存儲(chǔ)器時(shí),A-BUS可作為多路轉(zhuǎn)換的地址/數(shù)據(jù)總線。 片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)1(2)RALU 8096的大多數(shù)運(yùn)算是靠RALU完成的。它由一個(gè)17位的ALU(其中,1位為符號(hào)位)、程序計(jì)數(shù)器PC、程序狀態(tài)字寄存器PSW、循環(huán)計(jì)數(shù)器和3個(gè)暫存寄存器組成的,其結(jié)構(gòu)如圖下所示。 片機(jī)原理及其接口技術(shù)1 RALU中,所有的寄存器都是16位或17位的。高位字寄存器和低位字寄存器都有自己專用的移位邏輯,可進(jìn)行數(shù)據(jù)規(guī)格化、乘除法等運(yùn)算中的邏輯移位操作。延時(shí)環(huán)節(jié)用于把16位總線D-BUS上的地址/數(shù)據(jù)轉(zhuǎn)換成8位總線A-BUS上的信息。常數(shù)0,1和2存儲(chǔ)在RALU中,以加速某些運(yùn)算,如取

9、補(bǔ)或加1、減1運(yùn)算。16位程序狀態(tài)字PSW高位保留了用戶程序所需的信息狀態(tài)字。PSW的格式如下表所示。 片機(jī)原理及其接口技術(shù)116位程序狀態(tài)字PSW的各位的定義如下: Z:零標(biāo)志,操作結(jié)果為零時(shí)置位。 N:符號(hào)標(biāo)志,操作結(jié)果為負(fù)值時(shí)置位,與溢出無(wú)關(guān)。 V:溢出標(biāo)志,當(dāng)產(chǎn)生溢出時(shí)置位。 VT:溢出陷阱標(biāo)志,當(dāng)V標(biāo)志置位時(shí),VT也置位。但VT置1后只能由專門的指令使其清0。 C:進(jìn)位標(biāo)志,操作結(jié)果最高位產(chǎn)生進(jìn)位時(shí)置位。減法操作產(chǎn)生借位時(shí)C置位。 I:總的中斷允許位。 ST:黏附位,在右移操作時(shí),一個(gè)1進(jìn)入C,然后又移出時(shí)置位。ST與C一起使用,可以在右移操作后控制四舍五入。 INT-MASK:中斷

10、屏蔽寄存器,控制每一種中斷源是被允許還是禁止。 片機(jī)原理及其接口技術(shù)1 (3)CPU寄存器陣列 寄存器陣列實(shí)際上是片內(nèi)的RAM,它包含232字節(jié)的RAM單元,這些單元可以按字節(jié)、字或雙字進(jìn)行訪問(wèn),每個(gè)單元都可以為RALU所用。 (4)時(shí)鐘信號(hào) MCS-96具有內(nèi)部振蕩器電路和3相時(shí)鐘發(fā)生器,如圖所示,一般在XTALl和XTAL2端外接一個(gè)612MHz的晶體。振蕩器的頻率信號(hào)被3分頻后產(chǎn)生3個(gè)內(nèi)部定時(shí)信號(hào),稱為A,B,C相,每一相的占空比為33%,每3個(gè)滿周期為1個(gè)狀態(tài)周期。XTALl與A,B,C相定時(shí)信號(hào)的關(guān)系如圖所示。 片機(jī)原理及其接口技術(shù)18.2.2 存儲(chǔ)器與I/O端口1存儲(chǔ)器 MCS-9

11、6具有一個(gè)邏輯上完全統(tǒng)一的存儲(chǔ)器空間,尋址范圍為64KB。存儲(chǔ)器空間分配如右圖所示。 片機(jī)原理及其接口技術(shù)1 0000H00FFH為內(nèi)部RAM(寄存器陣列和專用寄存器),1FFEH和1FFFH分別留給P3和P4口,9個(gè)中斷向量放在2000H2011H 中,2012H207FH存放廠家的測(cè)試編碼。所以系統(tǒng)復(fù)位時(shí),PC指向2080H。片內(nèi)的程序存儲(chǔ)器配置在2000H3FFFH上。如果用戶系統(tǒng)需要配置RAM,建議將其配置在 0100H1FFFH上,使這8KB的RAM 與片內(nèi)的RAM連在一起,便于使用。內(nèi)部RAM的分配如下頁(yè)圖所示。 00H17H為專用寄存器,26個(gè)專用寄存器名及其功能列于下頁(yè)表中。其

12、中,18H19H用于存放堆棧指針。從18H到FFH是用戶使用的內(nèi)部RAM區(qū),可按字節(jié)、字、雙字存取。RALU能直接對(duì)它們讀寫。F0HFFH用于掉電時(shí)存放需保護(hù)的數(shù)據(jù),這16個(gè)單元可由VPD引腳單獨(dú)對(duì)其供電(+5V,1mA),以保護(hù)其內(nèi)容。 RALU與內(nèi)、外存儲(chǔ)器的通信是由存儲(chǔ)器控制管理的,其間有A-BUS和一些控制信號(hào)相連。因?yàn)锳-BUS是8位的,為加快取指速度,控制器內(nèi)有一個(gè)輔助程序計(jì)數(shù)器,存儲(chǔ)器控制器中有一個(gè)3字節(jié)的指令隊(duì)列,均用以加快指令的執(zhí)行。 片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)12外部存儲(chǔ)器的擴(kuò)展 8096擴(kuò)展2764的電路與8位單片機(jī)的連接電路類似。A

13、LE用于鎖存地址。8096中可以按字或按字節(jié)訪問(wèn)外部存儲(chǔ)器。其電路如下圖所示。片機(jī)原理及其接口技術(shù)11中斷系統(tǒng) MCS-96的中斷系統(tǒng)允許9種中斷源,對(duì)應(yīng)的中斷向量和優(yōu)先權(quán)如下表所示,其中,用戶可以使用的只有8種中斷源。但每一種中斷源均可對(duì)應(yīng)多種激活方式,如下頁(yè)圖所示。從這個(gè)意義上講,8096有多至20個(gè)中斷源。 8.2.3 中斷系統(tǒng)片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)12中斷控制 MCS-96有2個(gè)寄存器與中斷控制密切相關(guān),它們分別為中斷懸掛寄存器和中斷屏蔽寄存器,兩者的定義是類似的,相應(yīng)的位對(duì)應(yīng)于同一種中斷源,如下圖所示。片機(jī)原理及其接口技術(shù)1 09H為中斷懸掛寄存器(INT-PEN

14、DING),當(dāng)CPU檢測(cè)到上述8種中斷源有由低到高跳變時(shí),就把該寄存器的相應(yīng)位置位,即把此中斷懸掛(懸掛是指有中斷申請(qǐng)而尚未得到響應(yīng)的狀態(tài))起來(lái)。一旦被懸掛的中斷得到響應(yīng),相應(yīng)位被清除。中斷懸掛寄存器可以用指令寫入,故可以靠對(duì)該寄存器的某位置1來(lái)產(chǎn)生軟件中斷,也可以靠清除相應(yīng)位來(lái)撤除已懸掛的中斷。 08H為中斷屏蔽寄存器(INT-MASK),用來(lái)控制是否允許某個(gè)中斷源的中斷申請(qǐng)。當(dāng)某位置1時(shí),相應(yīng)的中斷被允許,否則被禁止。對(duì)8種中斷源總的控制要用EI和DI指令。8個(gè)中斷源是有優(yōu)先權(quán)的,當(dāng)有多種中斷同時(shí)掛起時(shí),CPU先響應(yīng)優(yōu)先權(quán)最高的一種中斷。片機(jī)原理及其接口技術(shù)18.2.4 高速I/O部件和定

15、時(shí)器/計(jì)數(shù)器 高速I/O部件是由高速輸入單元(HSI)、高速輸出單元(HSO),一個(gè)定時(shí)器(定時(shí)器1),一個(gè)事件計(jì)數(shù)器(定時(shí)器2)組成?!案咚佟钡暮x是這個(gè)部件的工作只與內(nèi)部的定時(shí)器有關(guān)(由定時(shí)器同步),而不用CPU的干預(yù)。 HSI用來(lái)記錄事件發(fā)生的時(shí)間,HSO能按程序設(shè)定的時(shí)間觸發(fā)一個(gè)事件。定時(shí)器也能單獨(dú)地工作。1定時(shí)器 定時(shí)器的工作一般要和HSI,HSO部件配合協(xié)調(diào)工作。定時(shí)器1:是一個(gè)16位的計(jì)數(shù)器,其時(shí)鐘信號(hào)來(lái)自內(nèi)部時(shí)鐘發(fā)生電路,每8個(gè)狀態(tài)周期計(jì)數(shù)器加1。當(dāng)計(jì)滿時(shí),能觸發(fā)一個(gè)中斷,對(duì)I/O狀態(tài)寄存器(IOSl)的位5置位。作為系統(tǒng)實(shí)時(shí)時(shí)鐘的定時(shí)器1,它一直在循環(huán)計(jì)數(shù),任何時(shí)候都可以讀它

16、,只有用系統(tǒng)復(fù)位操作才能使它停止計(jì)數(shù)。定時(shí)器2:定時(shí)器2也是一個(gè)16位的計(jì)數(shù)器,其時(shí)鐘來(lái)自引腳HSIl/T2CLK,實(shí)際上是個(gè)外部事件計(jì)數(shù)器。每當(dāng)引腳上有正和負(fù)跳變時(shí),計(jì)數(shù)器加1。當(dāng)計(jì)滿時(shí),也觸發(fā)一個(gè)中斷,并對(duì)IOS1.4置位。定時(shí)器2可以有多種清零方式。 片機(jī)原理及其接口技術(shù)12高速輸入單元HIS 高速輸入單元HSI是用來(lái)記錄外部事件發(fā)生時(shí)刻及轉(zhuǎn)入相應(yīng)的處理程序的,其結(jié)構(gòu)如右圖所示。它包括HSI方式寄存器和HSI狀態(tài)寄存器(如下頁(yè)圖所示)。720先進(jìn)先出(FIFO)寄存器陣列、保持寄存器、HSI時(shí)間寄存器、HSI事件檢測(cè)器和定時(shí)器1等部分。 片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)1 HS

17、I事件檢測(cè)器可測(cè)出HIS.0HSI.3中任一引腳上發(fā)生的變化事件,定時(shí)器1記錄事件發(fā)生的時(shí)間,事件的形式可以由方式寄存器設(shè)定。定時(shí)器1所記錄的時(shí)間及表示哪一個(gè)引腳上發(fā)生事件的信息存入FIFO中。 HSI也可產(chǎn)生中斷。一種是利用IOCl的位7控制,這種中斷稱為HSI數(shù)據(jù)有效中斷,其中斷向量地址為2004H2005H。另一種是在HSI.0引腳上有0到1的跳變時(shí)所產(chǎn)生的中斷,稱為HSI.0中斷,其中斷向量地址為2008H2009H。 在讀取HSI的內(nèi)容時(shí),先讀HSI狀態(tài)寄存器,以獲知HSI引腳的目前狀態(tài),以及是哪些引腳在記錄時(shí)刻發(fā)生了變化事件。再讀HSI的時(shí)間寄存器,每讀一次時(shí)間寄存器,就使FIFO

18、失掉一項(xiàng)數(shù)據(jù)。因此,若在讀狀態(tài)寄存器之前讀取時(shí)間寄存器,就會(huì)丟失狀態(tài)寄存器中的信息。片機(jī)原理及其接口技術(shù)1 HSI.0HSI.3都是多功能引腳,要把它們用做高速輸入功能時(shí),需要用IOC0進(jìn)行控制,下圖是IOC0對(duì)HSI引腳功能的控制。 3高速輸出部件HSO 高速輸出部件用來(lái)在預(yù)定的時(shí)間內(nèi)觸發(fā)外部事件并申請(qǐng)中斷。由HSO命令寄存器、HSO時(shí)間寄存器、HSO保持寄存器、按內(nèi)容訪問(wèn)的存儲(chǔ)器(CAM)陣列、比較器、多路開(kāi)關(guān)、控制邏輯、輸出部件和兩個(gè)定時(shí)器組成,如下頁(yè)圖所示。 片機(jī)原理及其接口技術(shù)1片機(jī)原理及其接口技術(shù)1這些事件包括:?jiǎn)?dòng)A/D轉(zhuǎn)換、復(fù)位定時(shí)器2、設(shè)置4個(gè)軟件定時(shí)器標(biāo)準(zhǔn)、接通6根輸出線。

19、當(dāng)這些事件中任一種被觸發(fā)時(shí),就能產(chǎn)生中斷請(qǐng)求。其中的內(nèi)容為可尋址的存儲(chǔ)器陣列CAM,它由8個(gè)23位長(zhǎng)度的寄存器陣列組成,其中,16位存放觸發(fā)某一事件的預(yù)定時(shí)間,7位存放命令。 HSO命令寄存器如右圖所示,位03(000FH通道)表示這一幀命令是對(duì)哪一種事件發(fā)出的。 片機(jī)原理及其接口技術(shù)14軟件定時(shí)器 HSO通過(guò)編程可設(shè)定4個(gè)16位的軟件定時(shí)器(ST0ST3),當(dāng)4個(gè)定時(shí)器中有一個(gè)時(shí)間到,就自動(dòng)在IOS1中設(shè)置一個(gè)標(biāo)志。如果對(duì)命令寄存器的位4置位,就能產(chǎn)生一個(gè)軟件定時(shí)器中斷。中斷服務(wù)程序通過(guò)檢測(cè)IOC1能獲知是哪一個(gè)定時(shí)器時(shí)間到了,多個(gè)軟件定時(shí)器同時(shí)發(fā)生中斷將產(chǎn)生多重中斷。片機(jī)原理及其接口技術(shù)1

20、8.2.5 脈沖寬度調(diào)制PWM 大多數(shù)控制系統(tǒng)都需要用A/D和D/A兩種轉(zhuǎn)換器,但要在同一芯片上同時(shí)完成A/D和D/A轉(zhuǎn)換是很困難的。MCS-96用脈沖寬度調(diào)制PWM的方法來(lái)實(shí)現(xiàn)D/A轉(zhuǎn)換的功能。其原理如右圖所示。其中主要部件有脈寬控制寄存器、比較器和計(jì)數(shù)器。片機(jī)原理及其接口技術(shù)1 通過(guò)設(shè)定脈寬寄存器的值PWM可以獲得256種不同脈寬的波形,如下圖所示(圖中給出了5種不同占空比的輸出波形)。當(dāng)脈寬寄存器為0時(shí),輸出始終為低電平,當(dāng)脈寬寄存器為255時(shí),輸出基本上為高電平。從圖8中看出PWM的輸出不是理想的直流模擬信號(hào),還要在外電路中加以平滑。但是很多電機(jī)和開(kāi)關(guān)電源可以直接使用PWM的輸出信號(hào)。

21、 片機(jī)原理及其接口技術(shù)18.2.6 模擬輸入 MCS-96系列的部分產(chǎn)品中有一個(gè)逐次逼近型的10位A/D轉(zhuǎn)換器,共有8個(gè)通道。當(dāng)采用12MHz晶振時(shí),每次轉(zhuǎn)換時(shí)間為42s。A/D轉(zhuǎn)換8個(gè)通道的模擬電壓輸入引腳與P0口的8根口線復(fù)用,通過(guò)寫命令寄存器可以控制通道選擇和啟動(dòng)A/D轉(zhuǎn)換,命令寄存器如下圖所示。每啟動(dòng)一次A/D轉(zhuǎn)換都必須對(duì)命令寄存器進(jìn)行一次寫操作。用HSO觸發(fā)轉(zhuǎn)換時(shí)也不例外。片機(jī)原理及其接口技術(shù)1 當(dāng)一次轉(zhuǎn)換正在進(jìn)行時(shí),又啟動(dòng)了另一次新的轉(zhuǎn)換,會(huì)把正在進(jìn)行的轉(zhuǎn)換撤銷掉,A/D轉(zhuǎn)換結(jié)果寄存器的內(nèi)容也會(huì)被消除掉。因此在新的轉(zhuǎn)換開(kāi)始前,應(yīng)把原轉(zhuǎn)換結(jié)果讀走。結(jié)果寄存器是16位的,讀出時(shí)應(yīng)按字節(jié)

22、分兩次讀出。結(jié)果寄存器如下圖所示。 8.2.7 其他部件1串行口 MCS-96有一個(gè)全雙工的串行口,能同時(shí)收發(fā)信息。與MCS-51串行口是兼容的,也有4種工作模式(請(qǐng)參考MCS-51串行口),通過(guò)對(duì)串行口控制寄存器的編程設(shè)定其工作模式。MCS-96有一個(gè)單獨(dú)的波特率發(fā)生器專供串行口使用,故HSI,HSO和定時(shí)器的功能不受影響,這一點(diǎn)有別于MCS-51。片機(jī)原理及其接口技術(shù)12輸入/輸出口 MCS-96有5個(gè)8位口,有的只作輸入,有的只作輸出,也有的是輸入/輸出雙向口且有替換功能。5個(gè)8位口功能如下:P0口:僅用作輸入,與A/D轉(zhuǎn)換器的模擬輸入信號(hào)復(fù)用引腳。P1口:準(zhǔn)雙向8位口。P2口:多功能雙

23、向口。其功能如下表所示。P3口與P4口:P3口與P4口具有兩種功能。當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),用作系統(tǒng)的地址/數(shù)據(jù)分時(shí)復(fù)用總線。若引腳接高電平,則它們是漏極開(kāi)路的雙向輸入/輸出口。 輸入/輸出口有2個(gè)控制寄存器IOC0和IOC1,用來(lái)控制I/O口線的功能。IOC0控制定時(shí)器2和HSI的4個(gè)引腳的功能;IOC1控制其他一些口線的功能。此外,還有2個(gè)狀態(tài)寄存器IOS1和IOS0,用來(lái)記錄一些口線的當(dāng)前狀態(tài)和HSO,HSI的某些狀態(tài)。 片機(jī)原理及其接口技術(shù)13監(jiān)視定時(shí)器WDT和系統(tǒng)復(fù)位 監(jiān)視定時(shí)器WDT是一個(gè)16位計(jì)數(shù)器,在啟動(dòng)后,每個(gè)狀態(tài)周期其計(jì)數(shù)器加1,當(dāng)計(jì)數(shù)器溢出時(shí),把引腳電平拉低至少2個(gè)狀態(tài)周期的

24、時(shí)間,使系統(tǒng)復(fù)位,重新初始化。 監(jiān)視定時(shí)器提供了一種使系統(tǒng)能從瞬間故障中自動(dòng)恢復(fù)的能力,如果出觀故障,程序不能正常運(yùn)行,則WDT沒(méi)有按時(shí)清0而產(chǎn)生超時(shí)(溢出)時(shí),WDT溢出就會(huì)使系統(tǒng)復(fù)位,這樣就能保證在非正常工作時(shí)間不會(huì)超過(guò)16ms。 片機(jī)原理及其接口技術(shù)18.3 MCS-96單片機(jī)指令系統(tǒng)簡(jiǎn)介 MCS-96指令系統(tǒng)的功能是極其豐富的,包括數(shù)據(jù)傳送、算術(shù)運(yùn)算、內(nèi)外的堆棧操作、轉(zhuǎn)移(無(wú)條件轉(zhuǎn)移、條件轉(zhuǎn)移、位測(cè)試轉(zhuǎn)移)和調(diào)用、循環(huán)控制、單寄存器操作、移位、控制和規(guī)格化等功能。8.3.1 操作數(shù)類型 MCS-96指令操作數(shù)類型有7種:字節(jié)Byte、字Word、短整數(shù)Short-Integer:、整數(shù)

25、Integer、位bit、雙字Double-Word、長(zhǎng)整數(shù)Long-Integer。 與一般單片機(jī)不同,在MCS-96指令系統(tǒng)中,所用工作寄存器并不是特定地址的寄存器,是通過(guò)用戶在編程時(shí)把內(nèi)部RAM中一些單元定義為工作寄存器。指令中的操作數(shù)也不是寄存器名,而是廣義的符號(hào),它們是:片機(jī)原理及其接口技術(shù)1 Breg:內(nèi)部RAM中的一個(gè)字節(jié)寄存器。有時(shí),為了區(qū)分是目的操作數(shù),還是源操作數(shù),可用前綴“D”或“S”來(lái)標(biāo)志。 Wreg:內(nèi)部RAM中的一個(gè)字寄存器。也可在前面加“D”或“S”,以識(shí)別它是目的操作數(shù),還是源操作數(shù)。 Baop:可用任一種尋址方式的字節(jié)操作數(shù)。 Waop:可用任一種尋址方式的字

26、操作數(shù)。 Bitno:操作碼中的三位,由這三位選擇一個(gè)字節(jié)中的某一位。 Lreg:內(nèi)部RAM中的一個(gè)雙字寄存器。 Cadd:程序中代碼的地址。片機(jī)原理及其接口技術(shù)18.3.2 尋址方式 MCS-96指令系統(tǒng)中具有6種基本尋址方式:(1)寄存器直接尋址 直接訪問(wèn)片內(nèi)256字節(jié)的RAM,一條指令中可以有多至3個(gè)操作數(shù)采用這種尋址方式。 如:ADD AX, BX, CX; (AX)=(BX)+(CX) MUL AX, BX, ; (AX)=(AX)(BX) INCB CL; (CL)=(CL)+1(2)間接尋址 訪問(wèn)整個(gè)存儲(chǔ)空間,被訪問(wèn)數(shù)的地址應(yīng)放在一個(gè)16位的寄存器中,一條指令中只能有一個(gè)操作數(shù)采

27、用間接尋址,其他操作數(shù)必須采用寄存器直接尋址。 如:ADDB AL, BL, DX ; (AL)=(BL)+(DX) POP AX片機(jī)原理及其接口技術(shù)1 在這類尋址方式中還包含自動(dòng)增量間接尋址,但需根據(jù)操作數(shù)是字節(jié)還是字,指令執(zhí)行后地址寄存器要自動(dòng)加1或2。 如: LD BX, 1234H LDB AX, BX+ ; 把1234H單元的內(nèi)容送AX的地位字節(jié), 執(zhí)行后 (BX)=1235H(3)立即尋址 操作數(shù)直接放在指令中。一條指令中只能有一個(gè)立即數(shù),其他操作數(shù)必須采用寄存器直接尋址。 如: PUSH #1234H ADD AX, #340H(4)變址尋址 短變址尋址:有效地址是由基地址加偏移

28、量組成的,基址寄存器為內(nèi)部RAM中的一個(gè)16位寄存器,偏移量為一個(gè)帶符號(hào)的8位數(shù)??稍L問(wèn)整個(gè)存儲(chǔ)空間。 如:MULB AX, BL,3CX ; (AX)=(BL)(CX)+3) LD AX, 12 BX ; (AX)(BX)+12)片機(jī)原理及其接口技術(shù)1 長(zhǎng)變址尋址:與短變址類似,只是偏移量是16位數(shù)。 如:AND AX, BX, TABLECX ; (AX)=(BX)(CX)+TABLE) 其中:TABLE是一個(gè)16位的地址變量。(5)零寄存器尋址方式 硬件把內(nèi)部RAM的00H和01H單元固定為零,故稱為零寄存器。除了在一些計(jì)算和比較運(yùn)算中用來(lái)做常數(shù)零外,還可用在長(zhǎng)變址尋址中,從而可以直接訪問(wèn)整個(gè)存儲(chǔ)空間。 如:ADD AX, 12340 ; (AX)(寄存器0)+1234)(6)堆棧指針寄存器尋址 堆棧指針也可以當(dāng)做一般的寄存器用,因此可做短變址尋址中的地址寄存器 如:LD AX, SP; (AX)(SP)(SP+1) 片機(jī)原理及其接口技術(shù)18.3.3 MCS-96指令系統(tǒng)簡(jiǎn)介 教材P310表8.3.1中列出了全部

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論