MC9S12单片机原理及嵌入式应用开发技术第2章课件

上传人:des****85 文档编号:302891498 上传时间:2022-06-02 格式:PPT 页数:55 大小:1.07MB
返回 下载 相关 举报
MC9S12单片机原理及嵌入式应用开发技术第2章课件_第1页
第1页 / 共55页
MC9S12单片机原理及嵌入式应用开发技术第2章课件_第2页
第2页 / 共55页
MC9S12单片机原理及嵌入式应用开发技术第2章课件_第3页
第3页 / 共55页
MC9S12单片机原理及嵌入式应用开发技术第2章课件_第4页
第4页 / 共55页
MC9S12单片机原理及嵌入式应用开发技术第2章课件_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《MC9S12单片机原理及嵌入式应用开发技术第2章课件》由会员分享,可在线阅读,更多相关《MC9S12单片机原理及嵌入式应用开发技术第2章课件(55页珍藏版)》请在金锄头文库上搜索。

1、单片机原理与应用单片机原理与应用 College of Communication Engineering, Jilin University第第2章章 S12XS单片机内部结构单片机内部结构 2College of Communication Engineering, Jilin University2.1 S12XS单片机性能单片机性能2.2 CPU的构成的构成2.3 存储器存储器2.4 并行并行I/O 第2章 S12XS单片机内部结构单片机原理与应用单片机原理与应用 College of Communication Engineering, Jilin University2.1 S12

2、XS单片机性能单片机性能4College of Communication Engineering, Jilin University2.1.1 S12XS系列单片机内部模块Internal BusSCI1PWM 8CHANECT 12K SRAMHCS12 CPUBKP INT MMI CM BDM MEBI 4K BYTESEEPROM SIM msCAN3msCAN2msCAN1SCI0SPI 2orPWMCH4-7msCAN0or BDLCmsCAN4or IICSPI 1or PWMCH 0-3SPI 0PLL PIT 256K FLASEEPROMCRGVREGPIMAD0AD12

3、.1 S12XS单片机性能单片机性能5College of Communication Engineering, Jilin University1.16位位CPU2.内部内部RAM或或ROM:3.A/D模块:模块:16路路8位、位、10位或位或12位;位;4.CAN模块:支持CAN2.0A、B两种协议,1Mbps;5.TIM模块:标准定时器,输入捕捉、输出比较6.PIT模块模块:4通道通道24位递减计数器位递减计数器7.PWM模块:模块:8通道通道8位,或位,或4通道通道16位,占空比可编程;位,占空比可编程;8.串口模块:两个串口模块:两个SCI,支持,支持LIN协议;一个协议;一个SPI

4、;9.中断模块:最多中断模块:最多20个带位中断的外部中断引脚,中断源个带位中断的外部中断引脚,中断源 细分细分为为7级级;10.时钟模块:可通过内部锁相环使片内总线速度提升到最高时钟模块:可通过内部锁相环使片内总线速度提升到最高40MHz。2.1.2 S12XS系列单片机主要功能模块2.1 MC9S12XS单片机的性能单片机的性能2.1 MC9S12XS单片机的性能单片机的性能2.1.3 S12XS系列单片机引脚功能时钟,复位时钟,复位电源电源调试调试系列引脚1P17 图2-2 112LQFP封装封装单片机原理与应用单片机原理与应用 College of Communication Engi

5、neering, Jilin University2.2 CPU的构成的构成9College of Communication Engineering, Jilin University2.2 CPU的构成的构成2.2.1 算术逻辑运算单元算术逻辑运算单元2.2.2 控制单元控制单元2.2.3 核心寄存器组核心寄存器组 10College of Communication Engineering, Jilin University单片机(微控制器)基本组成nMCU StructureThe CPURegisters file (寄存器组)Instruction latch/decode/bra

6、nch (指令)Stack(栈)Interrupt(中断)Clock/Reset(时钟/复位)Memoryperipheral11College of Communication Engineering, Jilin University单片机(微控制器)基本组成nMCU StructureThe CPURegisters file (寄存器组)Instruction latch/decode/branch (指令)Stack(栈)Interrupt(中断)Clock/Reset(时钟/复位) Memoryperipheral12College of Communication Enginee

7、ring, Jilin UniversityA complete CPU13College of Communication Engineering, Jilin UniversityCPU the core of microcontrollernThe CPU contains:Arithmetic Logic Unit(算术逻辑单元)Register file (寄存器组)Control Unit (控制单元)Float point process UnitCache managementMemory Management Unit 14College of Communication E

8、ngineering, Jilin University2.2.1 CPU的构成 算术逻辑单元ALUALU - Arithmetic Logic UnitPerforms arithmetic functions such as add, subtract, multiply, divide logic functions such as AND,OR,NOT,XOR bit functions such shift, rotation4个要素Two input data - operands(操作数)instruction - operation(运算)Status - flag(标志位)o

9、ne output data - result(运算结果)Quiz: 下面几个操作中,4要素分别为?A + B = CA B ?A = 115College of Communication Engineering, Jilin UniversityFlag(标志位)在哪里?执行单元产生的标志通常放在一个专用寄存器中Condition Code Register - CCRZ: zeroN: negativeO: overflowC: carry每执行一条指令,相应的状态位都会进行更新。每条指令影响到的状态位都是不一样的,需要查看芯片手册。CCR(Condition Code Register

10、,条件码寄存器),条件码寄存器)16College of Communication Engineering, Jilin University操作数(operands)在哪里?1: Registers寄存器用于临时保存/获取操作数任何CPU都包含若干通用/专用寄存器寄存器的数目和宽度是衡量CPU的重要指标 the more and bigger the register The better the CPU. 17College of Communication Engineering, Jilin University操作数(operands)在哪里?2: Data Memory Memo

11、ry并不是CPU的组成部分,对memory的访问要比对寄存器的访问慢很多18College of Communication Engineering, Jilin University运算结果存哪里?Generally, the same as the operands1: Registers19College of Communication Engineering, Jilin University运算结果存哪里?2: Data Memory20College of Communication Engineering, Jilin University 指令解析指令解析 : 分析该指令需要

12、执行何种操作 数据流向数据流向 : 确定该指令用到的操作数来源和产生结果的去向. 寻址方式寻址方式:计算机确定操作数或下一条要执行指令的地址的方法。Low addrHigh addr2.2.2 CPU的构成 控制单元21College of Communication Engineering, Jilin University地址与存储的基本概念Instr.EInstr.DInstr.CInstr.BInstr.A0 xA3360 xA3370 xA3340 xA3350 xA332 也可能是程序代码也可能是程序代码一段存储空间一段存储空间 请回忆一下请回忆一下C语言的变量和指针的概念?语言的

13、变量和指针的概念?0 x440 x550 x440 x330 xEF0 x560 x00040 x00010 x00020 x00030 x0000 存储的是数据存储的是数据22College of Communication Engineering, Jilin University获取指令:一个完整的CPU程序由指令序列构成,保存在程序存储器中。这些指令序列“依次”进入CPU执行下一条下一条待执行的指令地址保存在PC寄存器( Program Counter,即程序计数器),即程序计数器)中指令被取出后,PC更新指向下一条下一条指令(见下页)PC:程序计数器:程序计数器23College o

14、f Communication Engineering, Jilin UniversityPC more than incrementPC = addressPC = PC + offset当出现跳转或子程序调用时:The PC is loaded with a new value (PC = address) or adjust with an offset. (PC = PC + offset)当指令序列出现分支时,PC将不再是按序递增到相邻的下一条指令 Quiz: 这种情况什么时候会出现?For(;)If . Else.Case: Sub_routine();Return();中断进入和

15、返回Code memoryPC 变化:顺序、分支和循环变化:顺序、分支和循环24College of Communication Engineering, Jilin UniversityPC more than incrementPC = addressPC = PC + offsetCode memoryHow to do that? - stack 堆栈堆栈此处的返回地址从何而来?Putchar();.Putchar();void Putchar() return(); PC 变化:子程序调用、中断变化:子程序调用、中断25College of Communication Enginee

16、ring, Jilin University堆栈堆栈是一段连续的存储器空间,堆栈按照后入先出后入先出的方式工作(Last In First Out) 只能向/从堆栈的顶部顶部加入或取出数据堆栈能够保持数据的顺序堆栈有两种基本的操作方式:推入PUSH: 将内容加入到堆栈顶端取出PULL : 将堆栈顶端的内容取出对于大多数CPU而言,“顶端顶端”是指低位的地址空间High addrLow addrTOP0 x100 x110 x120 x130 x10 is the first pushed item 0 x13 is the last pushed item26College of Communication Engineering, Jilin University堆栈的作用nCPU硬件 使用堆栈来保存返回地址和寄存器上下文(register context) 中断n汇编程序可以使用堆栈来保存局部变量,寄存器值 n C语言编译器使用堆栈来完成参数传递和返回值传递 C语言的函数调用27College of Communication Engineering, Jilin Universi

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号