|
实现方法很简单:即BM8563的INT脚接到MCU的复位脚,接上拉电阻,利用BM8563的定时器时间到时INT输出一个脉冲达到复位单片机。
直接上代码
- //定时器时间到时会输出INT脉冲,INT接到MCU复位脚,以此起到硬件看门狗的作用
- void bm8563_timer_config(void)
- {
- uint8_t val;
- val = 0x11;//配置为INT为脉冲输出且使能定时器功能
- BM8563_I2C_WRITE(BM8563_ADDR, BM8563_REG_CTRL_2, &val, 1);
- val = 0x82;//使能定时器,周期设为1HZ
- BM8563_I2C_WRITE(BM8563_ADDR, BM8563_REG_TIMER, &val, 1);
- val = BM8563_FEED_S;//定时时间可设为0-255
- BM8563_I2C_WRITE(BM8563_ADDR, BM8563_REG_TIMER_V, &val, 1);
- }
- //定时器需要定时的复位
- void bm8563_timer_feed(void)
- {
- uint8_t val;
- val = BM8563_FEED_S;//软件定时重置倒计时以免复位
- BM8563_I2C_WRITE(BM8563_ADDR, BM8563_REG_TIMER_V, &val, 1);
- }
复制代码
|
|