1 / 34

第十二章 GP32 的其他功能模块

《 嵌入式应用技术基础教程 》 课件. 第十二章 GP32 的其他功能模块. 主要内容 CONFIG 寄存器 时钟发生模块 CGM 与锁相环 PLL 中断 复位与系统集成模块 低功耗模式与看门狗功能 监控模块 MON. 《 嵌入式应用技术基础教程 》 课件. 12.1 CONFIG 寄存器. ( 1 ) CONFIG2 CONFIG2 寄存器只有低两位有定义, CONFIG2 的地址是: $001E ,定义为:.

naomi
Download Presentation

第十二章 GP32 的其他功能模块

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 《嵌入式应用技术基础教程》课件 第十二章 GP32的其他功能模块 主要内容 • CONFIG寄存器 • 时钟发生模块CGM与锁相环PLL • 中断 • 复位与系统集成模块 • 低功耗模式与看门狗功能 • 监控模块MON

  2. 《嵌入式应用技术基础教程》课件 12.1 CONFIG寄存器 (1)CONFIG2 CONFIG2寄存器只有低两位有定义,CONFIG2的地址是:$001E,定义为: D1—OSCSTOPENB位:振荡器STOP模式下允许位。OSCSTOPENB=1,振荡器在STOP模式下也正常工作。这一点对于时基模块在STOP模式下产生周期性的唤醒非常有用。OSCSTOPENB=0,在STOP模式下禁止振荡器工作。 D0—SCIBDSRC位:SCI波特率时钟源控制位。SCIBDSRC控制SCI的时钟源。这个位的设置影响SCI操作的频率。SCIBDSRC=1,SCI用内部总线时钟,反之,SCI用外部振荡器时钟。 12.1 CONFIG寄存器

  3. 《嵌入式应用技术基础教程》课件 (2)CONFIG1CONFIG1的地址是:$001F,定义为: D7—COPRS位:COP速度选择位。COPRS选择COP溢出的范围。 D6—LVISTOP位:STOP模式下LVI允许位。 D5—LVIRSTD位:LVI复位禁止位。 D4—LVIPWRD位:为LVI电源禁止位。 D3—LVI5OR3位:LVI的5V或者3V操作模式选择位。 D2—SSREC位:快速STOP模式恢复选择位。 D1—STOP位:STOP指令允许位。STOP位决定是否允许STOP指令。 D0—COPD位:COP禁止位。COPD位决定是否禁止COP模块。 返回 12.1 CONFIG寄存器

  4. 《嵌入式应用技术基础教程》课件 12.2 时钟发生模块CGM与锁相环PLL 12.2.1 锁相环PLL的基本概念 (1)锁相技术与频率合成技术 ①锁相技术:就是实现相位自动控制的一门科学,利用它可以得到频带范围宽、波道多、稳定度高、精度高的频率源。 ②频率合成技术:就是利用一个或几个具有高稳定度和高精度的频率源(一般由晶体振荡器产生),通过对它们进行加减(混频),乘(倍频),除(分频)运算,产生大量的具有相同频率稳定度和频率精度的频率信号。锁相环频率合成技术在通讯、雷达、导航、宇航、遥控遥测、电子技术测量等领域都有广泛的应用。 为了得到稳定度高、精度高的频率源,通常采用频率合成技术。频率合成技术主要有两种:直接频率合成技术和间接频率合成技术。 12.2 时钟发生模块CGM与锁相环PLL

  5. 《嵌入式应用技术基础教程》课件 (1)锁相技术与频率合成技术 12.2.1 锁相环PLL的基本概念 ③直接频率合成技术:是将一个或几个晶体振荡器产生的频率信号通过谐波发生器产生一系列频率信号,然后再对这些频率信号进行倍频、分频和混频,最后得到大量的频率信号。 其优点是:频率稳定度高,频率转换时间短(可达微秒量级),能做到很小的频率间隔。缺点是:系统中要用到大量的混频器、滤波器等,从而导致体积大,成本高,安装调试复杂,故只用于频率精度要求很高的场合。 ④间接频率合成技术:是利用锁相技术来产生大量的具有高稳定度和高精度的频率源。由于间接频率合成器的关键部件是锁相环,故通常称为锁相环频率合成器。由于锁相环频率合成器的主要部件都易于集成,一般只加一个分频器和一个一阶低通滤波器,故其具有体积小、重量轻、成本低、安装和调试简单等优点。锁相环频率合成器在性能上逐渐接近直接频率合成器,所以它在电子技术中得到了日益广泛的应用,并在应用中得到迅速发展。 12.2 时钟发生模块CGM与锁相环PLL

  6. fr ud uo fo 基准频率源 基准频率源 鉴相器 低通滤波器 压控振荡器 ff 反馈分频器 《嵌入式应用技术基础教程》课件 (2)锁相环频率合成器的基本原理 12.2.1 锁相环PLL的基本概念 锁相环频率合成器的原理框图 12.2 时钟发生模块CGM与锁相环PLL

  7. 《嵌入式应用技术基础教程》课件 锁相环频率合成器的各个部件 • 基准频率源:基准频率源提供一个稳定频率源,其频率为fr,一般用精度很高的石英晶体振荡器产生,是锁相环的输入信号。 • 签相器:签相器是一个误差检测元件。它将基准频率源的输出信号fr的相位与压控振荡器输出信号fo的相位相比较,产生一个电压输出信号ud,其大小取决于两个输入信号的相位差。 • 低通滤波器:低通滤波器的输入信号是签相器的输出电压信号ud,经过低通滤波器后ud的高频分量被滤除,输出控制电压uo去控制压控振荡器。 • 压控振荡器(VCO):压控振荡器的输出信号频率fo与它的输入控制电压uo成一定比例,而分频器将锁相环的输出信号fo反馈给签相器,形成一个负反馈,从而使输入信号和输出信号之间的相位差保持恒定。 • 反馈分频器:分频器为环路提供一种反馈机制,当分频系数N=1时,锁相环系统的输出信号频率fo等于输入信号频率fr:fo=fr 信号锁定后有: fo=ff=fr 当分频器的分频系数N>1,有: fo=N·ff 即ff = fo/ N 环路锁定后有: ff = fr fo=N·ff = N·fr 12.2 时钟发生模块CGM与锁相环PLL

  8. SIM、TBM、ADC等 晶体振荡电路 CGMXCLK S I M 时 钟 选 择电 路 OSC1 基 准 分 频 器 CGMOUT 滤 波 器 压控 振荡器 VCO 鉴 相 器 CGMVCLK OSC2 CGMRCLK CGMRDV CGMXFC VDDA VSSA CGMVDV 反馈分频器 PLL电路 《嵌入式应用技术基础教程》课件 12.2.2 MC68HC908GP32的CGM结构及外部连接 (1)CGM内部结构框图 12.2 时钟发生模块CGM与锁相环PLL

  9. 《嵌入式应用技术基础教程》课件 CGM内部结构 晶体振荡电路:晶体振荡电路通过外接石英或陶瓷振荡器产生稳定不变的时钟信号CGMXCLK,CGMXCLK直接输出给系统集成模块SIM和AD转换器。同时也输出到时钟选择模块。CGMXCLK经过缓冲后输出到锁相环频率合成器,作为PLL信号源,这一路信号称为CGMRCLK。 锁相环频率合成器:PLL电路通过压控振荡器(VCO)产生CGMVCLK信号,输出到时钟选择电路。其频率可通过软件编程控制。图中CGMXFC为接滤波电路的引脚。 时钟选择电路:时钟发生模块的输出信号CGMOUT有两种来源:直接采用晶振电路产生的CGMXCLK信号二分频,也可以采用压控振荡器(VCO)产生CGMVCLK信号二分频,时钟选择电路可以通过软件编程决定采用那种信号来源。 12.2 时钟发生模块CGM与锁相环PLL

  10. 《嵌入式应用技术基础教程》课件 (2)CGM的I/O信号 12.2 时钟发生模块CGM与锁相环PLL

  11. MC68HC908GP32 引脚 1 2 3 4 5 含义 VDDA VSSA CGMXCLK OSC2 OSC1 RB RS X1 C2 C1 晶振电路 0.1μ +5V 10K PLL滤波 0.47μ 0.01μ 《嵌入式应用技术基础教程》课件 (3)CGM的外部连接 在典型应用情况下,CGM模块需要9个外接器件,其中晶振电路中需要5个,PLL电路需要2到4个。如右图所示。有了这些连接,从硬件角度看,MCU就可以正常工作了。 晶振电路采用的元件有:晶体X1,电容C1,C2,反馈电阻RB,串行电阻RS。 串行电阻RS,C1,C2的取值可参考晶振厂家给出的典型值,电容一般取10-36p,C1与C2值应该略有差异,以利于晶振电路起振。典型情况下,RS取330K,RB为10M。晶振采用32.768KHZ。 PLL电路采用的元件有:①跨接电容,用于稳定锁相环电源引脚,一般取0.1uF左右。②滤波网络,为芯片内部的锁相环电路提供误差电平,元件参数可参考上图。 注:如用户不打算在应用中使用锁相环电路部分,这一部分电路可以不接,让CGMXFC引脚悬空。 12.2 时钟发生模块CGM与锁相环PLL

  12. 《嵌入式应用技术基础教程》课件 12.2.3 CGM的编程基础 (1)PLL控制寄存器(PLL Control Register-PCTL) PCTL的地址:$0036,定义为: D7 — PLLIE位:PLL中断使能位(PLL Interrupt Enabled Bit)。该位可读写,决定当PLL带宽控制寄存器的LOCK标志位反转时是否产生CPU中断。 D6 — PLLF 位:PLL中断标志位(PLL Interrupt Flag Bit)。该位只读。当LOCK标志位反转时被置位。 D5 — PLLON位:PLL开关检测位(PLL On Bit)。该位为可读写,用于启动PLL电路并激活VCO时钟CGMVCLK,当VCO正作为基准时钟源时,PLLON不能被清零(BCS=1),要关闭PLL应该先不选PLL为时钟源(BCS=0),再清除PLLON位。MCU上电复位后此位置1。 12.2 时钟发生模块CGM与锁相环PLL

  13. 《嵌入式应用技术基础教程》课件 (1)PLL控制寄存器(PLL Control Register-PCTL) D4 — BCS位:CGM基时钟选择位(Base Clock Select Bit)。该位为可读写,用于决定CGM模块的输出信号CGMOUT的输入信号源。BCS=1,选择PLL电路为时钟源,CGMVCLK二分频后驱动CGMOUT;BCS=0,选择晶振为时钟源,CGMXCLK二分频后驱动CGMOUT。 D3~D2 — PRE1~PRE0:预分频位(Prescaler Program Bits)。这两位为可读写。设置预分频器的分频因子P ,预分频器的分频因子P(由此得到预分频系数NP=2P)与PRE1、PRE0关系如下: PRE1、PRE0 = 00 P=0 NP=1 (20) = 01 P=1 NP=2 (21) = 10 P=2 NP=4 (22) = 11 P=3 NP=8 (23) D1~D0 — VPR1~VPR0:VCO的E选择位(VCO Power-of-Two Range Select Bits)。这两位为可读写。设置VCO模块的参数E,控制参考频率。E与VPR1、VPR0关系如下: VPR1、VPR0 = 00 E=1 (20) = 01 E=2 (21) = 10 E=4 (22) = 11 E=8 (23) (不使用) 12.2 时钟发生模块CGM与锁相环PLL

  14. 《嵌入式应用技术基础教程》课件 12.2.3 CGM的编程基础 (2)PLL带宽控制寄存器(PLL Bandwidth Control Register-PBWC) PCTL的地址:$0036,定义为: D7 — AUTO位:自动带宽控制位(Automatic Bandwidth Control Bit)。该位可读写,用于选择自动或手动带宽模式。AUTO=1,自动方式;AUTO=0,手动方式。 D6 — LOCK位:Lock指示位(Lock Indicator Bit)。当AUTO位为1时(设为自动方式),LOCK为只读位,且当VCO的时钟CGMVCLK完成锁定(工作在程序设定频率)后置1,表示时钟稳定。当AUTO位为0时(设为手动方式),LOCK始终读出为0,无意义。 D5 — ACQ#位:获取模式位(Acquisition Mode Bit)。=1,跟踪模式;=0,获取模式。 12.2 时钟发生模块CGM与锁相环PLL

  15. 《嵌入式应用技术基础教程》课件 12.2.3 CGM的编程基础 (3)PLL倍频选择寄存器(PLL Multiplier Control Register-PMSH、PMSL) PMSH、PMSL的地址分别为:$0038、$0039,设置分频模块的分频系数。PMSH的高4位没有定义,始终为0。PMSH的低4位与PMSL一起组成12位的分频因子,记为MUL11~MUL0,它们决定了VCO电路的反馈模块的分频因子N的高4位。由于分频因子N不能为0,即使设置为0,系统也会默认为1。复位时N=64(即:PMSH:PMSL=$0040)。注意:倍频因子寄存器有内部的保护机制,当PLLON=1时,PMSH:PMSL不能被写入。即对PMSH:PMSL的写入操作应当在PLL电路关闭的情况下,PLL电路工作后不能改变PMSH:PMSL的值。 12.2 时钟发生模块CGM与锁相环PLL

  16. 《嵌入式应用技术基础教程》课件 12.2.3 CGM的编程基础 (4)PLL VCO范围选择寄存器(PLL VCO Range Select Register-PVRS) PVRS的地址是:$003A,功能是对VCO电路进行设置。其8位分别记为:VRS7~VRS0。这8位均为可读可写位,确定VCO输出频率范围系数L,对PVRS的写操作只能在PLL关闭时进行,当打开PLL (PCTL中的PLLON=1)时PVRS不能被写。在PVRS中写入$00将禁止PLL电路并清除PLL控制寄存器PCTL中BCS位。复位时L=64(即:PVRS=$40)。同样要注意,VCO范围选择寄存器有内部保护机制,当PLL电路打开(PLLON=1)时,寄存器为写保护。PLL VCO范围选择寄存器必须正确初始化,否则PLL电路不能正确完成锁相。 12.2 时钟发生模块CGM与锁相环PLL

  17. 《嵌入式应用技术基础教程》课件 12.2.3 CGM的编程基础 (5)PLL 参考分频因子寄存器(PLL Reference Divider Select Register-PRDS) PRDS的地址是:$003B,功能是设置参考分频因子R。PRDS的高4位未定义,低4位为参考分频因子R。该寄存器最低位缺省为1。 12.2 时钟发生模块CGM与锁相环PLL

  18. 《嵌入式应用技术基础教程》课件 12.2.4 PLL参数计算与编程步骤 (1)PLL参数计算 ① 选择希望的总线频率 fBUSDES ② 计算希望得到的压控振荡器VCO频率(是总线频率的4倍):fVCLKDES=4×fBUSDES ③选择PLL参考时钟频率fRCLK及参考时钟的分频因子R。 ④ 计算压控振荡器VCO分频因子:N=(R× fVCLKDES)/fRCLK,四舍五入取整。 ⑤求预分频器分频因子P。 ⑥ 计算检验压控振荡器VCO的输出频率:fVCLK=(2P×N/R)/fRCLK,fBUS= fVCLK/4。 12.2 时钟发生模块CGM与锁相环PLL

  19. 《嵌入式应用技术基础教程》课件 (1)PLL参数计算 ⑦选择压控振荡器VCO的E:若fVCLK<9.8304×106,E=0。 若9.8304×106≤fVCLK<19.6608×106,E=1。 若19.6608×106≤fVCLK<39.3216×106,E=2。 ⑧ 选择压控振荡器VCO的L:L=fVCLK/(2E×fNOM),四舍五入取整,其中fNOM=38400H ⑨ 计算检验压控振荡器VCO的中心频率fVRS。中心频率是PLL模块能够达到的最大与最小频率的中点:fVRS=(L×2E)×fNOM,|fVRS- fVCLK |≤(fNOM×2E)/2 ⑩通过比较fVCLK、fVRS、fVCLKDES验证P、R、N、E和L。fVCLK必须处于fVCLKDES的噪声容限内,且fVRS必须尽量接近fVCLK。超过推荐的最大总线频率或VCO频率,可能损坏MCU。 12.2 时钟发生模块CGM与锁相环PLL

  20. 《嵌入式应用技术基础教程》课件 (2)编程步骤 ① 禁止PLL:清零PLL控制寄存器PCTL ② 将P、E写入PCTL ③ 将N写入PMSH、PMSL ④ 将L写入PVRS ⑤ 将R写入PRDS ⑥ 置PCTL.PLLON=1,启动PLL电路并激活VCO时钟CGMVCLK ⑦ 置PBWC. AUTO=1 (即:自动带宽控制位),自动方式 ⑧置PCTL.BCS=1,选择PLL为时钟源,CGMOUT=CGMVCLK/2 12.2 时钟发生模块CGM与锁相环PLL

  21. 《嵌入式应用技术基础教程》课件 12.2.5 初始化及PLL编程实例 (1)汇编语言 ;[PLL编程] CLR PCTL ;①禁止PLL:清零PLL控制寄存器PCTL MOV #$01,PCTL ;②将P、E写入PCTL MOV #$01,PMSH ;③将N写入PMSH、PMSL MOV #$2C,PMSL MOV #$80,PMRS ;④将L写入PMRS MOV #$01,PRDS ;⑤将R写入PRDS BSET 5,PCTL ;⑥置PCTL.PLLON=1,启动PLL电路 BSET 7,PBWC ;⑦PBWC自动带宽控制位=1 BSET 4,PCTL ;⑧PCTL.BCS=1 12.2 时钟发生模块CGM与锁相环PLL

  22. 《嵌入式应用技术基础教程》课件 12.2.5 初始化及PLL编程实例 (2)08C语言 PCTL=0x00; //①禁止PLL:清零PLL控制寄存器PCTL PCTL=0x01; //②将P、E写入PCTL,置VCO的参考频率为2 PMSH=0x01; //③将N写入PMSH、PMSL,置VCO的倍频因子为$12C PMSL=0x2C; PMRS=0b10000000; //④将L写入PMRS,置VCO的输出频率范围系 // 数为$80 RDS=0x01; //⑤将R写入PRDS PCTL|=1<<5; //⑥置PCTL.PLLON=1,启动PLL电路 PBWC|=1<<7; //⑦PBWC自动带宽控制位=1,选择自动控制方式 PCTL|=1<<4; //⑧PCTL.BCS=1,选择PLL电路为时钟源 返回 12.2 时钟发生模块CGM与锁相环PLL

  23. 《嵌入式应用技术基础教程》课件 12.3 中断 12.3.1中断源与中断向量地址 (1)GP32单片机的中断源 GP32单片机有25个中断源,按优先级从高到低的顺序分别是: 复位中断(1个)、SWI指令中断(1个)、引脚中断(1个)、CGM中断(1个)、定时器1中断(3个)、定时器2中断(3个)、SPI中断(4个)、SCI中断(8个)、键盘输入中断(1个)、ADC转换完成中断(1个)和时基中断(1个)。这里把复位也列为一个特殊的中断,因为它也具有向量地址,后面对复位将有较详细的表述。 25个中断源只有18个中断向量,有的是几个中断源使用同一个中断向量,表12-3给出了MC68HC908GP32中断源及中断向量地址。 GP32内部使用3个中断状态寄存器:INT1(地址为$FE04)、INT2(地址为$FE05)和INT3(地址为$FE06)来保存中断状态,但一般编程时并不使用这些寄存器,因此此处不做介绍。 12.3 中断

  24. 《嵌入式应用技术基础教程》课件 12.3.1 中断源与中断向量地址 (2)中断的过程 ①CPU内的寄存器PCL、PCH、X、A、CCR依次进栈(注意H未被保护,这是为了与HC05系列MCU兼容,所以必要时,H应由用户中断服务程序保护); ②自动关总中断(即相当于自动执行SEI指令),防止其他中断进入; ③从相应的中断向量地址取出中断向量(即中断服务程序的入口地址)送给PC; ④执行中断服务程序,直到执行中断返回指令RTI。RTI指令从堆栈中依次弹出CCR、A、X、PCH、PCL,使CPU返回原来中断处继续执行; ⑤若中断过程也允许响应新的中断,可在中断服务程序中用CLI指令开放中断。一般不建议这样做,可用其他编程技巧处理相关问题。 12.3 中断

  25. 《嵌入式应用技术基础教程》课件 12.3.2 IRQ#引脚中断 IRQ状态寄存器INTSCR(IRQ Status and Control Register)的地址是:$0013,定义为: D7~D4位:未定义。 D3 — IRQF位:IRQ中断标志位。IRQF=1,已发生IRQ中断,反之未发生IRQ中断。该位只读。 D2 — ACK位:IRQ中断请求应答位。该位只写,读出总是0。 D1 — IMASK位:IRQ中断屏蔽位。 IMASK=1,禁止IRQ中断; IMASK=0,允许IRQ中断。 D0 — MODE位:IRQ边沿/低电平触发模式选择位。MODE=1,IRQ#引脚负跳变及低电平中断,MODE=0,IRQ#引脚仅负跳变中断。 12.3 中断

  26. 《嵌入式应用技术基础教程》课件 12.3.3 断点模块BRK与软件中断SWI 断点模块(break module,BRK)可以在设定的地址处产生一个中断,该中断称为断点中断(Break interrupt),它使CPU中止当前程序的执行而进入断点中断服务程序。 断点中断可由下述2种方式引起:① 程序计数器PC值与断点地址寄存器的内容相匹配时产生断点中断。② 用软件向断点状态与控制寄存器BRKSCR的BRKA位写1时产生断点中断。 当断点中断发生后,CPU在结束当前指令后,将一条SWI指令装入内部指令寄存器作为下一条指令执行。这样就如同发生一个软件中断,断点中断向量地址是$FFFC和$FFFD,与软件中断SWI指令产生的中断是同一个中断向量地址。实际上,即使是调试工具的开发也极少单独使用SWI指令,而是设置断点中断产生SWI中断,在中断例程中,将当前MCU工作状态发送给PC机。 从编程角度,断点模块BRK涉及断点状态控制寄存器BRKSCR(Break Status and Control Register)与16位断点地址寄存器(BRKH、BRKL)。 返回 12.3 中断

  27. 《嵌入式应用技术基础教程》课件 12.4 复位与系统集成模块 12.4.1复位 复位使MCU进入到开始状态,从复位向量地址($FFFE~$FFFF)取得即将开始执行程序的地址,由此地址开始执行。 (1)从是否上电来看,分为上电复位与热复位: 上电复位是指原来芯片并未加电(处于所谓冷状态),给芯片加电后,芯片复位。 热复位是指芯片本来就处于上电状态,由于内部或外部原因引起的复位,复位后,MCU迅速停止当前正在执行的指令,有关寄存器恢复到复位状态值,从地址$FFFE~$FFFF取出两字节的复位向量送到程序计数器PC。 (2)从引起复位的信号来看,有外部复位与内部复位: 外部复位是指逻辑低电平加到芯片的引脚一段时间后所产生的复位。IRQ#引脚也是内部复位的输出端。 内部复位是指芯片的内部复位源将芯片的引脚拉低32个CGMXCLK周期所产生的复位。 12.4 复位与系统集成模块

  28. 《嵌入式应用技术基础教程》课件 12.4.2系统集成模块SIM (1)SIM模块的主要功能 1)SIM模块的主要功能有: ①总线时钟的产生和控制,包括STOP、等待、复位、断点的进入和恢复,内部时钟控制; ②用户复位控制,包括上电复位和COP溢出; ③中断控制,包括识别时序、仲裁控制时序、中断地址产生; ④CPU允许和禁止时序; ⑤可扩展到128个中断源的模块结构。 12.4 复位与系统集成模块

  29. 《嵌入式应用技术基础教程》课件 2)SIM和时钟生成器为CPU提供各种时钟信号。 时钟生成器产生一个时钟信号输出到SIM来产生系统时钟,这个时钟信号可以来自外部振荡器,也可以来自内部锁相环电路,可分3种情况: ①在用户模式下,内部总线的频率可以是晶体振荡器的输出(CGMXCLK)或锁相环电路输出(CGMVCLK)的4分频; ②当上电复位模块或者低电压禁止模块产生复位信号时,CPU内部时钟保持复位状态直到经过4096个CGMCLK时钟。在这期间,引脚被SIM设置为低。内部总线也在4096个CGMCLK时钟之后开始工作; ③在WAIT模式下,CPU时钟并不工作,SIM为其他模块提供时钟。 12.4 复位与系统集成模块

  30. 12.4.2系统集成模块SIM SRSR的地址是:$FE01,定义为: (2)SIM复位状态寄存器(SIM Reset Status Register-SRSR) D7—POR位:上电复位标志。 D6—PIN位:外部引脚的复位标志。 D5—COP位:看门狗复位标志。 D4—ILOP位:非法操作码复位标志。 D3—ILAD位:非法地址复位标志。 D2:未定义 D1—LVI位:低电压复位标志。 D0:未定义 返回 12.4 复位与系统集成模块

  31. 《嵌入式应用技术基础教程》课件 12.5 低功耗模式与看门狗功能 12.5.1 低功耗模式 (1)STOP指令 在程序中运行STOP指令,使MCU处于STOP功耗模式(功耗最小)。在STOP状态下,关闭MCU内部时钟,包括CPU的时钟和内部总线上的时钟,MCU内部一切操作停止。 (2)WAIT指令 在程序中运行WAIT指令,使MCU处于WAIT低功耗模式。WAIT模式的功耗比STOP模式大。在WAIT模式下,内部CPU的时钟被关闭,但内部总线时钟并不停止,定时器仍然在工作。 12.5 低功耗模式与看门狗功能

  32. 《嵌入式应用技术基础教程》课件 12.5.2 系统正常操作监视模块COP 系统正常操作监视模块(Computer Operating Properly,COP)俗称看门狗(Watchdog)。该模块有一个自由运行的计数器,若在CONFIG1中设定COP允许后,用户程序必须周期地向COPCTL($FFFF,COP控制寄存器)写入任意值(使用指令STA COPCTL,叫做给看门狗喂食),以清除COP计数器。 返回 12.5 低功耗模式与看门狗功能

  33. 《嵌入式应用技术基础教程》课件 12.6 监控模块MON 适当运用监控方式和主机命令,能够完成一些特殊功能,例如: (1) 下装代码到RAM或Flash存储器中; (2) 执行RAM或Flash中的程序代码; (3) Flash存储器的加密; (4) Flash存储器擦除/写入/校验; (5) 与主计算机进行标准的不归零传号/空号串行通信,波特率为4800bps~28.8kbps; (6) 在线编程; (7) 用户方式Flash编程。 返回 12.6 监控模块MON

  34. 《嵌入式应用技术基础教程》课件 本章小结 在学习了MC68HC908GP32单片机的大部分功能以及它们的基本应用方法的基础上,本章把前面在初学过程中跳过的部分完善,以形成对MC68HC908GP32单片机的较全面的认识,以便在实际应用中融会贯通。主要内容包括系统初始化的设置、PLL、复位、中断源、低功耗模式、看门狗功能以及其他功能模块。 返回

More Related