HCS12中文手冊.ppt_第1頁
HCS12中文手冊.ppt_第2頁
HCS12中文手冊.ppt_第3頁
HCS12中文手冊.ppt_第4頁
HCS12中文手冊.ppt_第5頁
已閱讀5頁,還剩353頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

FreescaleHCS12微控制器 Slide1 8 16 32 位內(nèi)核定位 性能 HawkMCU56F8300 功能 發(fā)動機管理信息娛樂 底盤 電機控制 中 高級車身控制安全 儀表 音響 HVAC 空調(diào) ISU CAN LIN主節(jié)點 低端CANLIN從節(jié)點 Slide2 25Mhz總線速度 8位或16位數(shù)據(jù)總線 管腳功能復用 引腳數(shù)量少 增強型指令集 快速算術(shù) 模糊邏輯 EMACS TBL Move 預加減 后加減 增強尋址模式 inc 64Kindexingrange 和高效率的存儲區(qū)分頁結(jié)構(gòu) 增強型調(diào)試功能 為高級語言進行了優(yōu)化 FlashEEPROM存儲區(qū) 在掩膜ROM產(chǎn)品中 可以給代碼加補丁修復bugs HCS12系列特點 Slide3 MC3S12R64ROM1xCAN NoEE MC9S12B2561xmsCAN 128K 32K 256K MC9S12Dx1282 3xmsCAN MC9S12D641xmsCAN MC9S12C321xmsCAN 64K Existing InDevelopment InPlanning MemorySize 2004 2001 S12X NeXtGenerationEnhancedS12CPU DMA128K 1MB 40 50MHz144pin 112 80pin 2002 2003 S12產(chǎn)品路線圖 512K MC9S12H256Stepper LCD MC9S12Dx2563xmsCAN MC9S12DP5125xmsCAN MC3S12R 128ROM1xCAN NoEE MC9S12B641xmsCAN MC9S12B1281xmsCAN MC9S12D321xmsCAN MC3S12C1281xmsCAN MC3S12C961xmsCAN MC3S12C64ROM1xmsCAN MC9S12C1281xmsCAN MC9S12C961xmsCAN MC9S12C641xmsCAN C Q系列 管腳少 成本低3 5v16 128K 16 25MHz80 52 48pin MC9S12DB64D128 ByteFlyte MC9S12DB128D128 ByteFlyte MC9S12H128Stepper LCD D系列 資源豐富 性能強大32 512K 25MHz112pin 80pin H系列 儀表專用32 256K 16MHz144pin 112pin MC9S12KG256 ECCOption MC9S12GC16CAN less MC9S12Q128 32UltraLowCost B系列 外設(shè)簡化 管腳與D系列兼容64 256K 16 25MHz112pin 80pin PinCompat TheserepresentFreescaleSemiconductor scurrentproposedproductdevelopmentplans andaresubjecttochange 9S12HZ128 64 32PSD LCDStepper MC9S12HZ256PSD LCDStepper MC3S12H128ROM Slide4 MC9S12汽車系列路線圖 Functionality ApplicationSpecific D系列之衍生具有編碼糾錯功能的FLASH可靠性更高 內(nèi)嵌步進馬達驅(qū)動LCD驅(qū)動專門針對于汽車儀表 低成本S12完全可裁減系列 D系列的簡化版與D系列引腳完全兼容 高性能的16位MCUFLASH最大達512kCAN模塊最多5個 下一代采用XGateDMA模塊高速 高性能 Slide5 MC9S12系列 D B系列引腳完全兼容為系統(tǒng)設(shè)計提供更多選擇 16K 512KFlash選擇 簡化或完全的外設(shè)選擇 封裝形式 引腳數(shù)選擇 Slide6 HCS912DFamily D 系列背景 S12的第一個產(chǎn)品系列S12中功能最強的系列在汽車市場上獲得了巨大成功外設(shè)非常豐富今天的衍生系列給用戶更多選擇News 擴展到 512K 32K ROMversions 現(xiàn)在有13個版本可供用戶選擇 Slide7 S12RFamilyUpdate ROMs正在設(shè)計中 2005年中批量生產(chǎn)對大批量 代碼穩(wěn)定的應用追求更低成本ROM版沒有EEPROM Slide8 車身中央控制 網(wǎng)關(guān) MC33989 5V Slide9 HCS912BFamily 特點外設(shè)豐富一個增強型msCAN12模塊應用高性能但是外設(shè)和EEPROM比D系列較少 KBI 8 ch10 BitADC BDM HCS12CPU16MHz 8 ch16 BitTimer Upto256KFlash Upto8KRAM CRG SPI Upto2KEEPROM Upto112QFP 2xSCI CAN 8 ch8 bitor4 ch16 bitPWM Slide10 HC9S12CFamily 特性 優(yōu)點內(nèi)嵌FLASH和CAN的低成本器件S12系列的低端產(chǎn)品16 位的性能8 位的價格引腳 封裝48 52LQFP80QFP 與B D系列引腳兼容Flash從16K 128K 易于產(chǎn)品升級8通道10位AD7 sec 10 bit單次轉(zhuǎn)換時間 具有掃描模式 Slide11 S12C 系列更新 市場表現(xiàn)出色 給人嶄新印象的入門級C 系列 16位的性能8位的價格 彌補S12在 3 00以下的缺憾低成本 高速watchdog應用3 5V工作電壓封裝從小型的48QFP 7x7mm 到標準的80QFP 與S12D B兼容 9S12C32已經(jīng)批量生產(chǎn)9S12C64 96 128已經(jīng)通過質(zhì)量測試 ROM系列 所有CAN版本 將使S12入門級更低ROMProductiontargetedfor3Q05 allversions ExactscheduleTBD 最新消息 低成本不帶CAN 的16Kflash版本 samplesnow Slide12 MC9S12C32 Goldfish ApplicationExample HVACSystem Slide13 S12Q QFamilyMCU s 特點 優(yōu)點 低成本基于S12C 系列增強型msCAN12增強型SCI用于LINSPI8or16MHzPreliminaryScheduleprojections FlashEmulation TodayFlashSamples 2Q05 FlashProduction 2Q06 ExactROMscheduleisTBD Samplesaretargetedfor3Q05 Productiontargetedfor3Q06 IfanyROMdevicesnotavailablefor3Q06production wewillshipprogrammedOTPFlashinlieu withROMprice ROMTs Cs Upto4KRAM Upto128KFLASH ROM LIN SCI0 SPI0 msCAN ADC10B8ch Timer6ch GPIO DBG INT S12CPU PWM8B6ch BDM PWMOnlyavailableonthe96Kand128Kderivative Slide14 Q C系列區(qū)別 所有的外設(shè)寄存器以及中斷向量的地址相同TIMER 通道ThetimerfeaturesontheQ Familyonlysixchannels2through7 whilethetimerontheC Familyholdsalleightchannels0to7 IfanapplicationisdevelopedontheC FamilyandshouldbetransferredtotheQ Family allregisterbitsassociatedwithchannels0and1shouldnotbeused PWM模塊ontheQ Familyfeatures4channelsversus6ontheC Family Thechannels0through3shouldbeusedincaseanapplicationismovedoverfromtheC FamilytotheQ Family地址分配請參照相應的數(shù)據(jù)手冊 Slide15 MC9S12H 系列 批量 9S12H256 128in144 112QFP樣品4Q2004 9S12HZ128 SSDcapability extraIIC LCD 樣品3Q2005 LowcostROMversionsdownto64Kandlowest costnon CANversion ROMProductistargetedforsamples3Q05 allversions andmid06production ExactscheduleTBD IfROMdevicenotavailablefor3Q05samples wewillshipprogrammedOTPFlashinlieuwithROMprice ROMTs CsHigherperformance largermemoryS12Xvariantscurrentlyindiscussion 內(nèi)嵌步進馬達驅(qū)動和LCD驅(qū)動 適用于汽車儀表現(xiàn)在已經(jīng)大量應用于汽車組合式儀表H系列將會大大擴展 新產(chǎn)品 新功能 Slide16 車速 CAN物理層接口 PWM儀表驅(qū)動器 燈驅(qū)動 揚聲器 CAN 5VVcc 音頻放大 定時器PWM 輸入信號控制 發(fā)動機轉(zhuǎn)速 發(fā)動機溫度 蓄電池電壓 機油液面 機油壓力 燃油液面 I O LCD驅(qū)動器 MC9S12Hx16位MCU 集成LCD驅(qū)動32x4或28x4 144或112QFP封裝 集成驅(qū)動6個步進電機24路大電流PWM輸出 非常容易的PCB布線較少有元器件數(shù)目高可靠性 汽車儀表解決方案 Slide17 PWM01 PWM03 PWM04 PWM05 PS0 9S12H256 MC9S12Hx儀表板系統(tǒng) M1C0M M1C0P M1C1M M1C1P 轉(zhuǎn)速表 X1000r min 步進電機 M3C0M M3C0P M3C1M M3C1P 溫度計 高 低 步進電機 輸入接口電路LM2901 IC4 IC5 IC6 IC7 PS1 RS232MC145407 VSSM1 M2 M3 VSSX VSSR VSSA VSSI1 I2 MODA MODB PE7 PK7 Pullhighwith47kresistor Pulllowwith47kresistor 5v EXTAL XTAL BKGD 5v RESET XFC VDDPLL VSSPLL 5v VDDM1 M2 M3 VDDX VDDR VDDA 3 3nF 33nF 4 7k 10pF 10pF 8Mhz 1 3 5 2 4 6 1 2 3 4 7 8 9 10 15 16 17 18 21 22 23 24 56 55 57 6 20 34 49 52 76 77 97 132 5 19 33 50 51 78 79 96 98 131 45 46 141 142 143 144 40 42 43 44 58 59 67 73 53 RESET 54 129 130 99 130 32lines 137 140 4lines RXCAN0 TXCAN0 CAN接口MC33388 63 64 LCD顯示屏 32 4 32 4 Slide18 帶ECC功能9S12K系列 9S12KxFAMILYECC 每個字自動產(chǎn)生6個奇偶位對用戶透明每個字能檢測出兩位的錯誤每個子可檢測1位的錯誤并改正 與9S12Dx兼容適用于 安全性高的領(lǐng)域汽車 航天 軍事 Slide19 KG128 特點 128KbFlashwithHammingErrorCheckingCorrectionIntendedonlyforhighdataintegrityapplications e g automotiveairbag Detectreadof2erroneousbitvaluesperwordaccessandcorrect1bit1flashblock 22bitswide 16databits 6paritybitsDoublebitfaultdetectinterruptflagSinglebitfaultsonlyvisibleinspecialmodes otherwisetransparentExtraredundancyinvolvesextracost FlashSectorEraseAbortNewfunctionkillsanexecutingorpending 20mS sectorerasecommandNoneedtowaituntilerasecompletesbeforewritingtoflashImportantwhendevicehasonly1flashblockand ornoEEPROMFlashContentChecksumFlashchecksumcommand SupplystartwordaddressandnumberofwordstocheckChecksumendsupintheFDATAHI LOwhencompleteOscillatorFullandreducedamplitudePierceoscillator NoColpittsoption Reducedamplitude lowpowermode Piercefor4 16MHzFullswing fullpowermode Piercefor500kHz 40MHz Slide20 HCS12ActiveVoltageRegulator TwoIndependentRegulatorsCorelogicPLL oscillatorWideInputVoltage3to5vThreeOperatingModesFullpowerReducedpowerShutdownLowVoltageDetectAssertsdiscreteinterruptLowVoltageResetResetsMCUPowerOnResetInhibitsCRGpowerupsequence Slide21 16位HCS12CPU 向上兼容HC11 12的指令集 中斷進棧和編程模式與HC11 12相同 20位的ALU 指令管道 增強的變址尋址方式 系統(tǒng)集成模塊 SIM 多路外部總線接口 MEBI 模塊映射控制 MMC 中斷控制 INT 斷點調(diào)試 BKP 背景調(diào)試模式 BDM 時鐘和復位產(chǎn)生模塊 CRG 低電流振蕩器 鎖相環(huán) PLL 復位 時鐘 看門狗 COP 實時中斷 時鐘監(jiān)控 存儲器 splitgateFlash 分頁 splitgateEEPROM 每次寫一個字 每次擦2個字 零等待狀態(tài)RAM 外圍設(shè)備 增強的串行通信接口 SCI 同步串行接口 SPI 每秒1M位的傳輸速率 支持CAN2 0A B標準的msCAN模塊 有分頁消息緩沖 USB2 0 字節(jié)數(shù)據(jù)鏈路控制器 BDLC I2C總線 IIC 10位模擬 數(shù)字轉(zhuǎn)換器 ADC 標準的8通道定時器 增強的捕捉定時器 ECT 脈沖寬度調(diào)制模塊 PWM 步進電機控制器 LCD控制器 片內(nèi)調(diào)壓器 使用內(nèi)部調(diào)壓器產(chǎn)生2 25V 2 75V的數(shù)字電壓 4 75V 5 25V模擬電壓以及I O工作電壓 技術(shù) 0 25微米CMOS 50MHzCPU相當于25MHz總線操作 設(shè)計為66 33MHz 主要特性 Slide22 HCS12CPU內(nèi)部結(jié)構(gòu) 68HC11 68HC12 HCS12CPU內(nèi)部結(jié)構(gòu) 進位 借位標志 從最高位 溢出標志零標志負標志 最高位 1 8位累加器A和B 變址寄存器X 變址寄存器Y 堆棧指針SP 程序計數(shù)器PC 條件碼寄存器 或16位雙字節(jié)累加器D S X H I N Z V C 7 0 7 15 0 0 0 0 0 0 0 15 15 15 15 PC SP Y X D B A I 中斷屏蔽標志半進位標志 用于BCD X 中斷屏蔽標志STOP指令禁用標志 源代碼兼容進棧方式相同調(diào)用 CALL 指令和返回調(diào)用 RTC 指令使用PPAGE 分頁只用于HC S 12 5 0 PPAGE 7 Slide23 HCS12串行接口特性 模塊化結(jié)構(gòu)方便升級引腳可以配置為通用I O調(diào)試時查詢模式工作 SCI0 RxD0TxD0 RxDTxDRxDTxDMISOMOSISCKSSMISOMOSISCKSSMISOMOSISCKSS DDRS PORTS SPI1 MISOMOSISCKSS SPI0 MISOMOSISCKSS SPI2 MISOMOSISCKSS SCI1 RxD0TxD0 Slide24 引腳邏輯 延時計數(shù)器 比較器 CAP COM 寄存器 脈沖累加器 16位自運行主定時器 保持寄存器 保持寄存器 預分頻器 總線時鐘 CH0 16位模數(shù)遞減計數(shù)器 預分頻器 0 控制位 復位 預置寄存器 MC9S12增強型捕捉定時器 CH1 CH7 CH6 CH2 Slide25 o PIM Inter L PortI PJ0 PJ1 PJ6 PJ7 IIC CAN4 SDA SDL RxCAN TxCAN PM0 PM1 PM2 PM3 PM4 PM5 PM6 PM7 RxCAN TxCAN RxCAN TxCAN CAN3 CAN2 BDLC CAN0 CAN1 RxB TxB 端口集成模塊 Slide26 標準端口特點 標準端口特性 對每個引腳用戶可自己定義 電氣 特性 簡化驅(qū)動 線或 方式 上拉 下拉 上拉 下拉時要特別注意 若msCAN總線使能 則上拉允許 下拉關(guān)閉 高靈活性 端口寄存器可在內(nèi)存映射中重定位 Slide27 IIC特性 與I2C總線標準兼容 多主機操作 可進行軟件編程實現(xiàn)256種不同的串行時鐘頻率 包含一個軟件可選確認位 包含逐字節(jié)數(shù)據(jù)傳送中斷驅(qū)動 自動模式下 從主切換到從方式模式將產(chǎn)生一個仲裁丟失中斷 包含一個調(diào)用地址識別中斷 提供啟動和停止信號的產(chǎn)生 檢測 提供重復啟動信號的產(chǎn)生 提供確認位的產(chǎn)生 檢測 總線忙檢測支持低功耗模式與msCAN4共享 Slide28 B E A C C B A D 包含16位定時器 7位預分頻因子和8個IC OC通道的部件 支持13位跳變的異步通信端口 無線應用領(lǐng)域中廣泛使用的接口 同步高速通信端口 E D 外設(shè)和大多數(shù)端口的I O之間的標準接口 問題 SCI SPI MC9S12ECT PIM IIC Slide29 msCAN總線 Slide30 msCAN總線特性 多達5個msCAN模塊包含3個自動映射的發(fā)送消息緩沖區(qū)包含5個后臺接收緩沖區(qū)可編程I O模式具有可屏蔽的中斷具有可編程回環(huán)自測操作與傳輸介質(zhì)無關(guān) 假設(shè)使用外部收發(fā)器 包含開放的網(wǎng)絡體系結(jié)構(gòu)多主模式高抗干擾性高優(yōu)先級消息具有短響應時間包含低功耗休眠模式 當總線激活時 可通過編程來喚醒 Slide31 BDLC J1850 與SAEJ1850兼容包含一個10 4Kbps的可變脈帶調(diào)制 VPW 位格式包含數(shù)字噪音濾波器提供沖突檢測允許硬件CRC產(chǎn)生 檢測支持接收和發(fā)送阻塞模式支持4X接收模式 41 6Kbps 包含數(shù)字回環(huán)模式支持幀內(nèi)響應類型0 1 2和3網(wǎng)絡激活時 自動喚醒停止和等待省電模式產(chǎn)生基于矢量查詢表的中斷 Slide32 模擬 數(shù)字轉(zhuǎn)換器 Slide33 ADC特性 8 10位分辨率 7微秒的10位精度單獨轉(zhuǎn)換 包含采樣緩沖放大器 提供了可編程的采樣時間 包含左 右對齊和有符號 無符號結(jié)果數(shù)據(jù) 外觸發(fā)器控制 轉(zhuǎn)換完成產(chǎn)生中斷 為8模擬輸入通道提供模擬輸入多路復用器 模擬 數(shù)字輸入引腳復用 1到8的轉(zhuǎn)換序列長度 連續(xù)轉(zhuǎn)換方式 包含多通道掃描 Slide34 PWM特性 Slide35 晶體振蕩器 OSC Colpitts與Pierce時鐘監(jiān)視器 CM 與HC12D系列相同時鐘質(zhì)量監(jiān)視 CQC 確保工作時鐘有效鎖相環(huán) PLL 與HC12D系列相同系統(tǒng)時鐘產(chǎn)生器 CGEN 簡化了時鐘鏈 內(nèi)核時鐘 PLLCLKorOSCCLK外設(shè)時鐘 PLLCLK 2orOSCCLK 2 25 duty ECLK PLLCLK 2orOSCCLK 2 50 duty 沒有慢模式時鐘系統(tǒng)復位發(fā)生器 RGEN 與HC12D系列相同 復位由上電復位 COP 看門狗 復位 外部復位 時鐘和時鐘監(jiān)控產(chǎn)生 實時中斷 RTI 與分頻器鏈略有差別看門狗 COP 與分頻器鏈略有差別上電復位 POR 使晶振工作穩(wěn)定 CRG OSC PLL CM RTI COP CGEN POR RGEN Registers Control EXTAL XTAL VDDPLL XFC VSSPLL RESET 內(nèi)部總線接口 MC9S12時鐘和復位發(fā)生器 CQC 鼠標放在亮橙色方塊上可獲得更多有關(guān)CRG部件的有關(guān)知識 Slide36 RUN模式 全部運行 WAIT模式 CPU休眠 STOP模式 所有模塊停止工作 偽STOP模式 所有模塊停止工作 MC9S12低功耗方式 Slide37 HCS12復位 上電復位 POR 特殊的延時復位高于2 07V電壓時釋放低于0 97V電壓時激活50個自恢復時鐘周期寬的時鐘質(zhì)量監(jiān)視窗口最后復位原因可檢測 Slide38 時鐘監(jiān)控功能檢測晶振失敗的情況 并可執(zhí)行用戶特定的操作 差時鐘檢測時鐘質(zhì)量檢測對晶振進行窗口檢查 確保MCU的工作時鐘穩(wěn)定 優(yōu)時鐘檢測自恢復時鐘模式 SCM 晶振臨時出故障能完成有限的操作晶振失敗時能進行受控關(guān)閉晶振慢啟動允許健壯系統(tǒng)的設(shè)計 即使在晶振失敗時 MCU也能繼續(xù)運行和受控關(guān)機 或進行診斷操作 1 5 5MHz的頻率靈活的看門狗 COP 用作 窗口 COP 只在一個周期的75 100 更新 進一步降低代碼跑飛的可能性和PLL無關(guān) 時鐘來源于晶振 即使PLL失敗仍能安全工作 MC9S12系統(tǒng)完整性 Slide39 廉價的串行實時仿真和調(diào)試單步 運行或停止應用程序集成硬件實現(xiàn)多斷點調(diào)試取代了昂貴的仿真器或者總線分析器全工作電壓和全頻率非破壞性 沒有麻煩的仿真器電纜 FLASH EE的在線編程 MC9S12的BDM 背景調(diào)試模式 背景調(diào)試模式 Slide40 高靈活性 5VFLASH工作電壓 無需外部電荷泵 符合市場潮流的FLASH操作大小 512BFlash擦除 2B編程 實現(xiàn)了虛擬EEPROM以便擴展EE4個獨立可編程FLASH段 DP256 能夠在讀其他塊的同時擦除某一塊 高速編程 快速的Flash頁擦除操作 20ms或512字節(jié) 50us內(nèi)可完成16位編程128K大小的代碼 總編程時間少于5秒高效的行結(jié)束編程可能 MC9S120 25u閃存 Slide41 HCS12電源供給 Vddr電源變壓器 端口A B E和H接5V電壓 并通過一個100nF的電容進行濾波 Vdd1 22 5V變壓器輸出 內(nèi)核供給電壓 通過一個47 220nF的電容進行濾波 電容的大小取決于EMC結(jié)果 Vddpll2 5V變壓器輸出 Osc和PLL的供給電壓 通過一個22 100nF的電容進行濾波 VddaA D的供給電壓 接5V并通過一個22 100nF的電容進行濾波 VrhA D的參考電壓 接5V并通過一個10nF的電容進行濾波 Vddx用作Vddr作供給電壓之外的其他所有端口的供給電壓 接5V并通過一個47 220nF的電容進行濾波 如果大負載被切換 電容需要再大10nF Slide42 級別 注 HCS12的每個引腳上有穩(wěn)定狀態(tài)的2 5mA額定電流 每個包上有25mA的額定電流 Slide43 問題 下面哪個屬于MC9S12的低功耗模式 選擇所有正確的選項 運行模式偽STOP模式STOP模式RESUME模式WAIT模式 Slide44 MC9S12DP256 InternalBus SCI1 256KFLASEEPROM 12KSRAM ATD0 HCS12CPU BKPINTMMI CMBDMMEBI 4KBYTESEEPROM SIM msCAN3 msCAN2 msCAN1 SCI0 SPI2orPWMCH4 7 BDLCormsCAN0 msCAN4orIIC SPI1orPWMCH0 3 SPI0 ATD1 PLLRTI ECT8CHAN PWM8CHAN 注 在HCS12微控制器家族的眾多成員中 MC9S12DP256只是其中一款 Slide45 Slide46 HCS12的特點 和MC68HC12特點一致并基于MC68HC11CPU提供高效的內(nèi)存訪問機制提供存儲器 滿足多種應用程序擴展了HC11的指令新增了幾種尋址方式訪問附加的外部存儲器 Slide47 另外的特點 HCS12的編程模型與M68HC11 M68HC12的一致無新的寄存器中斷進棧順序無變化混合的和非混和的外部界面HCS12能夠重用現(xiàn)有的軟件源代碼注 新的時鐘頻率 字節(jié)數(shù)和指令周期時間導致定時循環(huán)改變 新增指令提高了HCS12的性能HCS12縮短了中斷響應時間HCS12提高了數(shù)學計算速度HCS12提高了性能指令隊列數(shù)據(jù)提高其性能在保持確定性的同時 指令的執(zhí)行變得更快 Slide48 HCS12 將新增的指令設(shè)計在編譯器內(nèi)部 新增的指令和尋址方式支持高級語言MC68HC12和HCS12指令集一致 偏移量堆棧變址尋址方式和偏移量程序計數(shù)器變址尋址方式11個數(shù)學指令模糊邏輯指令長轉(zhuǎn)移指令 16位偏移量 傳送指令 存儲器和存儲器之間 求最小值 最大值函數(shù)整個內(nèi)存映射的位操作交換 轉(zhuǎn)移指令表查詢和插入函數(shù)循環(huán)語句結(jié)構(gòu) Slide49 編程模型 A B 7 0 7 0 D 15 0 15 0 X 15 0 Y 15 0 PC SXHINZVC 7 0 進位 借位標志位 溢出標志位 零標志位 負標志位 中斷屏蔽標志位 半進位標志位 X中斷屏蔽位 STOP指令禁止位 8位累加器A和B 或16位雙字節(jié)累加器 變址寄存器X 變址寄存器Y 堆棧指針 程序計數(shù)器 條件碼寄存器 15 0 SP Slide50 條件碼寄存器 S 為1 禁止STOP指令 硬件復位置1 通過軟件清除 請求使其置1 屏蔽位 算術(shù)運算位 反映指令執(zhí)行的結(jié)果 C 向最高位字節(jié)進位 借位 無符號運算 V 二進制補碼溢出 有符號運算 Z 結(jié)果為零 N 負標志位 其后是結(jié)果的最高位 S X H I N Z V C H 只在進行加運算時 第3位向第4位進位 Slide51 問題 下面哪些句子描述了HCS12的特點 選擇所有正確的答案 它提供了有效的存儲器訪問機制 它和MC68HC12的特點一致并基于MC68HC11CPU 它擴展了HC11指令 它可以重用現(xiàn)有的軟件源代碼 它縮短了中斷響應時間 Slide52 問題 N Z H H C C N Z 只用于BCD的算術(shù)運算 反映結(jié)果最高位的狀態(tài) 結(jié)果的所有位均為零 加法產(chǎn)生進位或減法產(chǎn)生借位 V V 由于某個操作導致二進制補碼溢出 Slide53 HCS12尋址方式 內(nèi)在尋址CLRB 立即尋址LDAA 12 擴展尋址LDAA 4000 直接尋址LDAA 50 相對變址尋址BNELOOP HC11尋址方式 變址尋址LDAB 10 X Slide54 新增的變址尋址方式 LDAA 10 X5位有符號偏移量變址尋址LDAA 50 X9位有符號偏移量變址尋址LDAA 500 X16位有符號偏移量變址尋址JMP D X 存儲器間接變址尋址 Slide55 CPU12的優(yōu)點 在所有的變址操作中 堆棧指針寄存器可以用作變址寄存器程序計數(shù)器可以用作變址寄存器 自增長方式和自減少方式除外A B或D累加器可以用于累加器偏移量自增加或自減少的幅度從 8到 8可選擇5位 9位或是16位的有符號常數(shù)偏移量使用兩種新的間接變址尋址方式 帶16位偏移量的間接變址尋址方式累加器D作偏移量的間接變址尋址方式 CPU12變址尋址方案的主要優(yōu)點 Slide56 X LDAA 6 X 1000 Y 2000 STAA 8 Y 5位偏移量 5位偏移量 12 A 12 12 5位有符號偏移量變址尋址方式 Slide57 X LDAA 70 X 1000 Y 2000 STAA 250 Y 9位偏移量 9位偏移量 AA A AA AA 累加器偏移量變址尋址方式 Slide58 X LDAA 700 X 2000 Y A000 STAA 5000 Y 16位偏移量 16位偏移量 BB A BB BB 16位偏移量變址尋址方式 IDX2 Slide59 D累加器內(nèi)容加上基址寄存器的內(nèi)容形成間接地址的值 偏移量值 32KB 32KB X JMP D X 1000 D 0004 1004 9800 E000 X Y SP或PC寄存器均可用于該尋址方式 Routine n D累加器間接變址尋址方式 D IDX Slide60 累加器偏移量變址尋址方式 X LDABA X 1000 A 99 B 99 60 1060 累加器偏移量變址尋址方式 Slide61 預加 預減 補加 補減尋址方式 X 2000 Y 56 56 MOVW2 X 2 Y 之前 2002 之后 Y X 30003002 之后 其他的例子 MOVW8 X 8 YMOVW2 X 4 YSTAA1 SPSTAA4 SP Slide62 相對變址尋址方式 PC OFFSET PC OFFSET OCL L BEQLOOP BccOPCODE OFFSET LOOP OCL 只適用于轉(zhuǎn)移指令 轉(zhuǎn)移指令在長度上為2字節(jié)或4字節(jié) 所有的轉(zhuǎn)移指令都是從下一條指令地址取出 轉(zhuǎn)移的目的地址通過有符號的偏移量加上OCL 2或者 4的內(nèi)容 OFFSET BccOPCODE LOOP Slide63 提問 選擇某種變址尋址方式完成下面表達式 選擇正確的答案并點擊 完成 變址尋址方式提供了4種自動改變基變址寄存器值的方法 且為指令執(zhí)行的一部分 a 變址預加 預減 補加 補減尋址方式b D間接變址尋址方式 D IDX c 5位有符號偏移量變址尋址方式d 16位有符號偏移量變址尋址方式 Slide64 HCS12指令集 M68HC11指令集的超集CPU12實現(xiàn) 原來的M68HC12 和新的HCS12所有的內(nèi)存和輸入 輸出都映射到一個共同的64K字節(jié)的地址空間8位和16位算術(shù)指令全集 Slide65 指令集 數(shù)據(jù)處理算術(shù)邏輯數(shù)據(jù)測試分支跳轉(zhuǎn)和子程序調(diào)用 參考CPU12用戶手冊中的信息 查看CPU12RM AD文檔或登錄網(wǎng)站 Slide66 存取指令 Slide67 數(shù)據(jù)移動指令 將一個存儲單元中的數(shù)據(jù)移到另一個存儲單元中 源存儲單元中的數(shù)據(jù)不變 例如 MOVW2 X 2 YMOVB1 Y 1 X MOVB2 X 2 Y MOVW2 X 2 SPMOVW2 X 2 Y Slide68 數(shù)據(jù)移動 數(shù)據(jù)處理指令 Slide69 B7B0 堆棧操作 內(nèi)存 堆棧頭 例如 PSHX之前 內(nèi)存 XHXL 地址逐漸增大 地址逐漸增大 SP 3FFE SP 4000 SP 3FFF SP 4000 B7B0 例如 PSHX之后 堆棧頭 B7B0 內(nèi)存 DHDL 地址逐漸增大 3FFE 4000 3FFF 例如 PULD之前 堆棧頭 堆棧頭 例如 PULD之后 地址逐漸增大 SP 4000 B7B0 SP SP SP 內(nèi)存 Slide70 問題 PSHA是使用的什么類型的尋址方式 請選擇正確的答案 擴展尋址方式內(nèi)在尋址方式變址尋址方式 Slide71 問題 什么時候Pull指令使用的比較多 請選擇正確的答案 a 在一個子程序的結(jié)尾處 恢復在子程序剛進入時被進棧保護的CPU寄存器的內(nèi)容時一般使用Pull指令 b 在一個子程序的開始處 要保存一個或多個CPU寄存器內(nèi)容時一般使用Pull指令 c 在一個子程序的開始處 要移動一個或多個CPU寄存器內(nèi)容時一般使用Pull指令 d 在一個子程序的開始處 恢復在進入子程序前被保護的一個或多個CPU寄存器的內(nèi)容時一般使用Pull指令 Slide72 數(shù)據(jù)傳送和交換 功能 指令 操作 傳送數(shù)據(jù)寄存器間數(shù)據(jù)傳送TFRA B CCR D X Y SPA B CCR D X Y SP交換EXGA B CCR D X Y SPA B CCR D X Y SP TBA TAB TXS TYS TSX TSY XGDX XGDY 交換數(shù)據(jù) BA AB RSP SPR DXDY 例1 TFRX A例2 EXGY B 數(shù)據(jù)處理指令 Slide73 改變數(shù)據(jù) 功能 指令 操作 減1 DEC DECA DECB DEX DEY DES M 1 M A 1A B 1B X 1X Y 1Y S 1S 加1 INC INCA INCB INX INY INS M 1 M A 1A B 1B X 1X Y 1Y S 1S 數(shù)據(jù)處理指令 Slide74 清除 求補和求反 功能 指令 操作 求補指令 NEG NEGA NEGB COM COMA COMB 求反指令 清除指令 CLR CLRA CLRB 0 M M 0 AA 0 BB M M AA BB 0 M 0A 0B 位清除指令 BCLR M MASK M 位置位指令 BSET M MASK M 位操作例子 BSETOFFSET X MASK 數(shù)據(jù)處理指令 Slide75 求最大最小指令 Slide76 例題A 例如 LOOPMINA1 X BHSLOOP這個例子將A寄存器中的數(shù)據(jù)和X寄存器所指向的存儲單元中的數(shù)據(jù)進行比較 Slide77 移位和循環(huán) 功能 指令 操作 循環(huán)左移指令 ROL ROLA ROLB M A B 循環(huán)右移指令 ROR RORA RORB M A B 算術(shù) 邏輯左移指令 ASL LSL ASLA LSLA ASLB LSLB ASLD LSLD M A B D 算術(shù)右移指令 ASR ASRA ASRB M A B 邏輯右移指令 LSR LSRA LSRB LSRD M A B D C b7 b0 C b7 b0 C b7 b0 0 C b15 b0 0 A B C b7 b0 0 0 C b7 b0 C b15 b0 A B Slide78 問題 清除 求反和求補指令 減法和加法指令 C A B 用來將一個累加器和一個存儲單元作比較 D D 求最大和最小指令 將一個寄存器或累加器的內(nèi)容復制到另外一個寄存器或者累加器中 C 完成對一個累加器或存儲單元中的數(shù)進行特定的二進制操作 A 傳送指令 是優(yōu)化的8位和16位的加法和減法操作 E 移位和循環(huán)指令 E B 將移出的位存放到C標志位中 這樣可以允許軟件測試每個移出的位 Slide79 數(shù)據(jù)測試指令 R M 1 R M C 功能 指令 測試 位測試 BITA BITB A M B M 比較 CBA CMPA CMPB CPD CPX CPY 測試 為0或者負數(shù) TST TSTA TSTB A B A M B M M 0 A 0 B 0 L H 比較堆棧CPSSP M M 1 Slide80 條件轉(zhuǎn)移指令 MNEMONIC 條件 CCR測試 INDICATION L BMI MINUS N 1 r NEGATIVE L BPL PLUS N 0 r POSITIVE L BVS OVERFLOW V 1 r SIGNERROR L BVC NOOVERFLOW V 0 r SIGNOK L BLT LESS NV 1 L BGE GREATEROREQUAL NV 0 A M A M L BLE LESSOREQUAL Z NV 1 A M L BGT GREATER Z NV 0 A M L BEQ EQUAL Z 1 A M L BNE NOTEQUAL Z 0 AM L BHI HIGHER C Z 0 A M L BLS LOWERORSAME C Z 1 A M L BCC BHS CARRYCLEAR C 0 A M L BCS BLO CARRYSET C 1 A M Indication referstothe useofa CMPAM instruction immediately beforethe branch Useforsignedarithmeticonly Slide81 例題B 例如 Next CMPA X 將A中的內(nèi)容和X所指的寄存器中的內(nèi)容進行比較BNENext 如果不相等 跳到next處循環(huán)執(zhí)行上面的例子是將A中的內(nèi)容和X所指的寄存器中的內(nèi)容進行比較 程序一直循環(huán)下去 直到存儲單元中的數(shù)據(jù)和A中的數(shù)據(jù)相等 注意 X寄存器的值隨著每次循環(huán)逐步加1 Slide82 DECREMENT BRANCHDBEQCOUNTER 01COUNTERIFCOUNTER 0 THEN PC 0003 RELPC DBNECOUNTER 01 COUNTERIFCOUNTER0 THEN PC 0003 RELPC INCREMENT BRANCHIBEQCOUNTER 01COUNTERIFCOUNTER 0 THEN PC 0003 RELPC IBNECOUNTER 01COUNTERIFCOUNTER0 THEN PC 0003 RELPCTBEQIFCOUNTER 0 THENPC 0003 RELPCTBNEIFCOUNTER0 THENPC 0003 RELPC FUNCTION MNEMONIC OPERATION TEST BRANCH 條件轉(zhuǎn)移指令 Slide83 例題C 例如 LOOPMOVW2 Y 2 X DBNED LOOP 上面的例子是將Y寄存器所指的兩個連續(xù)的存儲單元中的數(shù)據(jù)移到X寄存器所指的兩個連續(xù)的存儲單元中 之后X和Y寄存器中的數(shù)據(jù)加2而指向下一個字 Slide84 位設(shè)置 清除轉(zhuǎn)移 允許的尋址方式有 DIR EXT IDX IDX1 IDX2 BRSET BRCLR M MASKSERVICE 掩碼值用來標識內(nèi)存操作數(shù)的測試位 例如 如果掩碼為 80 就是測試內(nèi)存操作數(shù)的第7位 如果掩碼為 61 就是測試內(nèi)存操作數(shù)的第6位和第1位 Slide85 例題D 例如 WAITBRCLRPORTD X 80WAIT上面的例子一直測試D寄存器的第7位 直到該位被置位 這個指令對于測試一個管腳甚至是一個輸入 輸出設(shè)備標志位的狀態(tài)是很有用的 Slide86 問題 下面關(guān)于條件跳轉(zhuǎn)指令的描述哪個正確 選擇所有提供的選擇 當條件滿足時 分支指令將改變程序的執(zhí)行順序 所有的指令都不止一種類型 分支指令可以根據(jù)條件的類型進行分類 當執(zhí)行分支時該條件必須要滿足 一些指令都不止一種類型 Slide87 加法和十進制調(diào)整指令 A M A B M B D M 1 D D M CD 功能 指令 操作 加法 ADDA ADDB ADDD L H L H ADD ACCUMULATORS ABA ABX ABY A BA X BX Y BY 帶進位的加法 ADCA ADCB A M CA B M CB 十進制調(diào)整 DAA CONVERTSBINARYADDITIONOF BCDCHARSINTOBCDFORMAT Slide88 減法和乘法指令 A M B M B D M 1 D D M CD 功能 指令 操作 減法 SUBA SUBB SUBD L H L H SUBTRACT ACCUMULATORS SBA A BA 帶進位的減法 SBCA SBCB A M CA B M CB A 兩字節(jié)相乘EMULD YY D 帶符號的兩字節(jié)相乘EMULSD YY D 乘法MULA BD Slide89 除法指令 有符號或者無符號的32位除以16位 EDIV EDIVS 操作 Y D X Y 余數(shù) DV 1 如果對于無符號的結(jié)果 FFFFF 或者如果除數(shù)是0而結(jié)果不確定V 1 如果對于有符號的結(jié)果 7FFF 或者如果除數(shù)是0而結(jié)果不確定C 1 如果除數(shù)是0 無符號或者有符號的16位除以16位 IDIV IDIVS 操作D寄存器 X寄存器結(jié)果商在X中 余數(shù)在Y中整除IDIV IDIVSRADIXPOINTOFTHERESULTISTOTHERIGHTOFTHELSB Slide90 帶小數(shù)的除法 FDIV 結(jié)果的小數(shù)點在MSB的左邊如果分子大于或者等于分母 那么V標志位被置為1 帶小數(shù)的除法指令 例如 1的結(jié)果是1 10000 也就是 0001 C000的結(jié)果是 C000 10000 也就是 75 FFFF的結(jié)果是 FFFF 10000 也就是 9999 Slide91 擴展乘加指令 OPERATION M M M M M M 3 M M 3 X X 1 Y Y 1 X Y EXAMPLE EMACS 2500 32 BITRESULT 150 150 EMACS Slide92 邏輯指令 A M A B M B 功能 指令 操作 與 ANDA ANDBANDCCCCRMASKCCR 異或 EORA EORB A M A B M B 或 ORAA ORAB ORCCCCR MASKCCR Slide93 問題 下面那種類型的指令允許乘加操作 該操作通過相乘兩個16位的操作數(shù)產(chǎn)生32位的中間結(jié)果 a 加法和十進制調(diào)整指令b 減法和乘法指令c 除法指令d 邏輯指令e 擴展的乘加指令f 帶小數(shù)的除法指令 Slide94 跳轉(zhuǎn)和子程序指令 Slide95 CCR指令 功能 指令 操作 CLEARCARRY CLEARINTERRUPTMASK CLEAROVERFLOW SETCARRY SETINTERRUPTMASK SETOVERFLOW ACCUMULATORACCR CCRACCUMULATORA CLC CLI CLV SEC SEI SEV TAP TPA 0C 0I 0V 1C 1I 1V ACCR CCRA ORCONDITIONCODEORCCCCR OPERANDANDCONDITIONCODEANDCCCCR OPERAND Slide96 BlockMove子程序 塊移動例程 該例程把地址為 1000的數(shù)據(jù)塊復制到地址 1100處 當遇到數(shù)據(jù)為0時 子程序終止 程序框架ORG 1000SOURCEFCC DATATOMOVE FCB0ORG 4000LOOPBEQDONEBRALOOPDONEBRADONE 建議的編程步驟地址 1000的源數(shù)據(jù) FORMTABLEOFDATATOBEMOVEDFORMCONSTANTBYTEOF 0 程序從 4000處開始 1 初始化源指針為 1000 2 初始化目的指針為 1100 3 從源地址獲取數(shù)據(jù) 4 寫數(shù)據(jù)到目的地址處 5 如果被移動的數(shù)據(jù) 0 跳到第9步 否則跳到第6步 6 源指針遞增 7 目的指針遞增 8 跳到第3步 9 停止在這邊 Slide97 清RAM區(qū)程序 寫一個清除HCS12RAM區(qū)的程序 假設(shè)RAM的起始地址是 1000 結(jié)束地址是 3FFF CLRRAM RTN 初始化X寄存器為 1000LOOP 清除X寄存器指向的存儲單元 X加1 將X的內(nèi)容和 4000進行比較 如果相等跳到LOOPDoneBRADone 程序結(jié)束 Slide98 問題 RTS RTC C A B 這些指令將導致程序順序的立即改變 C 這個指令

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論