单片机以太网控制芯片W7100A数据手册(三)
7.4 简单定时器
看门狗定时器是一个独立运行的定时器。在定时器模式下禁止复位(EWT=0)和禁止中断(EWDI=0),定时器开始向WD[1:0]预先设置的时间计数,并将允许看门狗中断标志。对RWT复位,定时器将工作在时间溢出监测模式。WDIF位可以由软件清0或置1。看门狗中断可以用于需要长时间定时的应用系统中,中断由看门狗中断允许启动位(EIE.4)开启。那么当产生时间溢出,看门狗定时器将设置WDIF位(WDCON.3)为1。如果中断总开关开启,那么将产生中断。注意,在一个可能的看门狗复位之前,WDIF将在512个时钟之后复位。看门狗中断标志指示中断的来源,必须由软件清除。如果看门狗中断应用得当,看门狗复位将使得中断程序可以监控任何系统错误。
7.5 系统监控
如果WDCON的EWT位置位,W7100A会在一个看门狗时间超时发生后重启。用户可以使用看门狗定时器作为系统监控的功能,例如,系统在看门狗中断之前正在运行错误代码,而且也没有RWT清除进程,因为这种代码不是由用户编写的,这种情况将会导致看门狗超时发生,W7100A将会重启。用户通过这种机制可以避免不想看到的系统状态。
7.6 与看门狗有关的寄存器
看门狗定时器定时器在运行期间与多个特殊功能寄存器的位相关。这些位可用于复位源、中断源、软件检测定时器,也可以是这三者的任意组合。复位和中断都有状态标志。看门狗还有一个位是重启定时器。下表是对这些位的详细介绍。
表7.2 与Watchdog有关的”位”的总结
注意:
WTRF – 看门狗定时器复位标志。当该标志由硬件置位时,标志着已经产生了看门狗定时器复位。然而如果由软件对该标志置位,不会触发看门狗定时器复位。在复位期间,该标志会被清除,否则需要软件清除。如果EWT被清除,看门狗定时器对该位不产生影响。
EWT
0 : 看门狗定时器溢出不对微处理器复位
1 : 看门狗定时器溢出对微处理器复位
RWT
未使用的位读出为1或0。
下表总结了控制看门狗的”位”及其功能
表7.3 看门狗的”位”及作用
时钟控制寄存器CKCON(0x8E)包含WD[1:0]位,用于选择看门狗定时器溢出时间。看门狗时钟直接来源于CLK引脚输入,看门狗有四种时间溢出选择(基于输入的CLK时钟),如表7.4所示。这是一个预选的时钟数。因此实际的时钟溢出时间与CLK频率是相关的。
*W7100A时钟频率=88.4736MHz
表7.4 Watchdog时间间隔
上表所示的时间间隔是产生中断事件。如果允许产生复位,那么将在512个时钟之后产生复位,而不管中断的出现。因此,实际看门狗溢出时间就是选择的看门狗定时时钟周期再加上512个时钟周期(CLK引脚信号)。
7.1 顺序访问寄存器
因为WDCON是顺序访问寄存器,用户必须用下面的步骤来设置WDCON的值。TA位于特殊功能寄存器的0xC7地址。
MOV TA, #0xAA
MOV TA, #0x55
;任何直接寻址指令对顺序访问寄存器操作
用户在设置WDCON时应该一直使用这个顺序
表7.5 顺序访问寄存器
8. TCPIP内核
8.1 存储器映射
TCP/IP内核由通用寄存器、SOCKET寄存器、TX存储器和RX存储器组成,如下图所示:
8.2 TCP/IP内核寄存器
8.2.1
8.2.2
评论