Freescale HCS08微控制器介绍 制作人:李叶 学号:2011010168
目录 1.通用信息与结构框图 2.引脚与连接 3.工作模式 4.片上存储器 5.复位与中断 6.中央处理器单元
通用信息与结构框图 HCS08系列微控制器介绍 每个 HCS08 系列的 MCU 都是由 HCS08 核加上几个 存储器以及外设模块组成。 ①HCS08 CPU ②背景调试控制器(BDC) ③支持多达 32 个中断/复位源 ④芯片级地址译码
编程模式 HCS08 CPU 的编程模型见图1-1 所示,它包括和 M68HC08 相同的寄存器。其中包括一个8 位累加器(A), 一个可分别存取高8 位和低8 位的16 位变址寄存器, 一个16位栈指针(SP),一个16 位程序计数器(PC)和一 个状态码寄存器(CCR),该CCR 包含5个处理器状态标 志(V,H,N,Z 和C)和全局中断屏蔽标志(I)。
外部模块 一个特定型号的MCU 的外设可能是多种多样的,但是每个 型号MCU 总会包含程 序存储器、数据存储器、时钟模块和调试模块。HCS08 系 列的一些外设模块包括: ①4K-60K 字节的FLASH 或ROM 存储器 ②128-4K 字节的静态RAM ③异步串行输入/输出(SCI) ④同步串行输入/输出(SPI 和IIC) ⑤定时器/脉宽调制模块(TPM) ⑥键盘中断(KBI) ⑦模数转换器(ADC)
⑧时钟发生模块: 具备功能齐全的内部时钟发生器(ICG),可以脱离外部 元件(倍频是用FLL 完成的, 它不需要任何外部滤波元件)运行。 传统的没有FLL 或PLL 的皮尔斯振荡器(OSC)。 ⑨有9 种触发模式和总线捕捉FIFO 的调试模块(DBG)
MC9S08GB60的特点 MC9S08GB60 是HCS08 系列的首款产品,其特点为: 1.60K 带块保护和安全机制的可片上在线编程的FLASH 存储器 2.4K 片上随机存储器(RAM) 3.8 通道,10 位模数转换器(ATD) 4.两个串行通信接口模块(SCI) 5.串行外设接口模块(SPI) 6.时钟源可选晶体振荡器、陶瓷谐振器、外部时钟或 经精确NVM 校准的内部时钟 7.高达100 kbps 的IIC 总线(IIC)
8.一个3 通道和一个5 通道的16 位定时器/脉宽调制 器(TPM)模块,每个通道可以 选择输入捕捉、输出比较和边缘对齐PWM 等功能。每 个定时模块的每个通道可配置为 带缓冲的中心对齐的脉宽调制(CPWM)模式 9 8 引脚键盘中断模块(KBI) 10. 16 个大电流引脚(受封装形式限制) 11.RESET 和IRQ 引脚内部上拉可减少用户系统开销 12.56 个通用输入输出引脚(I/O),和封装形式有关 13.64 引脚薄型方型扁平式封装(LQFP)
MC9S08GB60的结构框图
注意: 1.端口引脚作为输入时可以通过软件设置选择内部上 拉设备。 2.若IRQ使能(IRQPE=1),引脚包括可软件配置的上下 拉设备。 3.IRQ没有通过钳位二极管连向VDD。IRQ不能加载高 于VDD的电平 4.引脚包含集成的上拉设备。 5.大电流驱动。 6.PTA[7:4]引脚包含可软件配置的上拉/下拉设备。
引脚与连接 HCS08 应用系统最典型的引脚连接。MC9S08GB60 是 HCS08 系列最具代表性。
详细说明 电源 DD V 和SS V 是HCS08 MCU 的主要供电引脚。该电压 源对所有的输入/输出(I/O)缓冲电路和内部电压调节 器供电。内部电压调节器向CPU 和其他MCU 内部电路 提供2.5伏电压。
振荡器 本节描述MC9SGB60 内的振荡器。并不是所有该系列 的MCU 都使用相同的振荡器,有些就没有外部振荡器 元件。对于该系列特定MCU 的信息可以参考其数据手 册。MC9S08GB60 可以在没有任何外部晶体振荡器的 情况下运行。在这种情况下,该MCU 使用内部产生的 频率,相当于大约8MHz 晶体频率。这个频率源在复 位启动时使用,以避免长时间的晶体启动延时。 MC9S08GB60 中的振荡器为传统的皮尔斯振 荡器,它可容纳一个晶体或陶瓷谐振器,其频率范围 可通过ICGC1 寄存器中的RANGE 位在两个频率范围里 进行选择。低频范围是32KHz 到100KHz,高频范围是 1MHz 到16MHz。除了晶体或陶瓷谐振器,频率高达 40MHz 的外部振荡器也能和EXTAL 输入引脚相连,但 XTAL 输出引脚必须悬空。
复位 并非所有的HCS08 系列MCU 都有一个复位引脚。如果 没有复位引脚,可以通过下电上电过程来产生上电复 位,也可以通过使用背景命令向SBDFR 寄存器写入 BDFR位,或者用软件的方法强制产生复位,例如非法 指令码复位。在MC9S08GB60 中,复位引脚是一个有上 拉电阻的专用引脚。它有输入滞后,10mA输出驱动, 没有输出摆率控制。 每当有复位产生(无论来自外部信号还是来自内部系 统),复位引脚被拉低约4.25μs,然后释放,经过约 4.75μs 后再次采样。如果是内部信号源导致复位, 比如低电压复位或看门狗超时,电路等待复位引脚采 样返回逻辑1。如果引脚在这个采样点仍然是低,那么 就假定复位来自外部信号源。复位电路解析复位的原 因并且在复位状态寄存器(SRS)中设置相应的位。
背景/模式选择(BKGD/MS) 背景/模式选择(BKGD/MS)引脚包括一个内部上拉设备, 输入滞后,一个2mA 输出驱动和无输出摆率控制。若 这个引脚没有连接,则MCU 在复位的上升沿进入正常 的操作模式。如果调试系统被连接到6 引脚的标准背 景调试接口,它可以在复位上升沿时持BKGD/MS 为低, 强制MCU 进入背景模式。 通用I/O及外设端口 MC9S08GB60 上的有56 个引脚是由通用输入/输出(I/O) 和片上外设功能模块所共用,比如定时器和串行I/O 系统。复位以后,56 个引脚中除PTG0/BKGD/MS,其他 引脚全部配置为高阻通用输入口,内部上拉设备无效。
工作模式 特征 ①普通用户在运行模式下操作 ②用于代码开发的背景调试模式 ③等待模式: CPU 关闭以节能 系统时钟仍然运行 维持完全的电压稳压 ④停止模式: 系统时钟停止;电压调节器待命 停止1:内部电路的全部断电,以最大程度节能 停止2:内部电路的部分断电,RAM 内容保留 停止3:所有内部电路供电,以快速恢复 单独的周期唤醒时钟能运行在stop2 和stop3 模式 在stop3 下振荡器打开可以降低晶振的启动时间
运行模式 这是9S08GB/GT 的正常操作模式。当BKGD/MS 在复 位的上升沿时是高电平,此模式被选择。在此模式下 复位之后,CPU 从存储器中的$FFFE:$FFFF 处取出程 序执行的起始地址,执行内存中的代码。
背景调试模式 背景调试模式的功能由HCS08 核中的背景调试控制器 (BDC,Background DebugController)管理。BDC 和片上 调试模块(DBG)一起,提供了在软件运行时分析MCU 的操 作的方法。 可通过以下五种方式进入背景调试模式: ①BKGD/MS 引脚在复位的上升沿时是低电平 ②从BKGD 引脚接收到BACKGROUND 命令 ③当执行BGND 指令时 ④当遇到BDC 断点时 ⑤当遇到DBG 断点时 进入背景调试模式后,CPU 被置于挂起状态,等待串行背 景命令而不是执行用户 应用程序的指令。
背景命令有两种类型: ①非插入命令,定义为可在用户程序运行时发出的指令。当MCU 在运行模式下时, 非插入命令可经由BKGD 引脚发出。当MCU 在背景调试模式下也 可执行非插入命令。 非插入命令包括: 存储器访问命令 存储器访问状态命令 BDC 寄存器访问命令 BACKGROUND 命令 ②背景命令,只有当MCU 在背景调试模式下才可以执行。背景 命令包括以下命令: 读写CPU 寄存器 单步调试指令 离开背景调试模式,返回用户应用程序(GO) 背景调试模式通常用于在MCU 第一次在运行模式下运行 之前向FLASH 存储器写入一个引导程序或者用户应用程序
等待模式 执行到WAIT 指令时,即可进入等待模式。在执行WAIT 指令后,CPU 进入没有时钟的低功耗状态。 停止模式 在系统选择寄存器中的STOPE 位置位时,当执行到一 个STOP 指令就进入了三种停止模式中的一种。
片上存储器 HCS08核定义的存储器组织 在HCS08 的体系结构中,内核在64K 字节存储空间内 为6 个主要块指定地址解码。片上存储器模块使用这 些块解码信号作为模块选择。各个外设模块的基地址 是由系统综合模块里附加的解码逻辑决定的,它为每 个外设模块定义一个地址块。然后外设利用这个模块 选择和附加的低位地址线为每个在模块里的寄存器提 供选择信号。
RAM MC9S08GB60 包含4096 字节的静态RAM 位于$0080 到$107F 之间。前面的128字节RAM($0080-$00FF)可以 使用更高效的直接寻址方式访问,这一区域中的任何 单独一位都可以通过位操作指令(BCLR、BSET、BRCLR 和BRSET)访问。一般将最常用的程序变量放在RAM 的 这一区域。 60K字节的FLASH 60K 字节的FLASH 主要用于程序存储。在线编程允许 应用程序在最后一次编译以后下载到FLASH 存储器中。 可以大约在三秒钟之内通过单一连线的背景调试接口 对整个60K 字节的FLASH 进行写入。因为对FLASH 的 擦除和写入操作不需要特殊的电压,所以可以通过串 行通信接口(SCI)或一些其他软件可控制的通信方式对 应用程序进行下载。
复位和中断 MC9S08GB60复位和中断的特征 对于HCS08 系列的不同MCU,其复位和中断源的设置是不同的。本节以 HCS08 系列第一款芯片(MC9S08GB60)为例来介绍这些复位和中断源。关于某个 特MCU 的复位和中断源的更多信息,可以参考相关的数据手册。 复位和中断源包括: ①8 种可能的复位源 发现上电复位(POR) 使能外部RESET 引脚 COP 看门狗使能和两个溢出时间选择 非法地址(在MC9S08GB60 中没有非法地址) 非法操作码检测 时钟脉冲发生器失锁或时钟丢失低电压检测使能 背景调试主机发的连续命令
②复位状态寄存器(SRS)指出最近一次发生复位的原因 ③25 个独立的中断向量(减少查询的开销) 软件中断指令(SWI) IRQ 引脚使能,可选择中断的极性,电平和触发沿 低电压检测使能 时钟脉冲发生器失锁或时钟丢失 10 个定时器中断:两个溢出中断,两个总共8 通道的TPM 中 断 1 个SPI 中断 6 个SCI 中断:2 个SCI 模块都有Rx、Tx 和错误中断键盘唤 醒 A/D 转换完成 周期性从STOP模式唤醒的使能和基于内部1MHz 时钟源或 外部时钟源的倍频
中央处理器单元 HCS08 CPU 始于1979 年,是CPU 系列中的最新一代,它随着 基于NMOS(N 沟道金属氧化物半导体)技术的M6805 系列CPU 同时产生。接下来Freescale 开发了基于金属门CMOS(互补MOS) 工艺的M146805 系列。最终,这个过程被硅门CMOS 工艺和 Freescale 更先进的产品M68HC05 CPU 所取代。之后,该系列 的又一次主要的飞越M68HC08,它大大的扩展了指令集,提高 了C 语言编译效率。当前的HCS08 CPU 已经使用了新的设计工 艺,这使它与硅处理技术的迅速发展并驾齐驱。与 M68HC08CPU 相比,HCS08CPU 增加的内容为: ①LDHX 指令的新寻址方式: 扩展寻址方式(EXT) 无偏移量变址方式(IX) 8 位偏移量变址方式(IX1) 16 位偏移量变址方式(IX2) 8 位偏移量堆栈寻址方式(SP1)
②对STHX 和CPHX 指令,增加了新的寻址方式: 扩展寻址方式(EXT) 8 位偏移量堆栈寻址方式(SP1) ③新的背景指令(BGND) ④操作总线频率提高到20MHz ⑤指令队列(或管道)可以提高指令的吞吐能力