




已阅读5页,还剩353页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FreescaleHCS12微控制器 Slide1 8 16 32 位内核定位 性能 HawkMCU56F8300 功能 发动机管理信息娱乐 底盘 电机控制 中 高级车身控制安全 仪表 音响 HVAC 空调 ISU CAN LIN主节点 低端CANLIN从节点 Slide2 25Mhz总线速度 8位或16位数据总线 管脚功能复用 引脚数量少 增强型指令集 快速算术 模糊逻辑 EMACS TBL Move 预加减 后加减 增强寻址模式 inc 64Kindexingrange 和高效率的存储区分页结构 增强型调试功能 为高级语言进行了优化 FlashEEPROM存储区 在掩膜ROM产品中 可以给代码加补丁修复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产品路线图 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系列 外设简化 管脚与D系列兼容64 256K 16 25MHz112pin 80pin PinCompat TheserepresentFreescaleSemiconductor scurrentproposedproductdevelopmentplans andaresubjecttochange 9S12HZ128 64 32PSD LCDStepper MC9S12HZ256PSD LCDStepper MC3S12H128ROM Slide4 MC9S12汽车系列路线图 Functionality ApplicationSpecific D系列之衍生具有编码纠错功能的FLASH可靠性更高 内嵌步进马达驱动LCD驱动专门针对于汽车仪表 低成本S12完全可裁减系列 D系列的简化版与D系列引脚完全兼容 高性能的16位MCUFLASH最大达512kCAN模块最多5个 下一代采用XGateDMA模块高速 高性能 Slide5 MC9S12系列 D B系列引脚完全兼容为系统设计提供更多选择 16K 512KFlash选择 简化或完全的外设选择 封装形式 引脚数选择 Slide6 HCS912DFamily D 系列背景 S12的第一个产品系列S12中功能最强的系列在汽车市场上获得了巨大成功外设非常丰富今天的衍生系列给用户更多选择News 扩展到 512K 32K ROMversions 现在有13个版本可供用户选择 Slide7 S12RFamilyUpdate ROMs正在设计中 2005年中批量生产对大批量 代码稳定的应用追求更低成本ROM版没有EEPROM Slide8 车身中央控制 网关 MC33989 5V Slide9 HCS912BFamily 特点外设丰富一个增强型msCAN12模块应用高性能但是外设和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 特性 优点内嵌FLASH和CAN的低成本器件S12系列的低端产品16 位的性能8 位的价格引脚 封装48 52LQFP80QFP 与B D系列引脚兼容Flash从16K 128K 易于产品升级8通道10位AD7 sec 10 bit单次转换时间 具有扫描模式 Slide11 S12C 系列更新 市场表现出色 给人崭新印象的入门级C 系列 16位的性能8位的价格 弥补S12在 3 00以下的缺憾低成本 高速watchdog应用3 5V工作电压封装从小型的48QFP 7x7mm 到标准的80QFP 与S12D B兼容 9S12C32已经批量生产9S12C64 96 128已经通过质量测试 ROM系列 所有CAN版本 将使S12入门级更低ROMProductiontargetedfor3Q05 allversions ExactscheduleTBD 最新消息 低成本不带CAN 的16Kflash版本 samplesnow Slide12 MC9S12C32 Goldfish ApplicationExample HVACSystem Slide13 S12Q QFamilyMCU s 特点 优点 低成本基于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系列区别 所有的外设寄存器以及中断向量的地址相同TIMER 通道ThetimerfeaturesontheQ Familyonlysixchannels2through7 whilethetimerontheC Familyholdsalleightchannels0to7 IfanapplicationisdevelopedontheC FamilyandshouldbetransferredtotheQ Family allregisterbitsassociatedwithchannels0and1shouldnotbeused PWM模块ontheQ Familyfeatures4channelsversus6ontheC Family Thechannels0through3shouldbeusedincaseanapplicationismovedoverfromtheC FamilytotheQ Family地址分配请参照相应的数据手册 Slide15 MC9S12H 系列 批量 9S12H256 128in144 112QFP样品4Q2004 9S12HZ128 SSDcapability extraIIC LCD 样品3Q2005 LowcostROMversionsdownto64Kandlowest costnon CANversion ROMProductistargetedforsamples3Q05 allversions andmid06production ExactscheduleTBD IfROMdevicenotavailablefor3Q05samples wewillshipprogrammedOTPFlashinlieuwithROMprice ROMTs CsHigherperformance largermemoryS12Xvariantscurrentlyindiscussion 内嵌步进马达驱动和LCD驱动 适用于汽车仪表现在已经大量应用于汽车组合式仪表H系列将会大大扩展 新产品 新功能 Slide16 车速 CAN物理层接口 PWM仪表驱动器 灯驱动 扬声器 CAN 5VVcc 音频放大 定时器PWM 输入信号控制 发动机转速 发动机温度 蓄电池电压 机油液面 机油压力 燃油液面 I O LCD驱动器 MC9S12Hx16位MCU 集成LCD驱动32x4或28x4 144或112QFP封装 集成驱动6个步进电机24路大电流PWM输出 非常容易的PCB布线较少有元器件数目高可靠性 汽车仪表解决方案 Slide17 PWM01 PWM03 PWM04 PWM05 PS0 9S12H256 MC9S12Hx仪表板系统 M1C0M M1C0P M1C1M M1C1P 转速表 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 每个字自动产生6个奇偶位对用户透明每个字能检测出两位的错误每个子可检测1位的错误并改正 与9S12Dx兼容适用于 安全性高的领域汽车 航天 军事 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 指令管道 增强的变址寻址方式 系统集成模块 SIM 多路外部总线接口 MEBI 模块映射控制 MMC 中断控制 INT 断点调试 BKP 背景调试模式 BDM 时钟和复位产生模块 CRG 低电流振荡器 锁相环 PLL 复位 时钟 看门狗 COP 实时中断 时钟监控 存储器 splitgateFlash 分页 splitgateEEPROM 每次写一个字 每次擦2个字 零等待状态RAM 外围设备 增强的串行通信接口 SCI 同步串行接口 SPI 每秒1M位的传输速率 支持CAN2 0A B标准的msCAN模块 有分页消息缓冲 USB2 0 字节数据链路控制器 BDLC I2C总线 IIC 10位模拟 数字转换器 ADC 标准的8通道定时器 增强的捕捉定时器 ECT 脉冲宽度调制模块 PWM 步进电机控制器 LCD控制器 片内调压器 使用内部调压器产生2 25V 2 75V的数字电压 4 75V 5 25V模拟电压以及I O工作电压 技术 0 25微米CMOS 50MHzCPU相当于25MHz总线操作 设计为66 33MHz 主要特性 Slide22 HCS12CPU内部结构 68HC11 68HC12 HCS12CPU内部结构 进位 借位标志 从最高位 溢出标志零标志负标志 最高位 1 8位累加器A和B 变址寄存器X 变址寄存器Y 堆栈指针SP 程序计数器PC 条件码寄存器 或16位双字节累加器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指令禁用标志 源代码兼容进栈方式相同调用 CALL 指令和返回调用 RTC 指令使用PPAGE 分页只用于HC S 12 5 0 PPAGE 7 Slide23 HCS12串行接口特性 模块化结构方便升级引脚可以配置为通用I O调试时查询模式工作 SCI0 RxD0TxD0 RxDTxDRxDTxDMISOMOSISCKSSMISOMOSISCKSSMISOMOSISCKSS DDRS PORTS SPI1 MISOMOSISCKSS SPI0 MISOMOSISCKSS SPI2 MISOMOSISCKSS SCI1 RxD0TxD0 Slide24 引脚逻辑 延时计数器 比较器 CAP COM 寄存器 脉冲累加器 16位自运行主定时器 保持寄存器 保持寄存器 预分频器 总线时钟 CH0 16位模数递减计数器 预分频器 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 标准端口特点 标准端口特性 对每个引脚用户可自己定义 电气 特性 简化驱动 线或 方式 上拉 下拉 上拉 下拉时要特别注意 若msCAN总线使能 则上拉允许 下拉关闭 高灵活性 端口寄存器可在内存映射中重定位 Slide27 IIC特性 与I2C总线标准兼容 多主机操作 可进行软件编程实现256种不同的串行时钟频率 包含一个软件可选确认位 包含逐字节数据传送中断驱动 自动模式下 从主切换到从方式模式将产生一个仲裁丢失中断 包含一个调用地址识别中断 提供启动和停止信号的产生 检测 提供重复启动信号的产生 提供确认位的产生 检测 总线忙检测支持低功耗模式与msCAN4共享 Slide28 B E A C C B A D 包含16位定时器 7位预分频因子和8个IC OC通道的部件 支持13位跳变的异步通信端口 无线应用领域中广泛使用的接口 同步高速通信端口 E D 外设和大多数端口的I O之间的标准接口 问题 SCI SPI MC9S12ECT PIM IIC Slide29 msCAN总线 Slide30 msCAN总线特性 多达5个msCAN模块包含3个自动映射的发送消息缓冲区包含5个后台接收缓冲区可编程I O模式具有可屏蔽的中断具有可编程回环自测操作与传输介质无关 假设使用外部收发器 包含开放的网络体系结构多主模式高抗干扰性高优先级消息具有短响应时间包含低功耗休眠模式 当总线激活时 可通过编程来唤醒 Slide31 BDLC J1850 与SAEJ1850兼容包含一个10 4Kbps的可变脉带调制 VPW 位格式包含数字噪音滤波器提供冲突检测允许硬件CRC产生 检测支持接收和发送阻塞模式支持4X接收模式 41 6Kbps 包含数字回环模式支持帧内响应类型0 1 2和3网络激活时 自动唤醒停止和等待省电模式产生基于矢量查询表的中断 Slide32 模拟 数字转换器 Slide33 ADC特性 8 10位分辨率 7微秒的10位精度单独转换 包含采样缓冲放大器 提供了可编程的采样时间 包含左 右对齐和有符号 无符号结果数据 外触发器控制 转换完成产生中断 为8模拟输入通道提供模拟输入多路复用器 模拟 数字输入引脚复用 1到8的转换序列长度 连续转换方式 包含多通道扫描 Slide34 PWM特性 Slide35 晶体振荡器 OSC Colpitts与Pierce时钟监视器 CM 与HC12D系列相同时钟质量监视 CQC 确保工作时钟有效锁相环 PLL 与HC12D系列相同系统时钟产生器 CGEN 简化了时钟链 内核时钟 PLLCLKorOSCCLK外设时钟 PLLCLK 2orOSCCLK 2 25 duty ECLK PLLCLK 2orOSCCLK 2 50 duty 没有慢模式时钟系统复位发生器 RGEN 与HC12D系列相同 复位由上电复位 COP 看门狗 复位 外部复位 时钟和时钟监控产生 实时中断 RTI 与分频器链略有差别看门狗 COP 与分频器链略有差别上电复位 POR 使晶振工作稳定 CRG OSC PLL CM RTI COP CGEN POR RGEN Registers Control EXTAL XTAL VDDPLL XFC VSSPLL RESET 内部总线接口 MC9S12时钟和复位发生器 CQC 鼠标放在亮橙色方块上可获得更多有关CRG部件的有关知识 Slide36 RUN模式 全部运行 WAIT模式 CPU休眠 STOP模式 所有模块停止工作 伪STOP模式 所有模块停止工作 MC9S12低功耗方式 Slide37 HCS12复位 上电复位 POR 特殊的延时复位高于2 07V电压时释放低于0 97V电压时激活50个自恢复时钟周期宽的时钟质量监视窗口最后复位原因可检测 Slide38 时钟监控功能检测晶振失败的情况 并可执行用户特定的操作 差时钟检测时钟质量检测对晶振进行窗口检查 确保MCU的工作时钟稳定 优时钟检测自恢复时钟模式 SCM 晶振临时出故障能完成有限的操作晶振失败时能进行受控关闭晶振慢启动允许健壮系统的设计 即使在晶振失败时 MCU也能继续运行和受控关机 或进行诊断操作 1 5 5MHz的频率灵活的看门狗 COP 用作 窗口 COP 只在一个周期的75 100 更新 进一步降低代码跑飞的可能性和PLL无关 时钟来源于晶振 即使PLL失败仍能安全工作 MC9S12系统完整性 Slide39 廉价的串行实时仿真和调试单步 运行或停止应用程序集成硬件实现多断点调试取代了昂贵的仿真器或者总线分析器全工作电压和全频率非破坏性 没有麻烦的仿真器电缆 FLASH EE的在线编程 MC9S12的BDM 背景调试模式 背景调试模式 Slide40 高灵活性 5VFLASH工作电压 无需外部电荷泵 符合市场潮流的FLASH操作大小 512BFlash擦除 2B编程 实现了虚拟EEPROM以便扩展EE4个独立可编程FLASH段 DP256 能够在读其他块的同时擦除某一块 高速编程 快速的Flash页擦除操作 20ms或512字节 50us内可完成16位编程128K大小的代码 总编程时间少于5秒高效的行结束编程可能 MC9S120 25u闪存 Slide41 HCS12电源供给 Vddr电源变压器 端口A B E和H接5V电压 并通过一个100nF的电容进行滤波 Vdd1 22 5V变压器输出 内核供给电压 通过一个47 220nF的电容进行滤波 电容的大小取决于EMC结果 Vddpll2 5V变压器输出 Osc和PLL的供给电压 通过一个22 100nF的电容进行滤波 VddaA D的供给电压 接5V并通过一个22 100nF的电容进行滤波 VrhA D的参考电压 接5V并通过一个10nF的电容进行滤波 Vddx用作Vddr作供给电压之外的其他所有端口的供给电压 接5V并通过一个47 220nF的电容进行滤波 如果大负载被切换 电容需要再大10nF Slide42 级别 注 HCS12的每个引脚上有稳定状态的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提供高效的内存访问机制提供存储器 满足多种应用程序扩展了HC11的指令新增了几种寻址方式访问附加的外部存储器 Slide47 另外的特点 HCS12的编程模型与M68HC11 M68HC12的一致无新的寄存器中断进栈顺序无变化混合的和非混和的外部界面HCS12能够重用现有的软件源代码注 新的时钟频率 字节数和指令周期时间导致定时循环改变 新增指令提高了HCS12的性能HCS12缩短了中断响应时间HCS12提高了数学计算速度HCS12提高了性能指令队列数据提高其性能在保持确定性的同时 指令的执行变得更快 Slide48 HCS12 将新增的指令设计在编译器内部 新增的指令和寻址方式支持高级语言MC68HC12和HCS12指令集一致 偏移量堆栈变址寻址方式和偏移量程序计数器变址寻址方式11个数学指令模糊逻辑指令长转移指令 16位偏移量 传送指令 存储器和存储器之间 求最小值 最大值函数整个内存映射的位操作交换 转移指令表查询和插入函数循环语句结构 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位双字节累加器 变址寄存器X 变址寄存器Y 堆栈指针 程序计数器 条件码寄存器 15 0 SP Slide50 条件码寄存器 S 为1 禁止STOP指令 硬件复位置1 通过软件清除 请求使其置1 屏蔽位 算术运算位 反映指令执行的结果 C 向最高位字节进位 借位 无符号运算 V 二进制补码溢出 有符号运算 Z 结果为零 N 负标志位 其后是结果的最高位 S X H I N Z V C H 只在进行加运算时 第3位向第4位进位 Slide51 问题 下面哪些句子描述了HCS12的特点 选择所有正确的答案 它提供了有效的存储器访问机制 它和MC68HC12的特点一致并基于MC68HC11CPU 它扩展了HC11指令 它可以重用现有的软件源代码 它缩短了中断响应时间 Slide52 问题 N Z H H C C N Z 只用于BCD的算术运算 反映结果最高位的状态 结果的所有位均为零 加法产生进位或减法产生借位 V V 由于某个操作导致二进制补码溢出 Slide53 HCS12寻址方式 内在寻址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的优点 在所有的变址操作中 堆栈指针寄存器可以用作变址寄存器程序计数器可以用作变址寄存器 自增长方式和自减少方式除外A B或D累加器可以用于累加器偏移量自增加或自减少的幅度从 8到 8可选择5位 9位或是16位的有符号常数偏移量使用两种新的间接变址寻址方式 带16位偏移量的间接变址寻址方式累加器D作偏移量的间接变址寻址方式 CPU12变址寻址方案的主要优点 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累加器内容加上基址寄存器的内容形成间接地址的值 偏移量值 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 只适用于转移指令 转移指令在长度上为2字节或4字节 所有的转移指令都是从下一条指令地址取出 转移的目的地址通过有符号的偏移量加上OCL 2或者 4的内容 OFFSET BccOPCODE LOOP Slide63 提问 选择某种变址寻址方式完成下面表达式 选择正确的答案并点击 完成 变址寻址方式提供了4种自动改变基变址寄存器值的方法 且为指令执行的一部分 a 变址预加 预减 补加 补减寻址方式b D间接变址寻址方式 D IDX c 5位有符号偏移量变址寻址方式d 16位有符号偏移量变址寻址方式 Slide64 HCS12指令集 M68HC11指令集的超集CPU12实现 原来的M68HC12 和新的HCS12所有的内存和输入 输出都映射到一个共同的64K字节的地址空间8位和16位算术指令全集 Slide65 指令集 数据处理算术逻辑数据测试分支跳转和子程序调用 参考CPU12用户手册中的信息 查看CPU12RM AD文档或登录网站 Slide66 存取指令 Slide67 数据移动指令 将一个存储单元中的数据移到另一个存储单元中 源存储单元中的数据不变 例如 MOVW2 X 2 YMOVB1 Y 1 X MOVB2 X 2 Y MOVW2 X 2 SPMOVW2 X 2 Y Slide68 数据移动 数据处理指令 Slide69 B7B0 堆栈操作 内存 堆栈头 例如 PSHX之前 内存 XHXL 地址逐渐增大 地址逐渐增大 SP 3FFE SP 4000 SP 3FFF SP 4000 B7B0 例如 PSHX之后 堆栈头 B7B0 内存 DHDL 地址逐渐增大 3FFE 4000 3FFF 例如 PULD之前 堆栈头 堆栈头 例如 PULD之后 地址逐渐增大 SP 4000 B7B0 SP SP SP 内存 Slide70 问题 PSHA是使用的什么类型的寻址方式 请选择正确的答案 扩展寻址方式内在寻址方式变址寻址方式 Slide71 问题 什么时候Pull指令使用的比较多 请选择正确的答案 a 在一个子程序的结尾处 恢复在子程序刚进入时被进栈保护的CPU寄存器的内容时一般使用Pull指令 b 在一个子程序的开始处 要保存一个或多个CPU寄存器内容时一般使用Pull指令 c 在一个子程序的开始处 要移动一个或多个CPU寄存器内容时一般使用Pull指令 d 在一个子程序的开始处 恢复在进入子程序前被保护的一个或多个CPU寄存器的内容时一般使用Pull指令 Slide72 数据传送和交换 功能 指令 操作 传送数据寄存器间数据传送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 交换数据 BA AB RSP SPR DXDY 例1 TFRX A例2 EXGY B 数据处理指令 Slide73 改变数据 功能 指令 操作 减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 数据处理指令 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 数据处理指令 Slide75 求最大最小指令 Slide76 例题A 例如 LOOPMINA1 X BHSLOOP这个例子将A寄存器中的数据和X寄存器所指向的存储单元中的数据进行比较 Slide77 移位和循环 功能 指令 操作 循环左移指令 ROL ROLA ROLB M A B 循环右移指令 ROR RORA RORB M A B 算术 逻辑左移指令 ASL LSL ASLA LSLA ASLB LSLB ASLD LSLD M A B D 算术右移指令 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 求最大和最小指令 将一个寄存器或累加器的内容复制到另外一个寄存器或者累加器中 C 完成对一个累加器或存储单元中的数进行特定的二进制操作 A 传送指令 是优化的8位和16位的加法和减法操作 E 移位和循环指令 E B 将移出的位存放到C标志位中 这样可以允许软件测试每个移出的位 Slide79 数据测试指令 R M 1 R M C 功能 指令 测试 位测试 BITA BITB A M B M 比较 CBA CMPA CMPB CPD CPX CPY 测试 为0或者负数 TST TSTA TSTB A B A M B M M 0 A 0 B 0 L H 比较堆栈CPSSP M M 1 Slide80 条件转移指令 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中的内容和X所指的寄存器中的内容进行比较BNENext 如果不相等 跳到next处循环执行上面的例子是将A中的内容和X所指的寄存器中的内容进行比较 程序一直循环下去 直到存储单元中的数据和A中的数据相等 注意 X寄存器的值随着每次循环逐步加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 条件转移指令 Slide83 例题C 例如 LOOPMOVW2 Y 2 X DBNED LOOP 上面的例子是将Y寄存器所指的两个连续的存储单元中的数据移到X寄存器所指的两个连续的存储单元中 之后X和Y寄存器中的数据加2而指向下一个字 Slide84 位设置 清除转移 允许的寻址方式有 DIR EXT IDX IDX1 IDX2 BRSET BRCLR M MASKSERVICE 掩码值用来标识内存操作数的测试位 例如 如果掩码为 80 就是测试内存操作数的第7位 如果掩码为 61 就是测试内存操作数的第6位和第1位 Slide85 例题D 例如 WAITBRCLRPORTD X 80WAIT上面的例子一直测试D寄存器的第7位 直到该位被置位 这个指令对于测试一个管脚甚至是一个输入 输出设备标志位的状态是很有用的 Slide86 问题 下面关于条件跳转指令的描述哪个正确 选择所有提供的选择 当条件满足时 分支指令将改变程序的执行顺序 所有的指令都不止一种类型 分支指令可以根据条件的类型进行分类 当执行分支时该条件必须要满足 一些指令都不止一种类型 Slide87 加法和十进制调整指令 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 十进制调整 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 两字节相乘EMULD YY D 带符号的两字节相乘EMULSD YY D 乘法MULA BD Slide89 除法指令 有符号或者无符号的32位除以16位 EDIV EDIVS 操作 Y D X Y 余数 DV 1 如果对于无符号的结果 FFFFF 或者如果除数是0而结果不确定V 1 如果对于有符号的结果 7FFF 或者如果除数是0而结果不确定C 1 如果除数是0 无符号或者有符号的16位除以16位 IDIV IDIVS 操作D寄存器 X寄存器结果商在X中 余数在Y中整除IDIV IDIVSRADIXPOINTOFTHERESULTISTOTHERIGHTOFTHELSB Slide90 带小数的除法 FDIV 结果的小数点在MSB的左边如果分子大于或者等于分母 那么V标志位被置为1 带小数的除法指令 例如 1的结果是1 10000 也就是 0001 C000的结果是 C000 10000 也就是 75 FFFF的结果是 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位的操作数产生32位的中间结果 a 加法和十进制调整指令b 减法和乘法指令c 除法指令d 逻辑指令e 扩展的乘加指令f 带小数的除法指令 Slide94 跳转和子程序指令 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的数据块复制到地址 1100处 当遇到数据为0时 子程序终止 程序框架ORG 1000SOURCEFCC DATATOMOVE FCB0ORG 4000LOOPBEQDONEBRALOOPDONEBRADONE 建议的编程步骤地址 1000的源数据 FORMTABLEOFDATATOBEMOVEDFORMCONSTANTBYTEOF 0 程序从 4000处开始 1 初始化源指针为 1000 2 初始化目的指针为 1100 3 从源地址获取数据 4 写数据到目的地址处 5 如果被移动的数据 0 跳到第9步 否则跳到第6步 6 源指针递增 7 目的指针递增 8 跳到第3步 9 停止在这边 Slide97 清RAM区程序 写一个清除HCS12RAM区的程序 假设RAM的起始地址是 1000 结束地址是 3FFF CLRRAM RTN 初始化X寄存器为 1000LOOP 清除X寄存器指向的存储单元 X加1 将X的内容和 4000进行比较 如果相等跳到LOOPDoneBRADone 程序结束 Slide98 问题 RTS RTC C A B 这些指令将导致程序顺序的立即改变 C 这个指令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年公路水运工程试验检测人员应试题及答案
- 安国市2025-2026学年七年级下学期语文月考测试试卷
- 阿拉善盟2025-2026学年七年级下学期语文期中测试试卷
- 安徽省阜阳市界首市2024-2025学年高一下学期第二次月考生物试卷及答案
- 2025 年小升初厦门市初一新生分班考试数学试卷(带答案解析)-(人教版)
- 2024-2025学年云南省楚雄州统编版四年级下册期末考试语文试卷
- 国际销售合同范本
- 私人房屋验收合同范本
- 书稿自费出版合同范本
- 承包水库农庄合同范本
- 中建制冷机组设备吊装工程专项施工方案冷水机组运输及吊装方案
- 读书分享读书交流会《人生海海》
- 人工智能在检验医学中的应用
- 基于保护创始人股东有限公司章程范本
- 郑州外国语中学初一新生分班(摸底)数学模拟考试(含答案)
- 人教版数学四年级上册教材课后习题参考答案(全)
- 人力资源员工旅游活动方案
- 外贸报价单英文模板excel报价单表格模板
- 夜间专项施工专项方案
- 糖尿病足病历讨论
- GB/T 20028-2005硫化橡胶或热塑性橡胶应用阿累尼乌斯图推算寿命和最高使用温度
评论
0/150
提交评论