购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3 MC9S12XS128简介

2.3.1 MC9S12XS128性能概述

MC9S12XS128只是S12X家族中的一个成员。该器件包括大量的片上存储器和外部I/O。MC9S12XS128是一个16位器件,由16位中央处理单元(CPU12X)、128 KB程序Flash(P-Flash)、8 KB RAM、8 KB数据Flash(D-Flash)组成片内存储器。同时还包括2个异步串行通信接口(SCI)、1个串行外设接口(SPI)、1个8通道输入捕捉/输出比较(IC/OC)定时器模块(TIM)、16通道12位A/D转换器(ADC)和一个8通道脉冲宽度调制模块(PWM)。

MC9S12XS128具有91个独立的数字I/O口,其中某些数字I/O口具有中断和唤醒功能。另外还具有1个CAN 2.0A/B标准兼容模块(MSCAN)。

2.3.2 MC9S12XS128内部结构、主要特性及引脚

MC9S12XS128有3种封装,分别是64引脚封装、80引脚封装和112引脚封装。图2.5为MC9S12XS128的内部结构框图,其中功能模块是按照112引脚封装给出的;图2.6为MC9S12XS128的112引脚封装图;图2.7为MC9S12XS128的80引脚封装图。

MC9S12XS128主要特性包括:

● 16位CPU 12X。

● INT(中断模块)。

✧ 嵌套的7级中断;

✧ 每个中断源可以灵活配置中断级别;

✧ 外部非屏蔽高优先级中断(XIRQ)。

● 系统完整性特性。

✧ 上电复位(POR);

✧ 非法地址检测复位;

✧ 低电压检测中断或复位;

✧ COP看门狗;

✧ 时钟监视功能。

● 内部存储器。

✧ 128 KB程序Flash;

✧ 8 KB RAM;

✧ 8 KB数据Flash。

● 内部PLL模块。

✧ 不需要外部元件;

✧ 可配置的选项,以降低EMC辐射(频率调制)。

● 时钟和复位发生器(CRG)。

✧ COP看门狗

图2.5 MC9S12XS128内部结构框图

图2.6 MC9S12XS128的112引脚封装图

图2.7 MC9S12XS128的80引脚封装图

✧ 实时中断;

✧ 时钟监控;

✧ 停止模式下的快速唤醒;

✧ 产生系统复位。

● 模/数转换器(ATD)。

✧ 8位/10位/12位分辨率可选;

✧ 3μs的10位单通道转换时间;

✧ 左对齐/右对齐数据转换;

✧ 外部和内部转换触发功能;

✧ 停止模式下为转换提供内部时钟;

✧ 连续转换模式;

✧ 16个模拟输入通道;

✧ 多通道扫描;

✧ 引脚能够用于数字I/O口。

● 定时器模块(TIM)。

✧ 8通道16位输入捕捉和输出比较功能;

✧ 16位计数器,8位精度预分频器;

✧ 1个16位脉冲累加器。

● 周期中断定时器(PIT)。

✧ 4通道24位模数递减计数器;

✧ 可产生超时中断;

✧ 可用超时触发外设;

✧ 定时器起始通道调整。

● 脉冲宽度调制器(PWM)。

✧ 最多提供8通道8位或者4通道16位的脉冲宽度调制器;

✧ 每个通道可以单独编程设置周期和占空比;

✧ 可设置输出信号中央对齐或者左对齐;

✧ 可编程时钟选择,宽范围时钟频率。

● MSCAN模块。

✧ 可达1 Mbps通信速率,兼容CAN2.0 A和CAN2.0 B;

✧ 5个可配置FIFO接收缓冲区;

✧ 3个内部优先级发送缓冲区;

✧ 可编程选择2×32位、4×16位或8×8位的标识符接收滤波器;

✧ 低通滤波器唤醒;

✧ 环路自检功能;

✧ 侦听模式监测CAN总线状态;

✧ 软件激活或自动唤醒总线关闭功能;

✧ 16位发送/接收报文的时间标签。

● 串行外设接口模块(SPI)。

✧ 可配置8位或16位数据长度;

✧ 全双工或单线双向模式;

✧ 双缓冲的发送和接收功能;

✧ 主机模式或从机模式;

✧ 先移位MSB或LSB功能;

✧ 串行时钟相位和极性可选。

● 串行通信接口(SCI)。

✧ 2个全双工或单线工作方式;

✧ 标准不归零(NRZ)传号/空号数据格式;

✧ 可编程脉冲宽度的IrDA 1.4归零反转(RZI)格式;

✧ 13位波特率选择;

✧ 可编程的字符长度;

✧ 可编程的发送器和接收器极性;

✧ 边沿有效接收唤醒;

✧ 支持LIN的间隔检测和发送冲突检测。

● 输入/输出端口特性。

✧ 最多91个通用I/O口引脚和2个专用输入口引脚;

✧ 可配置输入引脚上拉或下拉电阻;

✧ 可配置输出引脚驱动能力。

● 外围设备。

✧ 2个增强型串行通信接口模块(SCI);

✧ 2个串行外设接口模块(SPI);

✧ 2个MSCAN模块;

✧ I 2 C总线接口模块;

✧ 2个8通道10位AD;

✧ 8通道16位增强型捕捉定时器(ECT);

✧ 8通道8位或4通道16位PWM。

MC9S12XS系列具有非常丰富的输入/输出端口资源,同时集成了多种功能模块,端口包括PORTA、PORTB、PORTE、PORTK、PORTT、PORTS、PORTM、PORTP、PORTH、PORTJ和PORTAD共11个端口。端口引脚大多为复用引脚,往往具有多重功能,所有端口都具有通用I/O口功能。其中PORTA、PORTB和PORTK作为通用I/O口;PORTE中的 引脚可作为外部中断输入口;PORTT集成了TIM模块功能;PORTS集成了SCI模块和SPI模块功能;PORTM集成了CAN总线模块;PORTP集成了PWM模块功能;PORTH和PORTJ可作为外部中断输入口;PORTAD集成了ATD模块功能。

以112引脚MC9S12XS128为例,其引脚功能说明参见表2-3,其中所有电源引脚功能在后文中详细介绍,详细功能说明请参考MC9S12XS128数据手册。

表2-3 MC9S12XS128引脚功能说明

(续表)

(续表)

(续表)

(续表)

注意: 表2-3中有些特殊功能可定义为多个引脚,如SCI1的TXD1可定义PS3引脚,或PM1引脚,或PP2引脚;SCI1的RXD1可定义PS2引脚,或PM0引脚,或PP0引脚。对于这些具有相同功能的引脚定义,由PIM模块中的端口T路径寄存器PTTRR和模块路径寄存器MODRR确定。

端口T路径寄存器(Port T Routing Register,PTTRR)确定PWM和TIM相应通道的引脚定义,如图2.8所示。

图2.8 端口T路径寄存器

PTTRR7:PTTRR7位确定通道PWM7的引脚定义。

● 0表示PWM7对应引脚为PP7;

● 1表示PWM7对应引脚为PT7。

PTTRR6:PTTRR6位确定通道PWM6的引脚定义。

● 0表示PWM6对应引脚为PP6;

● 1表示PWM6对应引脚为PT6。

PTTRR5:PTTRR5位确定通道PWM5的引脚定义。

● 0表示PWM5对应引脚为PP5;

● 1表示PWM5对应引脚为PT5。

PTTRR4:PTTRR4位确定通道PWM4的引脚定义。

● 0表示PWM4对应引脚为PP4;

● 1表示PWM4对应引脚为PT4。

PTTRR2:PTTRR2位确定TIM通道2的引脚定义。

● 0表示IOC2对应引脚为PT2;

● 1表示IOC2对应引脚为PP2。

PTTRR1:PTTRR1位确定TIM通道1的引脚定义。

● 0表示IOC1对应引脚为PT1;

● 1表示IOC1对应引脚为PP1。

PTTRR0:PTTRR0位确定TIM通道0的引脚定义。

● 0表示IOC0对应引脚为PT0;

● 1表示IOC0对应引脚为PP0。

由PTTRR寄存器复位值可知,MC9S12XS128上电复位后,若不配置该寄存器,则PWM7~PWM4默认为引脚PP7~PP4,IOC2~IOC0默认为引脚PT2~PT0。

模块路径寄存器(Module Routing Register,MODRR)确定SCI1和SPI0相应引脚定义,如图2.9所示。

图2.9 模块路径寄存器

MODRR寄存器中的MODRR7和MODRR6两位确定SCI1模块引脚定义,MODRR4确定SPI0模块引脚定义。具体引脚定义说明参见表2-4和表2-5。

表2-4 SCI1模块引脚定义

表2-5 SPI0模块引脚定义

由MODRR寄存器复位值知道,MC9S12XS128上电复位后,若不配置该寄存器,则SCI1模块默认使用引脚PS3和PS2,SPI0模块默认使用引脚PS4~PS7。

PIM模块功能及其他寄存器的介绍详见本书第5章。

2.3.3 MC9S12XS128引脚功能

本节以112引脚MC9S12XS128为例介绍部分引脚功能及参考电路设计。

1.XTAL和EXTAL(47、46)——振荡器引脚

XTAL和EXTAL分别是晶体驱动输出和外部时钟输入引脚。EXTAL引脚既可以接晶振,也可以接外部COMS兼容的时钟信号,驱动内部时钟发生电路,器件中所有的时钟信号都来自该引脚输入的时钟。XTAL引脚为晶体驱动输出,当EXTAL引脚外接时钟信号时,XTAL引脚悬空。时钟电路的几种接法如图2.10、图2.11和图2.12所示。 输入引脚控制时钟由晶体和Pierce振荡器电路提供还是外部时钟电路提供。

图2.10 内部闭环控制Pierce振荡器连接( =1)

图2.11 全摆幅Pierce振荡器连接( =0)

图2.12 外部时钟连接( =0)

2. (42)——外部复位引脚

引脚是一个低电平有效的双向控制信号。该引脚做输入时,将其拉低,可将MCU初始化成一个已知的起始状态。当任何MCU内部复位源触发时,该引脚输出低电平对外指示这种状态。 引脚内部上拉。

3.BKGD/MODC(23)——背景调试和模式引脚

对于背景调试通信而言,该引脚是一个伪漏极开路引脚。在复位期间,该引脚用于选择MCU操作模式。 的上升沿,将该引脚的状态锁存保持在MODC位。该引脚内部上拉。BKGD采用自定义协议接收串行的背景调试命令,发送命令执行结果,实现实时在线调试功能。Freescale定义的标准BDM调试插头如图2.13所示。

图2.13 标准BDM调试插头

4.PE7/ECLKX2/ (36)——端口E输入/输出引脚7

PE7定义为通用输入/输出引脚。ECLKX2定义为时钟输出引脚,输出频率是内部总线频率的2倍。 定义为输入信号,它用于控制使用晶振与内部闭环控制Pierce振荡器电路,还是晶振与全摆幅Pierce振荡器电路,还是外部时钟电路。 具体应用设置详见图2.10、图2.11和图2.12。在复位期间,该引脚内部上拉。

5. (55)——可屏蔽中断请求

PE1可定义为通用输入引脚或可屏蔽外部中断输入 引脚。 信号可从停止(STOP)或等待(WAIT)模式下唤醒MCU。该引脚通过软件设置是否和中断逻辑连接, 可选择下降沿或低电平触发。复位后, 默认为低电平触发中断方式,当CCR寄存器中的I位为1时, 中断被屏蔽。通过软件清除或者置位CCR寄存器中的I位使能或禁止所有可屏蔽中断。

6. (56)——非屏蔽中断请求

PE0可定义为通用输入引脚或非屏蔽外部中断输入 引脚。 信号可在停止(STOP)或等待(WAIT)模式下唤醒MCU。 是低电平触发中断方式。当 引脚低电平时,MCU无法进入停止(STOP)模式。在复位期间,当CCR寄存器中的X位为1时,非屏蔽中断被屏蔽。系统初始化程序后,可通过软件清除CCR寄存器中的X位,使能非屏蔽中断。

注意: X位一旦被清零,就不能再通过软件的方式置1。非屏蔽中断经常用于处理系统掉电或者硬件故障等特殊应用要求。

关于中断及复位的论述,后文相关章节会有详细的论述。

7.电源相关引脚

MC9S12XS128的电源引脚汇总参见表2-6。

表2-6 MC9S12XS128的电源引脚汇总

1)VDDX2,VDDX1和VSSX2,VSSX1——I/O口驱动电源引脚

为I/O口驱动提供外部电源和地。所有VDDX引脚内部连接,所有VSSX引脚内部连接。

2)VDDR——外部电源输入引脚

VDDR和VSSR两个电源引脚之间需要外接一个旁路电容(100~220 nF),并为内部电压调节器供电。

3)VDD和VSS2,VSS3——内核电源引脚

内核电源额定1.8 V供电电压由内部电压调节器提供,允许没有静态外部负载。

4)VDDF和VSS1——NVM电源引脚

NVM电源额定2.8 V供电电压由内部电压调节器提供,允许没有静态外部负载。

5)VDDA和VSSA——A/D转换器工作电源输入引脚

这些引脚为A/D转换器提供工作电源,同时为内部电压调节器提供参考电源。

6)VRH和VRL——A/D转换器参考电源输入引脚

VRH和VRL是A/D转换器的参考电压输入和地引脚。

7)VDDPLL和VSSPLL——PLL工作电源引脚

这些引脚为振荡器和锁相环提供工作电压和地。PLL工作电源额定1.8 V供电电压由内部电压调节器提供,允许没有静态外部负载。 vPsvcsTshH1bymBvUj+S4A4jCKjkCSNB3Slb6djGCGRFX5FG35GgTQLjI0ZAKNl5

点击中间区域
呼出菜单
上一章
目录
下一章
×