keil里面的WATCH1和WATCH2
时间: 2023-11-06 21:06:06 浏览: 193
keil part1
在Keil中,WATCH1和WATCH2都是寄存器。WATCH1是一个8位的寄存器,WATCH2是一个16位的寄存器。这两个寄存器可以用来实现软件定时器,它们允许我们设置一个特定的时间间隔,并在计时器达到指定的时间后触发中断。
WATCH1寄存器的使用方式如下:
1. 设置WATCH1的值,可以通过将一个8位的值写入WATCH1寄存器来实现。例如:
```
WATCH1 = 0x7F; // 设置WATCH1的值为127
```
2. 启动WATCH1,可以通过将W1EN位设置为1来启动WATCH1。例如:
```
T2CON |= 0x40; // 启动WATCH1
```
3. 监测WATCH1是否到达计时器设定的值,可以设置WATCH1中断使能位W1IE为1,当WATCH1计时器达到设定值时,会触发WATCH1中断。例如:
```
T2IE |= 0x01; // 使能WATCH1中断
```
WATCH2寄存器的使用方式与WATCH1类似,只是WATCH2是一个16位的寄存器,可以实现更长的计时器。下面是一个使用WATCH2的例子:
```
WATCH2 = 0xFFFF; // 设置WATCH2的值为65535
T2CON |= 0x80; // 启动WATCH2
T2IE |= 0x02; // 使能WATCH2中断
```
阅读全文