




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、1第二章第二章 S12微控制器體系結(jié)構(gòu)微控制器體系結(jié)構(gòu)2一、一、S12系列微控制器概述系列微控制器概述 Freescale公司是世界上最大的微控制器廠商之一,其產(chǎn)品特點是品種齊全、選擇余地大、新產(chǎn)品多,多年來一直雄居微控制器銷售總量的榜首。它開發(fā)了眾多的8位、16位和32位微控制器。Freescale微控制器的特點之一是在同樣的速度下所用的時鐘頻率較51系列微控制器低得多,因而使得高頻噪聲低,抗干擾能力強,更適合于工控領域及惡劣的汽車環(huán)境。31.S12系列微控制器系列微控制器nS12系列微控制器是16位單片機, S12系列有HC12,S12及S12X系列。Freescal的MC9S12系列MC
2、U是以高速CPU12內(nèi)核為基礎的微控制器系列,簡稱S12系列。典型的HC12總線頻率為8MHz,而典型的S12總線頻率為25MHz。HC12與S12指令完全兼容,故在很多場合統(tǒng)稱為HCS12系列微控制器。n16位S12系列可以提供32512 KB的第3代FLASH嵌入式存儲器,采用0.25m技術(shù)生產(chǎn)。第3代FLASH存儲器技術(shù)提供快速編程能力、靈活的時鐘保護和安全性,幫助客戶保護軟件編碼中的知識產(chǎn)權(quán)。另外,具有FLASH存儲器的Freescale微控制器的在線可編程功能,是專門為用戶在生產(chǎn)階段和遠程升級時可靈活編程而設計的。 4nS12系列具有低成本調(diào)試功能。S12系列微控制器具有單引腳接口的
3、背景調(diào)試(BDM)方式。該方式為實時、無干擾、100電路內(nèi)仿真,解決了傳統(tǒng)背插式仿真器在兼容性、仿真速度、電平和機械接口方面普遍存在的問題。nS12的片內(nèi)RAM和EEPROM容量可達214KB。在串行接口方面,S12最多可支持5個CAN總線接口、1個I2C總線接口、2個SCI接口、3個SPI接口。HCSl2時鐘發(fā)生器模塊內(nèi)設鎖柑環(huán)(PLL),內(nèi)部時鐘可軟件調(diào)節(jié)。nFreescale公司的S12MCU系列是汽車電子市場中應用最廣泛的16位體系架構(gòu)。2007年4月,基于S12的設備的年發(fā)貨量已超過1億臺。可擴展的S12系列可為開發(fā)人員提供多種適合他們應用需求的選擇,其片上FLASH存儲器容量可從3
4、2 KB擴展到1 MB,并能輕松遷移到更高性能的S12X系列。5nS12系列微控制器主要有A、B、C、D、E、F、G、H、L等系列,分為下列幾大類:MC9S12A系列和B系列16位微控制器;帶CAN總線的MC9S12D系列16位微控制器;帶液晶驅(qū)動的MC9S12H系列和MC9S12L系列16位微控制器;低供電電壓的MC9S12E128和MC9S12E64系列16位微控制器;帶USB接口的MC9S12UF32系列16位微控制器;帶以太網(wǎng)接口的MC9S12NE系列16位微控制器。S12X系列是Freescale公司近期推出的高速、高性能微控制器。 S12X系列基于S12的基礎結(jié)構(gòu),提供的性能高達現(xiàn)
5、時S12系列的5倍。它提高了總線頻率,最高可達40MHz。62. Freescale半導體公司半導體公司HCS12的命名規(guī)則的命名規(guī)則MC 9 S12 DG l28 參加參加P1773.MC9S12DGl28概述概述 MC9S12DG128是Freescale公司推出的S12系列微控制器中的一款增強型16位微控制器。其集成度高,片內(nèi)資源豐富,接口模塊包括SPI、SCI、I2C、AD、PWM等。它不僅在汽車電子、工業(yè)控制、中高檔機電產(chǎn)品等應用領域具有廣泛的用途,而且在FLASH存儲控制及加密方面也有很強的功能。 MC9S12DG128微控制器采用增強型16位S12CPU,片內(nèi)總線時鐘頻率最高可達
6、25 MHz;片內(nèi)資源包括8KB RAM、128KB FLASH、2KB EEPROM;SCl、SPI、PWM串行接口模塊;PWM模塊可設置成4路8位或2路16位,可寬范圍選擇邏輯時鐘頻率;它還提供2個8路10位精度AD轉(zhuǎn)換器、控制器局域網(wǎng)模塊CAN和增強型捕捉定時器,并支持背景調(diào)試模式(BDM)。84.MC9S12DG128系列微控制器的性能特點系列微控制器的性能特點S12的核心: 16位S12CPU:20位ALU,指令隊列,增強型索引尋址; 多種外部總線接口(MEBl); 模塊映射控制機制(MMC); 中斷控制(1NT); 斷點(BKP); 背景調(diào)試模塊(BDM)。CRG時鐘和復位發(fā)生器:
7、 鎖相環(huán)(PLL); 看門狗(COPwatchdog); 實時中斷(RTl); 時鐘監(jiān)視器(CM)。帶中斷功能的8位和4位端口: 可編程的上升沿或下降沿觸發(fā)。存儲器: 128 KB FLASH; 2 KB EEPROM; 8 KB RAM。92個8通道模數(shù)轉(zhuǎn)換器: 10位精度; 外部觸發(fā)轉(zhuǎn)變功能。3個1 Mbps的CAN總線模塊,兼容CAN2.0AB: 5個接收緩沖器,3個發(fā)送緩沖器; 4個獨立的中斷通道,分別是發(fā)送中斷、接收中斷、錯誤中斷和喚醒中斷; 低通濾波器喚醒功能。增強型捕捉定時器: 16位計數(shù)器,7位預分頻功能; 8個可編程輸入捕捉或輸出比較通道; 4個8位或2個16位脈沖累加器。8
8、個PWM通道: 每個通道的周期和占空比由程序決定; 8位8通道或16位4通道; 各通道獨立控制; 脈沖在周期內(nèi)中心對稱或左對齊輸出; 可編程時鐘選擇邏輯; 緊急事件關(guān)斷輸入; 可作為中斷輸入。10串行口: 2個異步串行通信接口(SCl); 2個同步串行設備接口(SPl); Byteflight模塊。I2C總線: 兼容I2C總線標準; 多主I2C總線模塊。LQFP112和QFP80封裝選擇: 5 V輸入和帶驅(qū)動能力IO; 5 V AD轉(zhuǎn)換器輸入; 50 MHz系統(tǒng)頻率(相當于25 MHz總線頻率); 單線背景調(diào)試模塊; 片上硬件斷點。115.MC9S12DG128微控制器的運行模式微控制器的運行
9、模式1)單片運行模式)單片運行模式普通單片模式和特殊單片模式(背景調(diào)試模式)普通單片模式和特殊單片模式(背景調(diào)試模式)2)擴展運行模式)擴展運行模式窄模式(窄模式(8位外部數(shù)據(jù)總線)和寬模式(位外部數(shù)據(jù)總線)和寬模式(16位外部數(shù)據(jù)總線)位外部數(shù)據(jù)總線)3)其他運行模式)其他運行模式測試模式、外設模塊測試模式等測試模式、外設模塊測試模式等126、MC9S12DG128內(nèi)部結(jié)構(gòu)簡圖、引腳圖及引腳功能內(nèi)部結(jié)構(gòu)簡圖、引腳圖及引腳功能MC9S12DGl28系統(tǒng)結(jié)構(gòu)大致可分為MCU核心與MCU外設兩部分,對應下圖中的左、右半邊。(1)MCU核心核心 該部分包括MCU的3種存儲器(FLASH、RAM、EE
10、PROM);多電壓調(diào)整器,包括數(shù)字電路和模擬電路電源電壓;具有單線背景調(diào)試接口(BDM)和運行監(jiān)視功能的增強S12CPU;程序存儲器的頁面模式控制;具有中斷識別、讀寫控制、工作模式等控制功能的系統(tǒng)綜合模塊(SIM);可用于系統(tǒng)擴展的分時復用總線端口,其中A口、B口可作為外擴存儲器或接口電路時的分時復用地址數(shù)據(jù)總線,E口的部分口可作為控制總線。(2)MCU外設外設 S12外設部分包括:AD轉(zhuǎn)換器,增強型定時與捕捉模塊(ECT),串行接口SPI、I2C。CAN、Byteflight等接口。 13MC9S12DG128的系統(tǒng)結(jié)構(gòu)圖的系統(tǒng)結(jié)構(gòu)圖14引腳封裝引腳封裝 MC9S12DGl28有LQFP11
11、2和QFP8Q兩種封裝形式。采用QFP80封裝的微控制器沒有引出用于擴展的端口,只引出了一個8路AD接口。本書主要介紹采用LQFP112封裝的MC9S12DGl28。 MC9S12DGl28引腳分布圖如下圖所示。15MC9S12DGl28MC9S12DGl28引腳分布圖引腳分布圖16 I/O接口,即輸入輸出接口,是微控制器同外界進行交互的重要通道。這些接口千變?nèi)f化,種類繁多,有顯而易見的人機交互接口,如操縱桿、鍵盤、顯示器;也有無人介入的接口,如網(wǎng)絡接口、機器設備接口。 通用I/O:(GPIO(General Purpose I/O),是I/O的最基本形式,它是一組輸入或輸出引腳,有時也稱為并
12、行I/O(parallel I/O)。 二、二、S12 I/O接口簡述與接口簡述與I/O寄存器寄存器17 輸入引腳有三種不同的連接方式:帶上拉電阻的連接、帶下拉電阻的連接和“懸空”連接。VCCK2R4R3VCCK3R5I3I2MCUK1R1I1VCCR2上拉電阻R2下拉電阻R4I3懸空狀態(tài)18輸出引腳的基本接法輸出引腳的基本接法作為通用輸出引腳,作為通用輸出引腳,MCUMCU內(nèi)部程序內(nèi)部程序向該引腳輸出高電平或低電平來驅(qū)向該引腳輸出高電平或低電平來驅(qū)動器件工作,即開關(guān)量輸出。如圖動器件工作,即開關(guān)量輸出。如圖4-24-2所示。其中所示。其中O1O1引腳是發(fā)光二極引腳是發(fā)光二極管管LEDLED的
13、驅(qū)動引腳,當?shù)尿?qū)動引腳,當O1O1引腳輸出引腳輸出高電平時,高電平時,LEDLED不亮;當不亮;當O1O1引腳輸引腳輸出低電平時,出低電平時,LEDLED點亮。點亮。O2O2引腳接引腳接蜂鳴器驅(qū)動電路,當蜂鳴器驅(qū)動電路,當O2O2腳輸出高電腳輸出高電平時,蜂鳴器響;平時,蜂鳴器響;O2O2腳輸出低電平腳輸出低電平時,蜂鳴器不響。時,蜂鳴器不響。這里只是原理性說明。這里只是原理性說明。 19 MC9S12DG128的的I/O端口端口MC9S12DG128有有10組普通端口,分別是組普通端口,分別是A口、口、B口、口、E口、口、H口、口、J口、口、K口、口、M口、口、P口、口、S口和口和T口??凇?/p>
14、它們中的大部分具有雙功能。20A口口 A口的口的8根引腳與鍵盤中斷模塊的引腳復用,這里只討論根引腳與鍵盤中斷模塊的引腳復用,這里只討論A口作為普通口作為普通I/O口的功能??诘墓δ堋#?)A口的寄存器口的寄存器 A口作為普通口作為普通I/O口時,具有三個寄存器,它們是:口時,具有三個寄存器,它們是:A口數(shù)口數(shù)據(jù)方向寄存器(據(jù)方向寄存器(DDRA)、)、A口數(shù)據(jù)寄存器(口數(shù)據(jù)寄存器(PORTA)、)、A口上拉電阻允許寄存器(口上拉電阻允許寄存器(PUCR)。)。 A口數(shù)據(jù)方向寄存器(口數(shù)據(jù)方向寄存器(Data Direction Register A,DDRA) A口數(shù)據(jù)方向寄存器(口數(shù)據(jù)方向寄
15、存器(DDRA)的地址是:)的地址是:$0002,DDRA的第的第70位分別記為位分別記為DDRA7DDRA0,這些位分別控制著,這些位分別控制著A口引腳口引腳PTA7 PTA0是輸入還是輸出,若是輸入還是輸出,若DDRAx=0,則引腳,則引腳PTAx為輸入,若為輸入,若DDRAx=1,則引腳,則引腳PTAx為輸出。復位時為輸出。復位時DDRA為為$00。記憶要點:數(shù)據(jù)方向寄存器的一位:記憶要點:數(shù)據(jù)方向寄存器的一位:0定義定義輸入,輸入,1定義輸出定義輸出21讀寫讀寫B(tài)it7Bit7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2BitlBitlBit0Bit
16、0ReadReadWriteWritePORTA7PORTA7PORTAPORTA6 6PORTAPORTA5 5PORTAPORTA4 4PORTAPORTA3 3PORTAPORTA2 2PORTAPORTAl lPORTAPORTA0 0DDRA寄存器寄存器PORTA寄存器寄存器22 A口數(shù)據(jù)寄存器(口數(shù)據(jù)寄存器(Port A Data Register,PORTA) A口口數(shù)據(jù)寄存器(數(shù)據(jù)寄存器(PORTA)的地址是:)的地址是:$0000, PORTA的第的第70位分別記為位分別記為PORTA7 PORTA0。若。若A口的某一引腳口的某一引腳PORTAx被定義成輸出,程序使被定義成輸
17、出,程序使A口數(shù)據(jù)寄存器口數(shù)據(jù)寄存器PORTA的相的相應位應位PORTAx0,則引腳,則引腳PORTAx輸出輸出“低電平低電平”;程序;程序使使PORTAx1,則引腳,則引腳PORTAx輸出輸出“高電平高電平”。若。若A口的口的某一引腳某一引腳PORTAx被定義成輸入,程序通過讀取被定義成輸入,程序通過讀取A口數(shù)據(jù)寄口數(shù)據(jù)寄存器存器PORTA,獲得輸入情況,獲得輸入情況,0表示輸入為表示輸入為“低電平低電平”,1表示輸入為表示輸入為“高電平高電平”。記憶要點:記憶要點: 輸出時:數(shù)據(jù)寄存器的一位:輸出時:數(shù)據(jù)寄存器的一位:0輸出低電平輸出低電平 1輸出高電平輸出高電平輸入時:數(shù)據(jù)寄存器的一位:
18、輸入時:數(shù)據(jù)寄存器的一位:0代表外部輸入低電平代表外部輸入低電平 1代表外部輸入高電平代表外部輸入高電平23 A口上拉電阻允許寄存器(Pull Up Control Register,PUCR)A口、B口、E口、K口都有上拉電阻,它們公用一個控制寄存器(PUCR)。記憶要點:記憶要點: 在引腳被定義成輸入時,可通過上拉電阻允許寄存器定義有在引腳被定義成輸入時,可通過上拉電阻允許寄存器定義有無內(nèi)部上拉電阻:無內(nèi)部上拉電阻:00沒有內(nèi)部上拉電阻沒有內(nèi)部上拉電阻11有內(nèi)部上拉電阻有內(nèi)部上拉電阻 24I/O口邏輯電路框圖口邏輯電路框圖 下圖給出了下圖給出了A A口作為普通口作為普通I/OI/O使用時,
19、一個外部引腳使用時,一個外部引腳的相應內(nèi)部邏輯電路框圖。的相應內(nèi)部邏輯電路框圖。25C語言編程示例DDRA=0 xFF; /設置端口A為輸出PORTA=0 x0F;26三、三、S12存儲器模型存儲器模型 1.MC9S12DG128存儲器的組織存儲器的組織 MC9S12DG128采用普林斯頓總線結(jié)構(gòu),程序存儲器、數(shù)據(jù)存儲器和IO端口為統(tǒng)一編址方式,總的地址空間為64 KB,內(nèi)部集成外設(例如SPI、PWM等)的管理接口(相應的寄存器),也占用地址空間,因此實際可用的程序和數(shù)據(jù)空間不足64 KB。這些存儲器和內(nèi)部集成模塊的地址分配并不是固定不變的,用戶自己可以重新分配,這就需要了解有關(guān)地址空間映射
20、方面的內(nèi)容。地址空間映射并不是每種微控制器都采用的地址分配方式,建議初學者不要輕易改動默認的映射空間,應直接采用默認地址映射空間。272.存儲器地址分配存儲器地址分配 在64 KB標準地址空間中,MC9S12DGl28安排了內(nèi)部寄存器、RAM、EEPROM和FLASHROM等資源,占據(jù)空間分別為1 KB、8 KB、2 KB和128 KB,每個存儲單元對應一個地址,共有64K個地址,用4位十六進制數(shù)表示,即地址為$0000$FFFF。 微控制器內(nèi)部不同的存儲器占用不同的存儲空間,也就是說,不同的地址范圍,它們均占據(jù)特定的地址空間,如下圖所示。 復位后的地址應為: $0000$03FF:1 KB
21、寄存器空間; $0000S1FFF:8 KB RAM; $0000$07FF:2 KB EEPROM(不可見)。28MC9S12DG128MC9S12DG128復位后復位后 的地址分配圖的地址分配圖 29 推薦的推薦的 MC9S12DG128MC9S12DG128 地址分配圖地址分配圖30n寄存器,RAM,EEPROM可以通過設置INITRG,INITRM,INITEE來重新分配他們的位置。n這些寄存器只能寫一次,建議在初始化分配寄存器,RAM,EEPROM的位置。對每個INITxx賦值后,在其指令后需插入一空指令NOP。n如果映射出現(xiàn)地址重疊時,S12MCU內(nèi)部的優(yōu)先級控制邏輯會自動屏蔽級別
22、較低的資源,保留級別最高的資源。寄存器具有最高優(yōu)先級,與其重疊的RAM和EEPROM此時無效。存儲器的優(yōu)先級如下表所列。優(yōu)先級優(yōu)先級資資 源源優(yōu)先級優(yōu)先級資資 源源1(最高)BDM ROM(ROM已激活)4EEPROM2寄存器區(qū)5FIASH3RAM6(最低)外部擴展存儲器313 RAM地址映射地址映射 MC9S12DG128的RAM區(qū)大小為8KB,復位默認首地址為$0000,運行時可重新映射到任何8KB邊界處。映射是通過修改RAM映射寄存器INITRM中的高5位二進制位來實現(xiàn)的。RAM映射寄存器映射寄存器INITRM(1)復位后RAM區(qū)從$0000開始,但可以被映射到64K字節(jié)空間內(nèi)的任何8K
23、字節(jié)塊內(nèi)。比如從$0000-$1FFF,$2000-$3FFF。(2)RAM15-13用來決定RAM區(qū)映射到哪個8K的字節(jié)塊中。RAM12-11不起作用讀寫讀寫B(tài)it 7Bit 7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2Bit1Bit1Bit0Bit0ReadReadWriteWriteRAM15RAM15RAM14RAM14RAM13RAM13RAM12RAM12RAM11RAM110 00 0RAMHALRAMHAL32(3)RAMHAL:內(nèi)部RAM對齊方式位。 0 RAM地址與映射空間地址低對齊,最小為為0000; 1 RAM地址與映射空間地址高對
24、齊,最大為$FFFF。 就是說,RAMHAL用來決定8K RAM是放在8K的后8K區(qū)域還是前8K區(qū)域。334. 寄存器地址映射寄存器地址映射 MC9S12DG128的寄存器區(qū)大小為1KB,復位默認首地址為$0000,運行時可重新映射到64 KB地址空間中的前32 KB中任何2 KB邊界處(即地址必須是2K的整數(shù)倍),但實際使用的是前512字節(jié)。映射是通過修改寄存器區(qū)映射寄存器INITRG中4個二進制位來實現(xiàn)的。 讀寫讀寫B(tài)it 7Bit 7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2Bit1Bit1Bit0Bit0ReadReadWriteWrite0 0R
25、EG14REG14REG13REG13REG12REG12REG11REG110 00 00 0寄存器映射寄存器寄存器映射寄存器INITRGINITRG34REG14REG11:寄存器區(qū)定位控制位。該位指定寄存器區(qū)16位首地址的第1114位。最小為$0000,最大為$7FFF。例如,INITRG寄存器中寫入二進制數(shù)0110 0000時,對應的寄存器映射位置為$6000。355 EEPROM地址映射地址映射 EEPROM存儲器可用來存放MCU系統(tǒng)中不需要頻繁擦寫的重要參數(shù),例如時間、初始化參數(shù)、配置及數(shù)據(jù)表格、產(chǎn)品版本號等,是一種非常重要的硬件資源。與FLASH相同,EEPROM也按字(16位)
26、方式組織,可按字節(jié)、字方式進行讀訪問。 MC9S12DG128內(nèi)部集成了2 KB的EEPROM,復位默認首地址為$0000,運行時可重新映射到任何2KB邊界處。映射是通過修改EEPROM映射寄存器INITEE中的前5個二進制位來實現(xiàn)的,最后一位EEON控制EEPROM是否激活。 36EE15EE11:內(nèi)部EEPROM定位控制位。指定EEPROM區(qū)16位首地址的最高5位。 在普通模式下只允許寫入一次,特殊模式下可任意進行寫操作。 EEON:EEPROM使能位。該位決定是否允許對EEPROM讀操作,但不影響編程、擦除操作以及對EEPROM控制寄存器的訪問。在單芯片模式下,該位恒為1;在擴展及外設模
27、式下,該位允許寫操作。 0 EEPROM關(guān)閉; 1 EEPROM使能。 讀寫讀寫B(tài)it 7Bit 7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2Bit1Bit1Bit0Bit0ReadReadWriteWriteEE15EE15EE14EE14EE13EE13EE12EE12EE11EE110 00 0EEONEEONEEPROMEEPROM映射寄存器映射寄存器INITEEINITEE37MC9S12DGl28的EEPROM具有如下特性:2 KB空間; 最小擦除單位為4字節(jié);命令執(zhí)行完畢或命令緩沖區(qū)為空時,產(chǎn)生中斷;快速塊(Section)擦除和字寫入操作;
28、靈活的保護機制,防止意外寫入和擦除;單電源供電擦寫。對EEPROM的寫入、擦除、保護和檢驗均通過寄存器實現(xiàn)。 386. FLASH存儲器的組織存儲器的組織 S12MCU的FLASH采用16位二進制格式,可按字節(jié)或字方式訪問。字節(jié)和規(guī)則字的訪問占用一個總線周期,非規(guī)則字訪問需2個總線周期。S12MCU在單片模式下,復位后,F(xiàn)LASH為激活狀態(tài),默認地址為$4000一$FFFF,CPU從地址$FFFE取得程序的入口地址,然后開始引導過程。 S12MCU可對FLASH設置硬件保護功能,以保護內(nèi)部數(shù)據(jù)免遭意外擦除。 MC9S12DG128使用多個寄存器來管理FLASH,以實現(xiàn)對FLASH的管理、編程、
29、檢測與保護等。397. FLASH地址映射及綜合控制寄存器地址映射及綜合控制寄存器 MC9S12DGl28微控制器具有128 KB的FLASH,其復位默認首地址為$4000,即64KB空間的高半部分,運行時可重新映射到低半部分,即$0000。$4000-$FFFF為FLASH存儲器空間,分成3個16 KB空間。最高16 KB空間的后256字節(jié),即$FF00$FFFF是中斷向量表空間。映射通過寄存器MISC實現(xiàn),其最低位ROMON控制FLASH是否激活。 以下是FLASH地址映射及綜合控制寄存器MISC40FLASH地址映射及綜合控制寄存器MISC EXSTRl、EXSTR0:外部總線周期延長控
30、制位。在單芯片模式和外設模式下,這兩位無意義。 ROMHM:FLASH映射控制位。該位決定片內(nèi)FLASH的位置。單芯片模式下,該位復位后為1。若ROMON0(參看下面ROMON部分),該位無意義。 0 FLASH定位于$0000$7FFF; 1 FLASH定位于$4000$FFFF。 ROMON:FLASH使能位。擴展模式下,復位后ROMON為0;單芯片模式下,復位后ROMON為1。 0 FLASH關(guān)閉; 1 FLASH使能。讀寫讀寫B(tài)it 7Bit 7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2Bit1Bit1Bit0Bit0ReadReadWriteWr
31、ite0 00 0EXSTR1EXSTR1 EXSTR0EXSTR0ROMHMROMHMROMONROMON418. FLASH存儲器的頁面管理存儲器的頁面管理 S12系列MCU片內(nèi)支持多達256KB的程序存儲器和64KB的數(shù)據(jù)存儲器,顯然存儲空間超過了S12MCU可尋址的64KB空間,因此引入了頁面訪問機制,對于64KB以外的存儲區(qū),應用專用指令CALL調(diào)用子程序,然后通過RTC指令返回。 MC9S12DGl28內(nèi)部集成了128 KB FLASH存儲器,并由PPAGE寄存器決定在當前訪問的是哪一頁,64 KB以外的存儲區(qū)通過向PPAGE寄存器寫入頁面編號來實現(xiàn)。對于DGl28來說,128 K
32、B FLASH空間分為8個16 KB的頁面,頁面編號為$38-$3F。CPU在64KB內(nèi)存的$8000$BFFF段開了一個窗口,只能看到頁面寄存器的某一頁,$3F頁定位在$C000$FFFF段,$3E頁定位在$4000$7FFF段。另外6頁只能通過$8000$BFFF窗口訪問。42FLASH存儲器的頁面管理存儲器的頁面管理PPAGE讀寫讀寫B(tài)it 7Bit 7Bit6Bit6Bit5Bit5Bit4Bit4Bit3Bit3Bit2Bit2Bit1Bit1Bit0Bit0ReadReadWriteWrite0 00 0PIX5PIX5PIX4PIX4PIX3PIX3PIX2PIX2PIX1PIX
33、1PIX0PIX0PIX0PIX5:通過$8000$BFFF窗口訪問的頁面號,可最多管理64個16 KB存儲器頁,如下表所示。 所有的128K的FLASH可以通過16K的PPAGE窗口來訪問,其中兩個16K的頁也可以通過固定地址($4000-7FFF, $C000-FFFF)來訪問。 $4000-$7FFF與$3E相對應,$C000-$FFFF與$3F相對應43PIX5PIX5PIX4PIX4PIX3PIX3PIX2PIX2PIX1PIX1PIX0PIX0訪問的頁面號訪問的頁面號0 00 00 00 00 00 016KB16KB頁頁0 00 00 00 00 00 01 116KB16KB頁
34、頁1 10 00 00 00 01 10 016KB16KB頁頁2 20 00 00 00 01 11 116KB16KB頁頁3 3:1 11 11 11 11 10 016KB16KB頁頁60601 11 11 11 10 01 116KB16KB頁頁61611 11 11 11 11 10 016KB16KB頁頁62621 11 11 11 11 11 116KB16KB頁頁6363存儲器的頁面管理存儲器的頁面管理注意:此表為$8000$BFFF窗口訪問的頁面號與PPAGE寄存器PIX0PIX5位對應表。44458. FLASH存儲器的擦寫保護存儲器的擦寫保護 S12為了禁止局部FLASH
35、的誤擦除,可以通過寫保護寄存器FPROT進行頁保護,其中$3E頁定位在$4000$7FFF,$3F定位在$C000$FFFF。改寫FPROT寄存器可以設定保護范圍:低端空間可為512 B、1 KB、2 KB、4KB,高端空間可以是2 KB、4 KB、8 KB、16 KB。46 S12CPU內(nèi)部寄存器可以直接與ALU部件相連,具有數(shù)據(jù)傳送速度最快,數(shù)據(jù)更新最快的特點。這些寄存器有的直接參與操作,有的存放操作結(jié)果,有的提供結(jié)果的特征,S12CPU主要內(nèi)部寄存器如下圖所示。(1)累加器D S12CPU有2個8位累加器:累加器A和累加器B,累加器又可稱為數(shù)據(jù)寄存器,因此累加器A和累加器B又分別稱為寄存器A和寄存器B。寄存器A和寄存器B加起來可看成一個16位寄存器D,其高8位在寄存器A,低8位在寄存器B。實際上寄存器D和A、B指的是同一個寄存器,只是名字不同而已,D寄存器不受復位影響。四、四、S12CPUS12CPU編程模型編程模型47S12CPU內(nèi)部寄存器進位進位/借位標志借位標志C溢出標志溢出標志V為為0標志標志Z為負標志為負標志N累加器累加器A和和 B變址寄存器變址寄存器 X變址寄存器變址寄存器Y堆棧指針堆棧指針SP程序計數(shù)器程序計數(shù)器PC程序狀態(tài)寄存器程序狀態(tài)寄存器CCR或者或者16位的雙累加器位的雙累加器 DS X HIN Z V
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高效辦公解決方案說明
- 吉林省“BEST合作體”2024-2025學年高一上學期期末考試英語試題(原卷版+解析版)
- 河北省衡水市安平中學2024-2025學年高二下學期3月月考數(shù)學試卷(原卷版+解析版)
- 動畫形象與游戲設計作業(yè)指導書
- 2025年通風系統(tǒng)安裝合同范本
- 2025上海市園林景觀設計合同模板
- 預防意外傷害安全教育
- 2025房地產(chǎn)開發(fā)合同
- 幼兒園用水用電安全教育
- 建設工程消防分包合同
- 2025年山西藥科職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- GB/T 18109-2024凍魚
- 《榜樣9》觀后感心得體會二
- 《西安交通大學》課件
- 管道天然氣泄漏事故案例分析研究報告
- 護理的內(nèi)涵和精髓
- 西門子S7-1200 PLC應用技術(shù)項目教程(第3版) 課件 窄屏 9.觸摸屏控制的液體混合系統(tǒng)-LAD
- 鐵路勞動安全 課件 第一章 防暑降溫
- 【MOOC】大學語文-東南大學 中國大學慕課MOOC答案
- 某地區(qū)現(xiàn)代有軌電車施工方案
- 城市軌道交通運營安全風險評估報告
評論
0/150
提交評論