第2章MC9S12DG128的結(jié)構(gòu)與工作原理ppt課件_第1頁
第2章MC9S12DG128的結(jié)構(gòu)與工作原理ppt課件_第2頁
第2章MC9S12DG128的結(jié)構(gòu)與工作原理ppt課件_第3頁
第2章MC9S12DG128的結(jié)構(gòu)與工作原理ppt課件_第4頁
第2章MC9S12DG128的結(jié)構(gòu)與工作原理ppt課件_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第2章章 MC9S12DG128的構(gòu)造與任務(wù)原理的構(gòu)造與任務(wù)原理本章內(nèi)容本章內(nèi)容 MC9S12DG128MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造 MC9S12DG128MC9S12DG128引腳功能引腳功能 MC9S12DG128MC9S12DG128的運(yùn)轉(zhuǎn)方式的運(yùn)轉(zhuǎn)方式 MC9S12DG128MC9S12DG128的存儲器組織的存儲器組織概述概述MC9S12DG128的內(nèi)核是16位中央處置單元CPU12,有29個(gè)獨(dú)立的數(shù)字I/O口A、B、K和E,20個(gè)獨(dú)立的數(shù)字I/O口H、P、J具有中斷和喚醒功能。MC9S12DG128內(nèi)部為16位數(shù)據(jù)通道,外部總線可以按照8位數(shù)據(jù)窄總線方式操作,允許與

2、8位數(shù)據(jù)總線的存儲器銜接,以降低本錢。根據(jù)系統(tǒng)需求,PLL電路允許調(diào)整電源功耗及性能。概述概述MC9S12DG128MC9S12DG128主要特性:主要特性:1616位位 HCS12 CPUHCS12 CPU內(nèi)部存儲器內(nèi)部存儲器128 KB Flash128 KB Flash8 KB RAM8 KB RAM2KB EEPROM2KB EEPROM概述概述v外圍設(shè)備外圍設(shè)備v2個(gè)加強(qiáng)型串行通訊接口個(gè)加強(qiáng)型串行通訊接口SCIv2個(gè)串行外設(shè)接口個(gè)串行外設(shè)接口SPIv3個(gè)個(gè) MSCAN 模塊模塊v1個(gè)個(gè)I2C總線接口總線接口v2個(gè)個(gè)8通道通道10位位 A/Dv8通道通道16位加強(qiáng)型捕捉定時(shí)器位加強(qiáng)型捕

3、捉定時(shí)器ECTv8通道通道8位或位或4通道通道16位位 PWM2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造vMC9S12系列單片機(jī)的芯片主要有兩種封裝方式,即80腳的QFP (Quad Flat Pack)和112腳的LQFP (Low profile Quad Flat Pack),個(gè)別子系列還有其它封裝方式,如48腳。v由于各子系列中的存儲器類型、容量和功能模塊不完全一樣,因此,不同芯片之間引腳功能略有差別,引腳標(biāo)號不一定兼容。v但在每個(gè)子系列中,例如,一切128kB Flash的MC9S12D系列的單片機(jī),功能一樣的引腳都兼容。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造圖2

4、.1 MC9S12DG128內(nèi)部構(gòu)造框圖2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造v圖2.1為MC9S12DG128的內(nèi)部構(gòu)造框圖,其中功能模塊按照112引腳封裝給出。MC9S12DG128單片機(jī)的112個(gè)引腳中,除了地址、數(shù)據(jù)、控制三總線外,主要是I/O引腳,多數(shù)引腳具有兩種或兩種以上的功能。 v圖中左、右兩部分分別是單片機(jī)的中心和接口部分,包括CPU12、存儲器、通用I/O、電壓調(diào)整模塊、后臺調(diào)試模塊、系統(tǒng)運(yùn)轉(zhuǎn)監(jiān)視模塊、時(shí)鐘產(chǎn)生模塊、系統(tǒng)集成模塊、外部總線接口、A/D轉(zhuǎn)換器、加強(qiáng)型捕捉定時(shí)器模塊、脈寬調(diào)制模塊、串行通訊接口、CAN總線接口、Byteflight接口、字節(jié)數(shù)據(jù)鏈路通訊

5、接口和管腳中斷邏輯。 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)CPU12CPU12內(nèi)部構(gòu)造內(nèi)部構(gòu)造 【組成】算術(shù)邏輯運(yùn)算單元【組成】算術(shù)邏輯運(yùn)算單元ALUALU、CPUCPU控制邏輯電路、控制邏輯電路、CPUCPU存放器和指令隊(duì)列。存放器和指令隊(duì)列。內(nèi)部采用內(nèi)部采用1616位數(shù)據(jù)總線,各部件經(jīng)過內(nèi)部總線相連,位數(shù)據(jù)總線,各部件經(jīng)過內(nèi)部總線相連,外部數(shù)據(jù)總線外部數(shù)據(jù)總線8/168/16位可選。位可選。 1 12020位的位的ALUALU部件部件完成指令所規(guī)定的算術(shù)完成指令所規(guī)定的算術(shù)/ /邏

6、邏輯運(yùn)算等操作。輯運(yùn)算等操作。2 2控制邏輯控制邏輯擔(dān)任解釋指令和產(chǎn)生相應(yīng)的控制擔(dān)任解釋指令和產(chǎn)生相應(yīng)的控制信號,并一致協(xié)調(diào)各部件的任務(wù)。信號,并一致協(xié)調(diào)各部件的任務(wù)。3 3存放器組存放器組用于存儲操作數(shù)或運(yùn)算結(jié)果。用于存儲操作數(shù)或運(yùn)算結(jié)果。4 43 3級指令隊(duì)列級指令隊(duì)列用來緩沖程序信息。用來緩沖程序信息。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)CPU12CPU12內(nèi)部存放器內(nèi)部存放器CPU12CPU12的存放器集的存放器集基于累加基于累加器,包括器,包括5 5個(gè)個(gè)1616位的存放器和位

7、的存放器和一個(gè)一個(gè)8 8位的形狀存放器。位的形狀存放器。其中,累加器其中,累加器D D又可分成兩個(gè)又可分成兩個(gè)8 8位的存放器位的存放器A A和和B B,1616位存放位存放器器D D、X X、Y Y通常用于暫存數(shù)據(jù)通常用于暫存數(shù)據(jù)或存儲器地址;或存儲器地址;SPSP為堆棧指為堆棧指針,用于指示堆棧的位置;針,用于指示堆棧的位置;PCPC為程序指針,用于尋址程為程序指針,用于尋址程序代碼;條件碼存放器序代碼;條件碼存放器CCRCCR用用來反映運(yùn)算結(jié)果的特征,也來反映運(yùn)算結(jié)果的特征,也控制控制CPUCPU的行為。的行為。圖2.6 編程模型(Programming Model)2.1 MC9S12

8、DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)1 1累加器累加器D D累加器累加器D D是一個(gè)是一個(gè)1616位存放器,其高位和低位字節(jié)分別稱為存放位存放器,其高位和低位字節(jié)分別稱為存放器器A A和存放器和存放器B B,可分別作為兩個(gè),可分別作為兩個(gè)8 8位存放器進(jìn)展訪問。實(shí)踐位存放器進(jìn)展訪問。實(shí)踐上,上,D D和和A A、B B指向同一個(gè)存放器,只是稱號不同而已,指向同一個(gè)存放器,只是稱號不同而已,A A、B B、D D均可稱為累加器。在任何時(shí)辰都可以運(yùn)用均可稱為累加器。在任何時(shí)辰都可以運(yùn)用8 8位或位或1616位

9、方式位方式對累加器進(jìn)展訪問。對累加器進(jìn)展訪問。 假設(shè)把一個(gè)假設(shè)把一個(gè)1616位數(shù)據(jù)存入累加器位數(shù)據(jù)存入累加器D D中,那么高中,那么高8 8位在位在A A存放器中,存放器中,低低8 8位在位在B B存放器中。與此相對應(yīng),假設(shè)把存放器中。與此相對應(yīng),假設(shè)把D D存放器中的一個(gè)存放器中的一個(gè)1616位數(shù)據(jù)存入存儲器,那么高位數(shù)據(jù)存入存儲器,那么高8 8位在存儲器的低位地址,低位在存儲器的低位地址,低8 8位在存儲器的高位地址。位在存儲器的高位地址。留意,任何留意,任何Motorola (Freescale)Motorola (Freescale)公司獨(dú)立設(shè)計(jì)的公司獨(dú)立設(shè)計(jì)的1616位、位、3232

10、位位CPUCPU中,存放器與存儲器字節(jié)的對應(yīng)關(guān)系都是高位數(shù)據(jù)存中,存放器與存儲器字節(jié)的對應(yīng)關(guān)系都是高位數(shù)據(jù)存放于低位地址,低位數(shù)據(jù)占用高位地址,這與放于低位地址,低位數(shù)據(jù)占用高位地址,這與IntelIntel公司的公司的CPUCPU數(shù)據(jù)存放格式正好相反。數(shù)據(jù)存放格式正好相反。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)2 2間址間址/ /變址存放器變址存放器(Index Register) X(Index Register) X、Y YCPU12CPU12內(nèi)部有兩個(gè)內(nèi)部有兩個(gè)1616位地址存放

11、器位地址存放器IXIX和和IYIY,稱為間接,稱為間接尋址存放器,簡稱間址存放器或變址存放器。普通尋址存放器,簡稱間址存放器或變址存放器。普通情況下作為指針存放器,用于多種尋址方式下的地情況下作為指針存放器,用于多種尋址方式下的地址計(jì)算,也可用于暫時(shí)存放數(shù)據(jù)或參與一些運(yùn)算,址計(jì)算,也可用于暫時(shí)存放數(shù)據(jù)或參與一些運(yùn)算,只能按照只能按照1616位方式訪問。位方式訪問。在匯編言語中,這兩個(gè)存放器進(jìn)一步簡稱為存放器在匯編言語中,這兩個(gè)存放器進(jìn)一步簡稱為存放器X X和存放器和存放器Y Y。在數(shù)據(jù)塊傳送時(shí),。在數(shù)據(jù)塊傳送時(shí),X X和和Y Y存放器都可以存放器都可以自動加、減自動加、減1 11616,X X

12、存放器常作為源地址指針,存放器常作為源地址指針,Y Y存放器常作為目的地址指針,故存放器常作為目的地址指針,故X X和和Y Y存放器也稱作存放器也稱作指針存放器。指針存放器。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)3 3堆棧指針堆棧指針SP (Stack Pointer)SP (Stack Pointer)堆棧堆棧在內(nèi)存中專門開辟出來的、按照在內(nèi)存中專門開辟出來的、按照“先進(jìn)后出,后進(jìn)先先進(jìn)后出,后進(jìn)先出原那么進(jìn)展存取的區(qū)域。出原那么進(jìn)展存取的區(qū)域。堆棧指針堆棧指針SPSP用來專門指示堆棧

13、位置。用來專門指示堆棧位置。在運(yùn)用堆棧之前,要先給在運(yùn)用堆棧之前,要先給SPSP賦值,以規(guī)定堆棧的起始位置,稱賦值,以規(guī)定堆棧的起始位置,稱為棧底。當(dāng)數(shù)據(jù)存入堆棧后,堆棧指針的值將隨之變化。最為棧底。當(dāng)數(shù)據(jù)存入堆棧后,堆棧指針的值將隨之變化。最后一個(gè)入棧的數(shù)據(jù)所在的位置后一個(gè)入棧的數(shù)據(jù)所在的位置( (單元單元) )稱為棧頂。稱為棧頂。通常,通常,CPUCPU的堆棧有兩種類型:向上生長型和向下生長型。如的堆棧有兩種類型:向上生長型和向下生長型。如圖圖2.72.7所示。所示。圖2.7堆棧的類型2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(S

14、tar Core)(Star Core)向上生長型堆棧向上生長型堆棧棧底占用較低地址,棧頂占用較高地址。棧底占用較低地址,棧頂占用較高地址。數(shù)據(jù)壓入堆棧時(shí),數(shù)據(jù)壓入堆棧時(shí),SPSP的內(nèi)容自動加的內(nèi)容自動加1 1,作為本次進(jìn)棧的地址,作為本次進(jìn)棧的地址,然后再存入信息。隨著數(shù)據(jù)的存入,然后再存入信息。隨著數(shù)據(jù)的存入,SPSP的值越來越大。數(shù)據(jù)的值越來越大。數(shù)據(jù)從堆棧彈出后,從堆棧彈出后,SPSP的內(nèi)容自動減的內(nèi)容自動減1 1。向下生長型堆棧向下生長型堆棧棧底占用較高地址,棧頂占用較低地址。棧底占用較高地址,棧頂占用較低地址。CPU12CPU12的堆棧屬于向下生長型,將一個(gè)字節(jié)數(shù)據(jù)壓入堆棧時(shí),的堆

15、棧屬于向下生長型,將一個(gè)字節(jié)數(shù)據(jù)壓入堆棧時(shí),SPSP自動減自動減1 1。從堆棧中彈出一個(gè)字節(jié)數(shù)據(jù)時(shí),。從堆棧中彈出一個(gè)字節(jié)數(shù)據(jù)時(shí),SPSP自動加自動加1 1。假。假設(shè)操作數(shù)為雙字節(jié),那么設(shè)操作數(shù)為雙字節(jié),那么SPSP每次加每次加2 2或減或減2 2。因此,隨著數(shù)據(jù)。因此,隨著數(shù)據(jù)的存入,的存入,SPSP的值越來越小。的值越來越小。SPSP總是指向最后壓入堆棧的一個(gè)字節(jié)數(shù)據(jù),稱為實(shí)棧頂。壓棧總是指向最后壓入堆棧的一個(gè)字節(jié)數(shù)據(jù),稱為實(shí)棧頂。壓棧操作時(shí),先調(diào)整指針操作時(shí),先調(diào)整指針( (減減1 1或減或減2)2),后保管數(shù)據(jù)。初始化時(shí),后保管數(shù)據(jù)。初始化時(shí),普通將普通將SPSP指向與棧底相鄰的單元,

16、它不屬于棧底,以此表示指向與棧底相鄰的單元,它不屬于棧底,以此表示堆棧為空。堆棧為空。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)SPSP主要用于堆棧管理,用于中斷和子程序調(diào)用時(shí)保管系統(tǒng)地址主要用于堆棧管理,用于中斷和子程序調(diào)用時(shí)保管系統(tǒng)地址信息,也可以存儲暫時(shí)信息,普通不做他用。信息,也可以存儲暫時(shí)信息,普通不做他用。在不影響其內(nèi)容的前提下,也可替補(bǔ)用作一切變址尋址方式下在不影響其內(nèi)容的前提下,也可替補(bǔ)用作一切變址尋址方式下的變址存放器,通常不參與運(yùn)算。的變址存放器,通常不參與運(yùn)算。獨(dú)一例外

17、的是,在符號擴(kuò)展指令中用作目的存放器。此外,還獨(dú)一例外的是,在符號擴(kuò)展指令中用作目的存放器。此外,還具有本身的加、減具有本身的加、減1 1指令。指令。影響影響SPSP內(nèi)容的指令有加載、目的操作數(shù)為內(nèi)容的指令有加載、目的操作數(shù)為SPSP的存放器傳送指令、的存放器傳送指令、壓棧、退棧、加減壓棧、退棧、加減1 1、中斷和子程序調(diào)用等。、中斷和子程序調(diào)用等。運(yùn)用堆棧前,用戶程序必需對運(yùn)用堆棧前,用戶程序必需對SPSP進(jìn)展初始化設(shè)置。復(fù)位時(shí)進(jìn)展初始化設(shè)置。復(fù)位時(shí)SP=$00FFSP=$00FF。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Sta

18、r Core)(Star Core)4 4程序計(jì)數(shù)器程序計(jì)數(shù)器PC (Program Counter)PC (Program Counter)1616位程序計(jì)數(shù)器位程序計(jì)數(shù)器PCPC的內(nèi)容決議程序執(zhí)行的順序,用戶的內(nèi)容決議程序執(zhí)行的順序,用戶可以讀取,但不能直接寫入。由于要自動尋址復(fù)位可以讀取,但不能直接寫入。由于要自動尋址復(fù)位矢量,復(fù)位后矢量,復(fù)位后PCPC自動回到默許形狀。自動回到默許形狀。單片機(jī)任務(wù)時(shí),單片機(jī)任務(wù)時(shí),PCPC一直指向指令序列中下一條要執(zhí)行一直指向指令序列中下一條要執(zhí)行的指令,分支、調(diào)用或轉(zhuǎn)移指令均能改動的指令,分支、調(diào)用或轉(zhuǎn)移指令均能改動PCPC的值。的值。PCPC是特殊

19、的存放器,它決議是特殊的存放器,它決議CPUCPU的取指地址,因此不的取指地址,因此不能挪作他用,但可以像能挪作他用,但可以像SPSP一樣,在大多數(shù)變址尋址一樣,在大多數(shù)變址尋址方式下作為變址存放器,只是不能用在自動增減地方式下作為變址存放器,只是不能用在自動增減地址的變址尋址操作中。址的變址尋址操作中。PCPC主要是直接為主要是直接為CPUCPU效力,對于用戶程序來講,效力,對于用戶程序來講,PCPC不不能參與任何運(yùn)算,獨(dú)一的作用是輔助進(jìn)展變址尋址能參與任何運(yùn)算,獨(dú)一的作用是輔助進(jìn)展變址尋址操作。操作。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU

20、12內(nèi)核內(nèi)核(Star Core)(Star Core)5 5條件碼存放器條件碼存放器CCR (Condition Code Register)CCR (Condition Code Register)條件碼存放器是一個(gè)條件碼存放器是一個(gè)8 8位存放器,相當(dāng)于標(biāo)志存放器位存放器,相當(dāng)于標(biāo)志存放器FRFR或程序形或程序形狀字狀字PSW (Program State Word)PSW (Program State Word),但不同的是,它還可以參,但不同的是,它還可以參與控制與控制CPUCPU的行為。的行為。條件碼存放器中各位的定義:條件碼存放器中各位的定義:CCR中的各位包括兩部分:5個(gè)算術(shù)特

21、征位(Arithmetic Flag Bit) ,即H、N、Z、V、C,它們反映上一條指令執(zhí)行結(jié)果的特征(形狀);3個(gè)MCU控制位,即中斷屏蔽位X、I和STOP指令控制位,這3位通常由軟件設(shè)定,以控制CPU的行為。復(fù)位后,X、I兩位默許形狀為1,屏蔽系統(tǒng)中斷。CCR是真正的公用存放器,除了C、H位以外,其他各位不參與任何運(yùn)算。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1 CPU122.1.1 CPU12內(nèi)核內(nèi)核(Star Core)(Star Core)CCRCCR中各位的主要含義:中各位的主要含義: CC進(jìn)位進(jìn)位/ /借位標(biāo)志借位標(biāo)志(Carry/Borrow Flag)(C

22、arry/Borrow Flag) 當(dāng)加法運(yùn)算產(chǎn)生進(jìn)位或減法運(yùn)算產(chǎn)生借位時(shí),當(dāng)加法運(yùn)算產(chǎn)生進(jìn)位或減法運(yùn)算產(chǎn)生借位時(shí),C=1C=1,否那,否那么,么,C=0C=0。 VV溢出標(biāo)志溢出標(biāo)志(Overflow Flag)(Overflow Flag) 算術(shù)運(yùn)算后,假設(shè)出現(xiàn)算術(shù)運(yùn)算后,假設(shè)出現(xiàn)2 2補(bǔ)碼補(bǔ)碼(two(twos-complement)s-complement)溢出時(shí),溢出時(shí),V=1V=1;假設(shè)無溢出,;假設(shè)無溢出,V=0V=0。Z0Z0標(biāo)志標(biāo)志(Zero Flag)(Zero Flag) 當(dāng)運(yùn)算結(jié)果為當(dāng)運(yùn)算結(jié)果為0 0時(shí),時(shí),Z=1Z=1;結(jié)果不為;結(jié)果不為0 0時(shí),時(shí),Z=0Z=0。N

23、N符號位符號位( (負(fù)標(biāo)志負(fù)標(biāo)志) (Negative Flag) (Negative Flag) 當(dāng)運(yùn)算結(jié)果為負(fù)時(shí),當(dāng)運(yùn)算結(jié)果為負(fù)時(shí),N=1N=1,否那么,否那么,N=0N=0。HH輔助進(jìn)位輔助進(jìn)位( (半進(jìn)位半進(jìn)位) )標(biāo)志標(biāo)志(Half-carry Flag)(Half-carry Flag) 在加法過程中,假設(shè)累加器在加法過程中,假設(shè)累加器A A中的中的D3D3向向D4D4位產(chǎn)生進(jìn)位,位產(chǎn)生進(jìn)位,H=1H=1;否那么,;否那么,H=0H=0。 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造CCRCCR中各位的主要含義:中各位的主要含義:II可屏蔽中斷控制位可屏蔽中斷控制位(Mask

24、able Interrupt Bit)(Maskable Interrupt Bit)I I位是全局中斷屏蔽控制位位是全局中斷屏蔽控制位(global interrupt mask)(global interrupt mask),用于制,用于制止或允許一切可屏蔽中斷源,這些中斷源包括來自止或允許一切可屏蔽中斷源,這些中斷源包括來自IRQIRQ引腳引腳的中斷和從片內(nèi)資源來的中斷懇求。任何時(shí)候該控制位均可的中斷和從片內(nèi)資源來的中斷懇求。任何時(shí)候該控制位均可置位或清零。置位或清零。I=1I=1,制止可屏蔽中斷懇求;,制止可屏蔽中斷懇求;I=0I=0,允答應(yīng)屏蔽中斷懇求。復(fù)位,允答應(yīng)屏蔽中斷懇求。復(fù)位

25、時(shí)默許時(shí)默許I=1I=1。進(jìn)展中斷效力時(shí),該位自動置位。為了允答應(yīng)屏蔽中斷懇求,進(jìn)展中斷效力時(shí),該位自動置位。為了允答應(yīng)屏蔽中斷懇求,軟件必需去除該位。軟件必需去除該位。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造CCRCCR中各位的主要含義:中各位的主要含義:XX非屏蔽中斷控制位非屏蔽中斷控制位(Non-maskable Interrupt Bit)(Non-maskable Interrupt Bit)X X位用于屏蔽來自位用于屏蔽來自XIRQXIRQ引腳的中斷懇求。假設(shè)引腳的中斷懇求。假設(shè)X=1X=1,制止來,制止來自引腳自引腳XIRQXIRQ的中斷懇求;的中斷懇求;X=0X=0,

26、允許,允許XIRQXIRQ來自引腳的中來自引腳的中斷懇求。斷懇求。X X位的復(fù)位默許值是位的復(fù)位默許值是1 1,為了允許來自,為了允許來自XIRQXIRQ引腳的中斷效力懇引腳的中斷效力懇求,必需經(jīng)過軟件將求,必需經(jīng)過軟件將X X位清零。位清零。X X位一旦被清零,允許位一旦被清零,允許XIRQXIRQ中斷,那么用軟件的方法不能使中斷,那么用軟件的方法不能使X X位再重新置位,除非來一位再重新置位,除非來一次復(fù)位才干使它再次置次復(fù)位才干使它再次置1 1。SSTOPSSTOP指令屏蔽位指令屏蔽位(STOP Mask Bit)(STOP Mask Bit) S S位用于制止位用于制止CPUCPU執(zhí)行

27、執(zhí)行STOPSTOP指令。指令。S=1S=1,屏蔽,屏蔽STOPSTOP指令;指令;S=0S=0,允許執(zhí)行,允許執(zhí)行STOPSTOP指令。指令。STOPSTOP指令將封鎖指令將封鎖MCUMCU一切時(shí)一切時(shí)鐘信號,片上振蕩器停頓任務(wù),并使鐘信號,片上振蕩器停頓任務(wù),并使MCUMCU處于低功耗任務(wù)處于低功耗任務(wù)方式。方式。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.2 2.1.2 存儲器存儲器MC9S12DG128MC9S12DG128內(nèi)部集成了三種存儲器,包括內(nèi)部集成了三種存儲器,包括8KB8KB的的RAMRAM,2KB2KB的的EEPROMEEPROM和和128KB128KB的的

28、FlashFlash存儲器。存儲器。RAMRAM可以用作堆棧、保管中間結(jié)果和動態(tài)數(shù)據(jù),甚至可以用作堆棧、保管中間結(jié)果和動態(tài)數(shù)據(jù),甚至可以在調(diào)試時(shí)存放程序??梢栽谡{(diào)試時(shí)存放程序。EEPROMEEPROM可以保管設(shè)置的信息等半永久數(shù)據(jù)??梢员9茉O(shè)置的信息等半永久數(shù)據(jù)。FlashFlash存儲器主要用來存放程序和原始數(shù)據(jù)等,反復(fù)存儲器主要用來存放程序和原始數(shù)據(jù)等,反復(fù)擦寫次數(shù)可達(dá)擦寫次數(shù)可達(dá)1010萬次以上,無需外加編程電壓,在萬次以上,無需外加編程電壓,在正常任務(wù)時(shí)沒有被改寫的危險(xiǎn)。正常任務(wù)時(shí)沒有被改寫的危險(xiǎn)。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1 MC9S12DG128的內(nèi)部構(gòu)

29、造的內(nèi)部構(gòu)造2.1.3 I/O2.1.3 I/O接口接口MC9S12DG128MC9S12DG128共有共有9191個(gè)個(gè)I/OI/O口,包括口,包括8 8個(gè)個(gè)8 8位并行口位并行口A A、B B、E E、H H、M M、P P、S S、T T,1 1個(gè)個(gè)7 7位并行口位并行口K K,1 1個(gè)個(gè)1616位并行位并行口口PADPAD,1 1個(gè)個(gè)4 4位并行口位并行口J J。這些并行。這些并行I/OI/O口除了作為通口除了作為通用用I/OI/O口口GPIO (General Purpose Input Output GPIO (General Purpose Input Output Interfa

30、ce)Interface)外,其中大部分為復(fù)用引腳,即具有第外,其中大部分為復(fù)用引腳,即具有第二、第三、甚至第四功能。二、第三、甚至第四功能。芯片處于擴(kuò)展方式下,芯片處于擴(kuò)展方式下,A A、B B、E E、K K口被用作外部總線口被用作外部總線信號。信號。H H、J J、M M、P P、S S、T T接口被集成在端口集成模接口被集成在端口集成模塊塊PIM (Port Integrated Module)PIM (Port Integrated Module)內(nèi),與片內(nèi)其他內(nèi),與片內(nèi)其他功能模塊的引腳復(fù)用。功能模塊的引腳復(fù)用。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.4 2.1.

31、4 電壓調(diào)整模塊電壓調(diào)整模塊電壓調(diào)整模塊用于給單片機(jī)內(nèi)部提供適宜的電源電壓。電壓調(diào)整模塊用于給單片機(jī)內(nèi)部提供適宜的電源電壓。單片機(jī)外部供電電壓為單片機(jī)外部供電電壓為5V5V,I/OI/O接口也按照接口也按照5V5V供電的供電的邏輯電平設(shè)計(jì),但芯片內(nèi)部卻采用邏輯電平設(shè)計(jì),但芯片內(nèi)部卻采用2.5V2.5V電壓任務(wù),電壓任務(wù),因此,該模塊實(shí)現(xiàn)因此,該模塊實(shí)現(xiàn)5V2.5V5V2.5V的電壓轉(zhuǎn)換,產(chǎn)生片內(nèi)的電壓轉(zhuǎn)換,產(chǎn)生片內(nèi)所需求的所需求的2.5V2.5V電壓。電壓。VREGENVREGEN端用于從外部制止該模塊,當(dāng)運(yùn)用外部端用于從外部制止該模塊,當(dāng)運(yùn)用外部2.5V2.5V電電壓給內(nèi)部邏輯電路供電及運(yùn)用

32、外部有源振蕩器提供壓給內(nèi)部邏輯電路供電及運(yùn)用外部有源振蕩器提供時(shí)鐘時(shí),可以不運(yùn)用該模塊。時(shí)鐘時(shí),可以不運(yùn)用該模塊。 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.5 2.1.5 單線單線(Single Wire)(Single Wire)后臺調(diào)試模塊后臺調(diào)試模塊BDMBDM和時(shí)鐘運(yùn)轉(zhuǎn)監(jiān)視模和時(shí)鐘運(yùn)轉(zhuǎn)監(jiān)視模塊塊【后臺調(diào)試模塊【后臺調(diào)試模塊BDMBDM】BDMBDM模塊用于模塊用于OCD (On-Chip-Development)OCD (On-Chip-Development)方式支持開發(fā),可對方式支持開發(fā),可對片內(nèi)片內(nèi)FlashFlash進(jìn)展擦除和在線編程,經(jīng)過該模塊,可以在程序運(yùn)

33、進(jìn)展擦除和在線編程,經(jīng)過該模塊,可以在程序運(yùn)轉(zhuǎn)時(shí),動態(tài)地獲取轉(zhuǎn)時(shí),動態(tài)地獲取CPUCPU存放器的形狀和信息,用于運(yùn)用程序的存放器的形狀和信息,用于運(yùn)用程序的調(diào)試。調(diào)試。BDMBDM方式無需仿真器,可以實(shí)現(xiàn)硬件斷點(diǎn)、條件斷點(diǎn)、在線調(diào)試方式無需仿真器,可以實(shí)現(xiàn)硬件斷點(diǎn)、條件斷點(diǎn)、在線調(diào)試等全部功能,外部只需簡單的接口和相應(yīng)的軟件即可。等全部功能,外部只需簡單的接口和相應(yīng)的軟件即可。BDMBDM調(diào)試工具與單片機(jī)的通訊經(jīng)過雙向的調(diào)試工具與單片機(jī)的通訊經(jīng)過雙向的BKGDBKGD引腳實(shí)現(xiàn),復(fù)位時(shí)引腳實(shí)現(xiàn),復(fù)位時(shí)BKGDBKGD引腳的初始電平將影響單片機(jī)的運(yùn)轉(zhuǎn)方式。引腳的初始電平將影響單片機(jī)的運(yùn)轉(zhuǎn)方式。2.

34、1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造(1) (1) 時(shí)鐘產(chǎn)生電路時(shí)鐘產(chǎn)生電路CGM (Clock CGM (Clock Generation Module)Generation Module)產(chǎn)生片內(nèi)各模塊所需產(chǎn)生片內(nèi)各模塊所需求的各種時(shí)鐘,需外求的各種時(shí)鐘,需外加晶體振蕩器。加晶體振蕩器。2.1.6 2.1.6 時(shí)鐘產(chǎn)生模塊時(shí)鐘產(chǎn)生模塊CGMCGM和復(fù)位電路和復(fù)位電路圖2.8 時(shí)鐘銜接2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.6 2.1.6 時(shí)鐘產(chǎn)生模塊時(shí)鐘產(chǎn)生模塊GCMGCM和復(fù)位電路和復(fù)位電路【時(shí)鐘產(chǎn)生模塊【時(shí)鐘產(chǎn)生模塊GCMGCM】 MC9S12DG128 M

35、C9S12DG128時(shí)鐘發(fā)生器有以下三種:時(shí)鐘發(fā)生器有以下三種:具有鎖相環(huán)具有鎖相環(huán)PLLPLL頻率合成器頻率合成器鎖相環(huán)電路用于產(chǎn)生高于外部晶體振蕩器頻率的時(shí)鐘,片內(nèi)的鎖相環(huán)電路用于產(chǎn)生高于外部晶體振蕩器頻率的時(shí)鐘,片內(nèi)的壓控振蕩器壓控振蕩器VCOVCO產(chǎn)生高于外部時(shí)鐘頻率數(shù)倍的振蕩頻率,經(jīng)產(chǎn)生高于外部時(shí)鐘頻率數(shù)倍的振蕩頻率,經(jīng)過鎖相環(huán)電路將頻率穩(wěn)定在某一確定的數(shù)值上。例如,運(yùn)用過鎖相環(huán)電路將頻率穩(wěn)定在某一確定的數(shù)值上。例如,運(yùn)用外部外部32kHz32kHz晶振,可以產(chǎn)生晶振,可以產(chǎn)生8MHz8MHz的總線頻率。的總線頻率。利用利用0.50.516MHz16MHz的低功耗晶振,構(gòu)成鎖相環(huán)電路

36、的一部分,的低功耗晶振,構(gòu)成鎖相環(huán)電路的一部分,可產(chǎn)生高達(dá)可產(chǎn)生高達(dá)25MHz25MHz的片內(nèi)總線時(shí)鐘。的片內(nèi)總線時(shí)鐘。經(jīng)過經(jīng)過EXTALEXTAL引腳提供與引腳提供與CMOSCMOS電平兼容的外部時(shí)鐘信號,其輸電平兼容的外部時(shí)鐘信號,其輸入頻率要求在入頻率要求在0 016MHz16MHz之間。之間。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.6 2.1.6 時(shí)鐘產(chǎn)生模塊時(shí)鐘產(chǎn)生模塊CGMCGM和復(fù)位電路和復(fù)位電路(2) (2) 復(fù)位電路復(fù)位電路復(fù)位電路產(chǎn)生上電復(fù)位信號,使復(fù)位電路產(chǎn)生上電復(fù)位信號,使CPUCPU進(jìn)入復(fù)位形狀,即將進(jìn)入復(fù)位形狀,即將CPUCPU和和MCUMCU芯片

37、內(nèi)資源初始化。芯片內(nèi)資源初始化。 大多數(shù)大多數(shù)CPUCPU只需一個(gè)復(fù)位源,即復(fù)位引腳,復(fù)位后開場運(yùn)轉(zhuǎn)的只需一個(gè)復(fù)位源,即復(fù)位引腳,復(fù)位后開場運(yùn)轉(zhuǎn)的地址也是固定的。但地址也是固定的。但MC68HC12/9S12MC68HC12/9S12單片機(jī)設(shè)置了多個(gè)復(fù)位單片機(jī)設(shè)置了多個(gè)復(fù)位源,也不直接轉(zhuǎn)到某個(gè)地址執(zhí)行,而是采用復(fù)位矢量,復(fù)位源,也不直接轉(zhuǎn)到某個(gè)地址執(zhí)行,而是采用復(fù)位矢量,復(fù)位后可以經(jīng)過矢量轉(zhuǎn)向不同的程序入口。后可以經(jīng)過矢量轉(zhuǎn)向不同的程序入口。以下任何一個(gè)事件啟動復(fù)位時(shí)序以下任何一個(gè)事件啟動復(fù)位時(shí)序1 1時(shí)鐘監(jiān)視器使能,且時(shí)鐘監(jiān)視器檢測到時(shí)鐘變慢或停頓。時(shí)鐘監(jiān)視器使能,且時(shí)鐘監(jiān)視器檢測到時(shí)鐘變慢

38、或停頓。2 2COPCOP看門狗使能,且看門狗定時(shí)器定時(shí)到超時(shí)溢出??撮T狗使能,且看門狗定時(shí)器定時(shí)到超時(shí)溢出。3 3上電復(fù)位上電復(fù)位PORPORPower-on ResetPower-on Reset。 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.7 2.1.7 系統(tǒng)集成模塊系統(tǒng)集成模塊SIM (System Integration SIM (System Integration Module)Module)【SIMSIM模塊功能】模塊功能】接納外部可屏蔽中斷和非屏蔽中斷的輸入信號接納外部可屏蔽中斷和非屏蔽中斷的輸入信號接納單片機(jī)復(fù)位后的方式選擇信號接納單片機(jī)復(fù)位后的方式選擇信號

39、根據(jù)復(fù)位時(shí)方式選擇信號根據(jù)復(fù)位時(shí)方式選擇信號MODAMODA、MODBMODB和和MODC(BKGD)MODC(BKGD)引引腳的電平形狀,單片機(jī)可進(jìn)入不同的任務(wù)方式。腳的電平形狀,單片機(jī)可進(jìn)入不同的任務(wù)方式。輸出內(nèi)部總線的時(shí)鐘輸出內(nèi)部總線的時(shí)鐘(E(E時(shí)鐘時(shí)鐘) )輸出外部總線擴(kuò)展時(shí)的讀輸出外部總線擴(kuò)展時(shí)的讀/ /寫信號寫信號SIMSIM模塊與外部的銜接經(jīng)過端口模塊與外部的銜接經(jīng)過端口E(PTE)E(PTE)實(shí)現(xiàn)。實(shí)現(xiàn)。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.7 2.1.7 系統(tǒng)集成模塊系統(tǒng)集成模塊SIM (System Integration SIM (System In

40、tegration Module)Module)2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.8 2.1.8 外部總線接口外部總線接口【三總線的構(gòu)成】【三總線的構(gòu)成】數(shù)據(jù)總線、地址總線與通用數(shù)據(jù)總線、地址總線與通用I/OI/O端口復(fù)用,即端口復(fù)用,即A A口口(PTA)(PTA)和和B B口口(PTB)(PTB)兼作地址和數(shù)據(jù)總線,而控制總線那么兼作地址和數(shù)據(jù)總線,而控制總線那么占用端口占用端口E E的部分引腳。的部分引腳?!緮U(kuò)展方式】【擴(kuò)展方式】寬總線擴(kuò)展寬總線擴(kuò)展1616位地址總線和位地址總線和1616位數(shù)據(jù)總線位數(shù)據(jù)總線窄總線擴(kuò)展窄總線擴(kuò)展1616位地址總線和位地址總線和8

41、8位數(shù)據(jù)總線位數(shù)據(jù)總線2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.8 2.1.8 外部總線接口外部總線接口寬總線擴(kuò)展方式寬總線擴(kuò)展方式端口端口AA高高8 8位地址線和高位地址線和高8 8位數(shù)據(jù)線位數(shù)據(jù)線端口端口BB低低8 8位地址線和低位地址線和低8 8位數(shù)據(jù)線位數(shù)據(jù)線需求由外部兩個(gè)需求由外部兩個(gè)8 8位地址鎖存器鎖存地址信號。當(dāng)擴(kuò)展位地址鎖存器鎖存地址信號。當(dāng)擴(kuò)展大于大于64KB64KB的存儲器時(shí),由頁面映射存放器的存儲器時(shí),由頁面映射存放器PPAGEPPAGE對應(yīng)對應(yīng)的的7 7位端口位端口K(PTK)K(PTK)中的中的6 6個(gè)引腳個(gè)引腳PK5PK5PK0PK0產(chǎn)生高位地產(chǎn)生

42、高位地址址A19A19A14A14,使地址空間擴(kuò)展到,使地址空間擴(kuò)展到1MB1MB。窄總線擴(kuò)展方式窄總線擴(kuò)展方式端口端口AA高高8 8位地址線位地址線A15A15A8A8與與8 8位數(shù)據(jù)總線分時(shí)復(fù)位數(shù)據(jù)總線分時(shí)復(fù)用用端口端口BB低低8 8位地址線位地址線需求一個(gè)外部需求一個(gè)外部8 8位地址鎖存器鎖存高位地址鎖存器鎖存高8 8位地址信號。位地址信號。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.9 ATD2.1.9 ATD模塊模塊采樣堅(jiān)持和采樣堅(jiān)持和A/DA/D轉(zhuǎn)換轉(zhuǎn)換對模擬電壓進(jìn)展采樣,在時(shí)間上離散化,對模擬電壓進(jìn)展采樣,在時(shí)間上離散化,得到對應(yīng)的離散電壓信號,然后再用模得到對應(yīng)的

43、離散電壓信號,然后再用模/ /數(shù)轉(zhuǎn)換器對電壓幅值數(shù)轉(zhuǎn)換器對電壓幅值進(jìn)展量化,得到數(shù)字信號。進(jìn)展量化,得到數(shù)字信號。將模擬信號轉(zhuǎn)換成數(shù)字信號的轉(zhuǎn)換器稱為模數(shù)轉(zhuǎn)換器,即將模擬信號轉(zhuǎn)換成數(shù)字信號的轉(zhuǎn)換器稱為模數(shù)轉(zhuǎn)換器,即A/DA/D轉(zhuǎn)轉(zhuǎn)換器,簡寫為換器,簡寫為ADCADC。模數(shù)轉(zhuǎn)換器的種類很多,分屬于兩大類,即直接轉(zhuǎn)換和間接轉(zhuǎn)模數(shù)轉(zhuǎn)換器的種類很多,分屬于兩大類,即直接轉(zhuǎn)換和間接轉(zhuǎn)換。換?!局苯愚D(zhuǎn)換】將模擬電壓直接轉(zhuǎn)換成數(shù)字量,如并行式【直接轉(zhuǎn)換】將模擬電壓直接轉(zhuǎn)換成數(shù)字量,如并行式A/DA/D轉(zhuǎn)換、轉(zhuǎn)換、逐次比較式逐次比較式A/DA/D轉(zhuǎn)換等;轉(zhuǎn)換等;【間接轉(zhuǎn)換】將模擬電壓先轉(zhuǎn)變成中間量時(shí)間或頻率等

44、,【間接轉(zhuǎn)換】將模擬電壓先轉(zhuǎn)變成中間量時(shí)間或頻率等,然后再將這些中間量轉(zhuǎn)換成數(shù)字量,如雙積分式然后再將這些中間量轉(zhuǎn)換成數(shù)字量,如雙積分式A/DA/D轉(zhuǎn)換、轉(zhuǎn)換、V/FV/F式式A/DA/D轉(zhuǎn)換等。轉(zhuǎn)換等。單片機(jī)內(nèi)集成的單片機(jī)內(nèi)集成的A/DA/D轉(zhuǎn)換器普通都是逐次比較型逐次逼近型。轉(zhuǎn)換器普通都是逐次比較型逐次逼近型。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.9 ATD2.1.9 ATD模塊模塊直接轉(zhuǎn)換的根本思緒:直接轉(zhuǎn)換的根本思緒:假設(shè)一個(gè)假設(shè)一個(gè)A/DA/D轉(zhuǎn)換器輸入的電壓與一個(gè)轉(zhuǎn)換器輸入的電壓與一個(gè)D/AD/A轉(zhuǎn)換器輸出的電壓相轉(zhuǎn)換器輸出的電壓相等,那么,等,那么,D/AD/

45、A轉(zhuǎn)換器輸入的數(shù)據(jù)即可看成是轉(zhuǎn)換器輸入的數(shù)據(jù)即可看成是A/DA/D轉(zhuǎn)換器所要轉(zhuǎn)換器所要求的數(shù)據(jù)。求的數(shù)據(jù)。【A/DA/D轉(zhuǎn)換器組成】一個(gè)轉(zhuǎn)換器組成】一個(gè)D/AD/A轉(zhuǎn)換器、數(shù)據(jù)存放器和一個(gè)電壓比轉(zhuǎn)換器、數(shù)據(jù)存放器和一個(gè)電壓比較器。較器。數(shù)據(jù)存放器的輸出數(shù)據(jù)作為數(shù)據(jù)存放器的輸出數(shù)據(jù)作為D/AD/A轉(zhuǎn)換器的輸入數(shù)據(jù)。轉(zhuǎn)換器的輸入數(shù)據(jù)。D/AD/A轉(zhuǎn)換器輸出的模擬電壓與輸入的模擬電壓相比較。轉(zhuǎn)換器輸出的模擬電壓與輸入的模擬電壓相比較。電壓比較器用來控制數(shù)據(jù)存放器數(shù)據(jù)的改動。電壓比較器用來控制數(shù)據(jù)存放器數(shù)據(jù)的改動。當(dāng)電壓比較器的兩個(gè)輸入電壓相等時(shí),控制邏輯將使數(shù)據(jù)存放當(dāng)電壓比較器的兩個(gè)輸入電壓相等時(shí),

46、控制邏輯將使數(shù)據(jù)存放器的數(shù)據(jù)停頓改動,這時(shí),數(shù)據(jù)存放器的數(shù)據(jù)就是對應(yīng)于模器的數(shù)據(jù)停頓改動,這時(shí),數(shù)據(jù)存放器的數(shù)據(jù)就是對應(yīng)于模擬輸入電壓的數(shù)字量。擬輸入電壓的數(shù)字量。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.9 ATD2.1.9 ATD模塊模塊逐次比較型逐次比較型A/DA/D轉(zhuǎn)換器采用中分比較對分搜索原理。由一轉(zhuǎn)換器采用中分比較對分搜索原理。由一個(gè)同樣位數(shù)的個(gè)同樣位數(shù)的D/AD/A轉(zhuǎn)換器,再加上比較器、逐次逼近型存放轉(zhuǎn)換器,再加上比較器、逐次逼近型存放器和控制邏輯組成。器和控制邏輯組成。采樣電路 逐次逼近型A/D轉(zhuǎn)換器 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.1

47、0 2.1.10 加強(qiáng)型捕捉定時(shí)器加強(qiáng)型捕捉定時(shí)器ECTECT模塊模塊【功能】【功能】4 4個(gè)個(gè)IC(IC(輸入捕捉輸入捕捉) )通道設(shè)置了通道設(shè)置了1616位堅(jiān)持存放器,用于緩沖捕捉位堅(jiān)持存放器,用于緩沖捕捉的結(jié)果。的結(jié)果。4 4個(gè)個(gè)8 8位脈沖累加器位脈沖累加器PA (Pulse Accumulator)PA (Pulse Accumulator),其中兩個(gè)由原來,其中兩個(gè)由原來的的1616位位PAPA演化而來,主要特點(diǎn)是:演化而來,主要特點(diǎn)是: 4 4個(gè)與個(gè)與ICIC通道關(guān)聯(lián)的通道關(guān)聯(lián)的8 8位堅(jiān)持存放器,用于緩沖脈沖累加器的位堅(jiān)持存放器,用于緩沖脈沖累加器的結(jié)果。結(jié)果。 4 4個(gè)個(gè)8

48、8位脈沖累加器通道可以級聯(lián),構(gòu)成兩個(gè)位脈沖累加器通道可以級聯(lián),構(gòu)成兩個(gè)1616位的脈沖累加位的脈沖累加器。器。具有具有4 4位定標(biāo)器的位定標(biāo)器的1616位遞減模數(shù)計(jì)數(shù)器。位遞減模數(shù)計(jì)數(shù)器。4 4個(gè)可選的延遲計(jì)數(shù)器個(gè)可選的延遲計(jì)數(shù)器(Delay Counter)(Delay Counter)設(shè)置在堅(jiān)持存放器之前,設(shè)置在堅(jiān)持存放器之前,用于加強(qiáng)輸入的抗干擾才干。用于加強(qiáng)輸入的抗干擾才干。主定時(shí)器的預(yù)分頻器擴(kuò)展到主定時(shí)器的預(yù)分頻器擴(kuò)展到7 7位,分頻系數(shù)可以設(shè)定為位,分頻系數(shù)可以設(shè)定為1 1、2 2、4 4、8 8、1616、3232、6464和和128128。2.1 MC9S12DG128的內(nèi)部構(gòu)

49、造的內(nèi)部構(gòu)造2.1.10 2.1.10 加強(qiáng)型捕捉定時(shí)器加強(qiáng)型捕捉定時(shí)器ECTECT模塊模塊輸入捕捉輸入捕捉 (Input Capture (Input Capture,IC)IC)經(jīng)過捕獲自在運(yùn)經(jīng)過捕獲自在運(yùn)轉(zhuǎn)計(jì)數(shù)器的值,檢測外部事件和輸入信號。轉(zhuǎn)計(jì)數(shù)器的值,檢測外部事件和輸入信號。輸出比較輸出比較 (Output Compare (Output Compare,OC)OC)用程序的方法用程序的方法在特定的時(shí)辰輸出需求的電平。在特定的時(shí)辰輸出需求的電平。 脈沖累加脈沖累加 (Pulse Accumulator (Pulse Accumulator,PA) PA) 經(jīng)過檢測經(jīng)過檢測相應(yīng)管腳上的

50、有效邊沿,統(tǒng)計(jì)脈沖的個(gè)數(shù)。相應(yīng)管腳上的有效邊沿,統(tǒng)計(jì)脈沖的個(gè)數(shù)。 輸入捕捉模塊框圖 輸出比較模塊框圖 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.11 2.1.11 脈沖寬度調(diào)制脈沖寬度調(diào)制PWMPWM模塊模塊脈沖寬度調(diào)制脈沖寬度調(diào)制PWM (Pulse Width Modulate)PWM (Pulse Width Modulate)用程用程序控制波形的占空比,即有效電平序控制波形的占空比,即有效電平( (高或低高或低) )與脈沖與脈沖周期之比。周期之比。PWMPWM模塊可以實(shí)現(xiàn)波形占空比、周期、相位的程序控模塊可以實(shí)現(xiàn)波形占空比、周期、相位的程序控制,實(shí)現(xiàn)制,實(shí)現(xiàn)D/AD/A

51、轉(zhuǎn)換和準(zhǔn)確的脈沖序列輸出。轉(zhuǎn)換和準(zhǔn)確的脈沖序列輸出。占空比的概念 PWM實(shí)現(xiàn)D/A轉(zhuǎn)換 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.11 2.1.11 脈沖寬度調(diào)制脈沖寬度調(diào)制PWMPWM模塊模塊PWMPWM模塊任務(wù)時(shí),有效電平寬度對應(yīng)的計(jì)數(shù)值存放在占空比存模塊任務(wù)時(shí),有效電平寬度對應(yīng)的計(jì)數(shù)值存放在占空比存放器中,脈沖周期對應(yīng)的計(jì)數(shù)值存放在周期存放器中。放器中,脈沖周期對應(yīng)的計(jì)數(shù)值存放在周期存放器中。MC9S12DG128MC9S12DG128單片機(jī)的單片機(jī)的PWMPWM模塊外部引腳與端口模塊外部引腳與端口P(PTP)P(PTP)共用。當(dāng)共用。當(dāng)時(shí)鐘頻率為時(shí)鐘頻率為16MHz16

52、MHz時(shí),時(shí),PWMPWM模塊最高任務(wù)頻率可達(dá)模塊最高任務(wù)頻率可達(dá)8MHz8MHz,占空,占空比調(diào)理范圍比調(diào)理范圍0 0100%100%,最高分辨才干達(dá),最高分辨才干達(dá)0.15%0.15%,而且輸出極性,而且輸出極性可選??蛇x。 PWM模塊任務(wù)原理2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.11 2.1.11 脈沖寬度調(diào)制脈沖寬度調(diào)制PWMPWM模塊模塊MC9S12MC9S12單片機(jī)中的單片機(jī)中的PWMPWM模塊具有模塊具有8 8個(gè)獨(dú)立的個(gè)獨(dú)立的8 8位位PWMPWM通道,經(jīng)過設(shè)置可將兩個(gè)通道,經(jīng)過設(shè)置可將兩個(gè)8 8位位PWMPWM通道級聯(lián)通道級聯(lián)成一個(gè)成一個(gè)1616位位PWMP

53、WM通道。通道。每個(gè)通道的周期和占空比可由程序設(shè)定。每個(gè)通道的周期和占空比可由程序設(shè)定。各通道具有獨(dú)立的計(jì)數(shù)器。各通道具有獨(dú)立的計(jì)數(shù)器。每個(gè)計(jì)數(shù)器有兩種不同的時(shí)鐘源每個(gè)計(jì)數(shù)器有兩種不同的時(shí)鐘源( (時(shí)鐘時(shí)鐘A A、時(shí)鐘、時(shí)鐘B)B)可供選擇,可供選擇,每個(gè)通道可以獨(dú)立產(chǎn)生延續(xù)的脈沖輸出,各通每個(gè)通道可以獨(dú)立產(chǎn)生延續(xù)的脈沖輸出,各通道還可以一致設(shè)定成每個(gè)輸出周期左對齊或道還可以一致設(shè)定成每個(gè)輸出周期左對齊或居中對齊。居中對齊。 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.12 2.1.12 串行通訊接口串行通訊接口通訊通訊計(jì)算機(jī)與外界的信息交換計(jì)算機(jī)與外界的信息交換通訊的根本方式通

54、訊的根本方式并行通訊和串行通訊并行通訊和串行通訊并行通訊并行通訊數(shù)據(jù)的各位同時(shí)進(jìn)展傳送的通訊方式。數(shù)據(jù)的各位同時(shí)進(jìn)展傳送的通訊方式。并行通訊經(jīng)過并行接口來實(shí)現(xiàn)。例如,并行通訊經(jīng)過并行接口來實(shí)現(xiàn)。例如,HC12/9S12HC12/9S12單單片機(jī)的片機(jī)的A A、B B、E E、H H、M M、P P、S S、T T端口,當(dāng)這些端口端口,當(dāng)這些端口用作用作GPIOGPIO運(yùn)用時(shí),假設(shè)作為輸出口,運(yùn)用時(shí),假設(shè)作為輸出口,CPUCPU將一個(gè)數(shù)將一個(gè)數(shù)據(jù)寫入到據(jù)寫入到I/OI/O存放器后,數(shù)據(jù)在端口對應(yīng)的引腳上存放器后,數(shù)據(jù)在端口對應(yīng)的引腳上并行地同時(shí)輸出到外部設(shè)備;假設(shè)作為輸入口,對并行地同時(shí)輸出到外

55、部設(shè)備;假設(shè)作為輸入口,對輸入存放器執(zhí)行一次讀操作,端口引腳上輸入的輸入存放器執(zhí)行一次讀操作,端口引腳上輸入的8 8位數(shù)據(jù)同時(shí)被讀入。位數(shù)據(jù)同時(shí)被讀入。并行通訊的特點(diǎn)并行通訊的特點(diǎn)傳送速度快,但數(shù)據(jù)有多少位,傳送速度快,但數(shù)據(jù)有多少位,就需求多少根傳輸線,因此,適宜于近間隔通訊。就需求多少根傳輸線,因此,適宜于近間隔通訊。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.12 2.1.12 串行通訊接口串行通訊接口串行通訊串行通訊串行通訊串行通訊數(shù)據(jù)一位一位地按順序傳送的通訊方式。數(shù)據(jù)一位一位地按順序傳送的通訊方式。串行通訊經(jīng)過串行口實(shí)現(xiàn),例如,串行通訊經(jīng)過串行口實(shí)現(xiàn),例如,HC12/

56、9S12HC12/9S12單片機(jī)單片機(jī)的串行通訊接口:的串行通訊接口:SCISCI、SPISPI、IICIIC、BDLCBDLC、CANCAN和和ByteflightByteflight。串行通訊的特點(diǎn):只需一根或兩根傳輸線,并且可利串行通訊的特點(diǎn):只需一根或兩根傳輸線,并且可利用線作為傳輸線,可大大降低傳輸本錢,適宜于遠(yuǎn)用線作為傳輸線,可大大降低傳輸本錢,適宜于遠(yuǎn)間隔通訊。其主要缺陷是,傳送速率較低。例如,間隔通訊。其主要缺陷是,傳送速率較低。例如,假設(shè)并行口傳送假設(shè)并行口傳送N N位數(shù)據(jù)所需的時(shí)間是位數(shù)據(jù)所需的時(shí)間是T T,那么,串,那么,串行傳送的時(shí)間至少為行傳送的時(shí)間至少為NTNT,實(shí)

57、踐上總是大于,實(shí)踐上總是大于NTNT的。的。串行通訊兩種根本方式串行通訊兩種根本方式異步串行通訊和同步串行異步串行通訊和同步串行通訊。通訊。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.12 2.1.12 串行通訊接口串行通訊接口 異步通訊方式異步通訊方式異步通訊方式異步通訊方式按字符傳送,起止式的通訊方式。按字符傳送,起止式的通訊方式。優(yōu)點(diǎn):數(shù)據(jù)傳送的可靠性較高,能及時(shí)發(fā)現(xiàn)錯(cuò)誤。優(yōu)點(diǎn):數(shù)據(jù)傳送的可靠性較高,能及時(shí)發(fā)現(xiàn)錯(cuò)誤。缺陷:通訊效率比較低。缺陷:通訊效率比較低。異步通訊的特點(diǎn)異步通訊的特點(diǎn)數(shù)據(jù)在線路上的傳送不延續(xù),各數(shù)據(jù)在線路上的傳送不延續(xù),各個(gè)字符可以延續(xù)發(fā)送,也可以延續(xù)傳

58、送,這完全由個(gè)字符可以延續(xù)發(fā)送,也可以延續(xù)傳送,這完全由發(fā)送雙方根據(jù)需求來確定。發(fā)送雙方根據(jù)需求來確定。通訊過程中數(shù)據(jù)的傳送在時(shí)鐘的控制下進(jìn)展,異步通通訊過程中數(shù)據(jù)的傳送在時(shí)鐘的控制下進(jìn)展,異步通訊時(shí),同步時(shí)鐘脈沖并不傳送到接納方,即收發(fā)雙訊時(shí),同步時(shí)鐘脈沖并不傳送到接納方,即收發(fā)雙方分別用本人的時(shí)鐘源來控制接納和發(fā)送。異步通方分別用本人的時(shí)鐘源來控制接納和發(fā)送。異步通訊時(shí),收發(fā)雙方必需事先規(guī)定兩件事:訊時(shí),收發(fā)雙方必需事先規(guī)定兩件事:1 1字符格式,即規(guī)定字符各部分所占的位數(shù)、能字符格式,即規(guī)定字符各部分所占的位數(shù)、能否采用奇偶校驗(yàn),以及校驗(yàn)方式偶校驗(yàn)還是奇校否采用奇偶校驗(yàn),以及校驗(yàn)方式偶校

59、驗(yàn)還是奇校驗(yàn)。驗(yàn)。2 2所采用的波特率,以及時(shí)鐘頻率與波特率的比所采用的波特率,以及時(shí)鐘頻率與波特率的比例關(guān)系。例關(guān)系。2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.12 2.1.12 串行通訊接口串行通訊接口1 1異步通訊的數(shù)據(jù)格式異步通訊的數(shù)據(jù)格式一個(gè)字符由一個(gè)字符由4 4個(gè)部分組成:起始位、數(shù)據(jù)位、奇偶校個(gè)部分組成:起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停頓位。驗(yàn)位和停頓位。數(shù)據(jù)的發(fā)送數(shù)據(jù)的發(fā)送在移位脈沖的控制下,由發(fā)送移位存在移位脈沖的控制下,由發(fā)送移位存放器將數(shù)據(jù)一位一位地移出單片機(jī)。放器將數(shù)據(jù)一位一位地移出單片機(jī)。數(shù)據(jù)的接納數(shù)據(jù)的接納在移位脈沖的控制下,由接納移位存在移位脈沖的控

60、制下,由接納移位存放器將數(shù)據(jù)一位一位地移入單片機(jī)。放器將數(shù)據(jù)一位一位地移入單片機(jī)。典型異步通訊的字符格式 2.1 MC9S12DG128的內(nèi)部構(gòu)造的內(nèi)部構(gòu)造2.1.12 2.1.12 串行通訊接口串行通訊接口2 2波特率波特率 (Baud Rate) (Baud Rate)【波特率定義】每秒鐘傳送二進(jìn)制數(shù)碼的位數(shù)也稱比特?cái)?shù),【波特率定義】每秒鐘傳送二進(jìn)制數(shù)碼的位數(shù)也稱比特?cái)?shù),單位是單位是bit/sbit/s。波特率反映了串行通訊的速率,也反映了對傳輸通道的要求波特率反映了串行通訊的速率,也反映了對傳輸通道的要求波特率越高,要求傳輸通道的頻帶越寬。波特率越高,要求傳輸通道的頻帶越寬。在異步通訊中

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論