MCU 控制和状态寄存器-MCUCSR MCU 控制和状态寄存器提供了有关引起 MCU 复位的复位源的信息。 JTD ISC2 – JTRF WDRF BORF EXTRF PORF MCUCSR 读 / 写 R/W R/W R R/W R/W R/W R/W R/W 初始值 0 0 0 参见各个位的说明 * Bit 4 – JTRF: JTAG 复位标志 通过 JTAG 指令 AVR_RESET 可以使 JTAG 复位寄存器置位,并引发 MCU 复位,并使 * Bit 3 – WDRF: 看门狗复位标志 看门狗复位发生时置位。上电复位将使其清零,也可以通过写 ”0” 来xx。 * Bit 2 – BORF: 掉电检测复位标志 掉电检测复位发生时置位。上电复位将使其清零,也可以通过写 ”0” 来xx。 * Bit 1 – EXTRF: 外部复位标志 外部复位发生时置位。上电复位将使其清零,也可以通过写 ”0” 来xx。 * Bit 0 – PORF: 上电复位标志 上电复位发生时置位。只能通过写 ”0” 来xx。 为了使用这些复位标志来识别复位条件,用户应该尽早读取此寄存器的数据,然后将其复
Bit 7 6 5 4 3 2 1 0 – – – WDTOE WDE WDP2 WDP1 WDP0 * Bits 7..5 – Res: 保留位 ATmega16 保留位,读操作返回值为零。 * Bit 4 – WDTOE: 看门狗修改使能 清零 WDE 时必须置位 WDTOE ,否则不能禁止看门狗。一旦置位,硬件将在紧接的4 个 * Bit 3 – WDE: 使能看门狗 WDE 为 "1“ 时,看门狗使能,否则看门狗将被禁止。只有在WDTOE 为 "1“ 时WDE 才能清 1. 在同一个指令内对 WDTOE 和 WDE 写 "1“ ,即使WDE 已经为 "1“ 2. 在紧接的 4 个时钟周期之内对 WDE 写 "0” * Bits 2..0 – WDP2, WDP1, WDP0: 看门狗定时器预分频器 2, 1 和 0 WDP2、 WDP1 和 WDP0 决定看门狗定时器的预分频器,如 Table 17 所示。 Table 17. 看门狗定时器预分频器选项 VCC = 3.0V 时典型 VCC = 5.0V 时典型 0 0 0 16K (16,384) 17.1 ms 16.3 ms 0 0 1 32K (32,768) 34.3 ms 32.5 ms 0 1 0 64K (65,536) 68.5 ms 65 ms 0 1 1 128K (131,072) 0.14 s 0.13 s 1 0 0 256K (262,144) 0.27 s 0.26 s 1 0 1 512K (524,288) 0.55 s 0.52 s 1 1 0 1,024K (1,048,576) 1.1 s 1.0 s 1 1 1 2,048K (2,097,152) 2.2 s 2.1 s
#include<iom16v.h> /*修改看门狗使能时必须先要同时 置位WDTOE 和 WDE,然后对写0禁用看门狗*/ |