WatchDogTimer_18.docVIP

  • 5
  • 0
  • 约2.11千字
  • 约 4页
  • 2017-06-07 发布于重庆
  • 举报
WatchDogTimer_18

第18章 看门狗定时器 概述 每当控制器被如噪声和系统错误这一类的故障扰乱时,S3C2410A看门狗定时器可用于重新启动控制器操作。它可用作一个能请求中断服务的通用16位定时器。看门狗定时器能产生一个128个时钟周期(PCLK)的复位信号。 特性 带中断请求的通用定时器 当计数器减至0(溢出)时,产生128个时钟周期(PCLK)的内部复位信号 。 看门狗定时器操作 图 18-1 为看门狗定时器的功能框图。看门狗定时器只使用PCLK作为它的时钟源。PCLK通过预分频器产生合适的看门狗定时器时钟,分频输出的频率还可以再次分频。 图 18-1 看门狗定时器框图 预分频器的值和分频因子(the frequency division factor)可以在看门狗定时器控制寄存器(WTCON)中指定。有效的预分频器值的范围为0 ~ 28 – 1。分频因子可以选择16、32、64或者128。 使用下面的公式计算看门狗定时器的时钟频率和每个定时时钟周期的时间: t_watchdog = 1 / ( PCLK / ( Prescaler value + 1 ) / Division_factor ) WTDAT WTCNT 一旦看门狗定时器使能,看门狗定时器数据寄存器(WTDAT)的值不能自动重装到看门狗定时计数寄存器(WTCNT)。由于这个原因,在看门狗定时器启动前,必须给WTCNT写入一个初始值。 调试环境下的考虑 当S3C210A用于嵌入式ICE调试的时候,看门狗定时器将被自动禁止使用。 看门狗定时器能从CPU内核信号(DBGACK信号)判断出当前CPU是否处于调试状态。一旦DBGACK信号有效(处于调试状态),尽管看门狗定时器产生溢出,看门狗定时器的复位输出信号仍然不被激活。 看门狗定时器专用寄存器组 看门狗定时器控制寄存器(WTCON) WTCON寄存器允许用户使能∕禁止看门狗定时器,从4个不同的时钟源中选择时钟信号,使能∕禁止中断,并且使能∕禁止看门狗定时器的输出。 在电源接通后,看门狗定时器用于重新从故障中启动S3C2410A;如果不希望控制器重启,则应禁止看门狗定时器。 如果用户想要使看门狗定时器作为常规的定时器使用,应该使能中断,并禁止看门狗定时器。 寄存器 地 址 读∕写 描 述 复位值 WTCON 0x5300 0000 读∕写 看门狗定时控制寄存器 0x8021 WTCON 位 描 述 初始状态 预分频器值 [15:8] 预分频器值。 有效的预分频器值的范围为0 ~ 28 – 1 0x80 Reserved [7:6] 在常规操作下,这两个位必须为 00。 0 看门狗定时器 [5] 看门狗定时器使能∕禁止位。 0 = 禁止 1 = 使能 1 时钟选择 [4:3] 决定时钟分频因子。 00:16 01: 32 10: 64 11: 128 00 中断产生 [2] 中断使能∕禁止位。 0 = 禁止 1 = 使能 0 Reserved [1] 在常规操作下,这个位必须为 0。 0 复位使能∕禁止 [0] 使能∕禁止看门狗定时器输出一个复位信号。 1:在看门狗溢出时,使S3C2410A的复位信号有效。 0: 禁止看门狗定时器的复位功能。 1 看门狗定时器数据寄存器(WTDAT) WTDAT寄存器被用于指定溢出的周期。在看门狗定时器初始化操作中,WTDAT中的内容不能自动装入定时计数器(WTCNT)。然而,使用0x8000(初始值)可以驱动第一个溢出。在这种情况下,WTDAT的值将被自动重装到WTCNT。 寄存器 地 址 读∕写 描 述 复位值 WTDAT 0x5300 0004 读∕写 看门狗定时器数据寄存器 0x8000 WTDAT 位 描 述 初始状态 计数重装值 [15:0] 用于重装的看门狗定时器计数值。 0x8000 看门狗定时计数寄存器(WTCNT) WTCNT寄存器包含看门狗定时器在常规操作期间的当前计数值。注意WTDAT寄存器的内容在看门狗定时器初始使能时,不能被自动装入WTCNT寄存器。因此,WTCNT寄存器在使能前必须被设置一个初始值。 寄存器 地 址 读∕写 描 述 复位值 WTCNT 0x5300 0008 读∕写 看门狗定时计数寄存器 0x8000 WTCNT 位 描 述 初始状态 计数值 [15:0] 看门狗定时器的当前计数值。 0x8000 第18章 看门狗定时器 S3C2410A中文数据手册 WatchDog Timer 第 4 页 共 4

文档评论(0)

1亿VIP精品文档

相关文档