第6章 TMS320F2812的时钟及看门狗

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2020年1月23日第六章TMS320F2812的时钟及看门狗2020年1月23日主要内容时钟单元时钟单元基本结构锁相环电路时钟单元寄存器看门狗看门狗的基本结构看门狗基本操作看门狗应用2020年1月23日1时钟单元处理器将集成的外设分成高速和低速两组,可方便设置不同模式的工作频率2020年1月23日1.1时钟单元的基本结构F2812内部集成了振荡器、锁相环、看门狗及工作模式选择等控制电路;振荡器、锁相环主要为处理器CPU及相关外设提供可编程的时钟,每个外设的时钟都可以通过相应的寄存器进行编程设置;看门狗可以监控程序的运行状态,提高系统的可靠性。2020年1月23日2.1锁相环电路PLL主要作用:通过软件实时地配置片上外设时钟,提高系统的灵活性和可靠性;晶体振荡器及PLL模块2020年1月23日选择系统时钟源低电平高电平OSC允许2种方式提供时钟:内部振荡器:X1/XCLKIN和X2间连接一个石英晶体外部时钟:输入时钟直接接到X1/XCLKIN,X2悬空2020年1月23日2.2锁相环配置模式具体n值的设定见P101表6.6锁相环控制寄存器功能定义2020年1月23日2.3PLL控制寄存器2020年1月23日2.4PLL模块通过系统时钟输出提供快速和慢速2种外设时钟通过软件改变系统工作频率时,需等待系统时钟稳定后才可以继续完成其他操作为降低功耗,不使用的外设最好将其时钟禁止2020年1月23日voidIntiPll(Uint16val){volatileUint16iVol;if(SysCtrlRegs.PLLCR.bit.DIV!=val){EALLOW;SysCtrlRegs.PLLCR.bit.DIV=val;EDIS;////DisableDog();for(iVol=0;iVol((131072/2)/12);iVol++){}}}等待PLL稳定2020年1月23日voidInitPeripheralClocks(void){EALLOW;SysCtrlRegs.HISPCP.all=0x0001;SysCtrlRegs.LOSPCP.all=0x0002;SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;SysCtrlRegs.PCLKCR.bit.EVBENCLK=1;SysCtrlRegs.PCLKCR.bit.SCIAENCLK=1;……SysCtrlRegs.PCLKCR.bit.ADCENCLK=1;EDIS;2020年1月23日3时钟单元寄存器外设时钟控制寄存器(PCLKCR)高/低速外设时钟寄存器(HISPCP/LOSPCP)锁相环控制寄存器(PLLCR)2020年1月23日时钟、锁相环、看门狗以及低功耗模式寄存器2020年1月23日3.1外设时钟控制寄存器(PCLKCR)PCLKCR控制片上各种时钟的工作状态,使能或禁止相关外设的时钟2020年1月23日作用:使能或禁止相关外设时钟PCLKCR各位功能定义:1:使能0:禁止2020年1月23日2020年1月23日3.2高/低速外设时钟寄存器HISPCP和LOSPCP控制寄存器分别控制高/低速的外设时钟;2020年1月23日2020年1月23日2020年1月23日3.3锁相环控制寄存器(PLLCR)2020年1月23日6.2看门狗看门狗的基本结构看门狗基本操作看门狗寄存器看门狗应用2020年1月23日4.1看门狗的基本结构看门狗定时器是一个独立于CPU的计数单元,若不采用特定的指令周期地使看门狗定时器复位,看门狗单元将会使系统复位;为避免不必要的复位,要求用户软件周期地对看门狗定时器进行复位操作;看门狗可以检测软件和硬件地运行状态,提高了系统的可靠性;2020年1月23日2020年1月23日看门狗内部原理图如图6.92020年1月23日看门狗计数器的工作原理:受WDKEY控制0x55+0xAA控制复位4.2看门狗的基本操作2020年1月23日3.3看门狗寄存器WD禁止位WD校验位WD预定标设置位(1)看门狗控制寄存器2020年1月23日2020年1月23日(2)系统控制和状态寄存器包含看门狗溢出位和看门狗中断屏蔽/使能位2020年1月23日2020年1月23日(3)看门狗计数寄存器2020年1月23日(4)看门狗复位寄存器2020年1月23日4.看门狗应用voidKickDog(void){EALLOW;SysCtrlRegs.WDKEY=0x0055;SysCtrlRegs.WDKEY=0x00AA;EDIS;}2020年1月23日volatile使寄存器的值被外部代码任意改变;如:外设的寄存器的值可以被外部硬件或中断任意改变,若不用volatile,则寄存器的值只能被程序代码所改变。返回2020年1月23日EALLOW&EDISTI的DSP为了提高安全性能,将很多关键寄存器作了保护处理。这些关键寄存器包括器件仿真寄存器、FLASH寄存器、CSM寄存器、PIE矢量表、系统控制寄存器、GPIOMUX寄存器、eCAN寄存器的一部分;DSP由于在上电复位之后,状态寄存器基本上都是清零,EALLOW位也被清除以启用EALLOW保护,在受保护时,CPU对受保护寄存器进行的所有写入被忽略且只允许CPU读取、JTAG读取和JTAG写入。为了能够对这些特殊寄存器进行初始化,所以在对上述特殊寄存器进行改写之前,一定要执行汇编指令asm(“EALLOW”)或者宏定义EALLOW来设置状态寄存器1的C6位。在设置完寄存器之后,一定要注意执行汇编指令asm(“EDIS”)或者宏定义EDIS来清除状态寄存器1的C6位;返回2020年1月23日位定义对寄存器整体赋值,选择.all;对寄存器某位操作,选择.bit,后面加寄存器位名字;如SysCtrlRegs.LOSPCP.all=0x0002;SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;返回2020年1月23日

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功