完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在设计软体时,大多单片机都设有看门狗,需要在软体适当的位置去喂 狗,以防止软体复位和软体进入死循环,如何适当的喂狗,即如何精确判定 软体的运行时间? 大多数单片机都有看门狗定时器功能(WDT,Watch Dog timer)以避免程序跑错。HOLTEK 有一款基本 I/O 型单片机--HT48R05A-1,我们就以它为例做 个说明吧。 首先了解一下 WDT 的基本结构,它其实是一个定时器,所谓的喂狗是指将 此定时器清零。喂狗分为软件和硬件两种方法。软件喂狗就是用指令来清除 WDT,即 CLR WDT;硬件喂狗就是硬件复位 RESET。当定时器溢出时,会造 成 WDT 复位,也就是我们常说的看门狗起作用了。在程序正常执行时,我们并 不希望 WDT 复位,所以要在看门狗溢出之前使用软件指令喂狗,也就是要计算 WDT 相隔多久时间会溢出一次。HT48R05A-1 的 WDT 溢出时间计算公式是: 256*Div*Tclock。其中 Div 是指 wdt 预分频数 1~128,Tclock 是指时钟来源周期。 如果使用内部 RC 振荡作为 WDT 的时钟来源(RC 时钟周期为 65us/5V),最大 的 WDT 溢出时间为 2。1 秒。 当我们得到了 WDT 溢出时间 Twdt 后,一般选择在 Twdt/2 左右的时间进行 喂狗,以保证看门狗不会溢出,同时喂狗次数不会过多。 软件运行时间是根据不同的运行路线来决定的,如果可以预见软件运行的路 线,那么可以根据 T=n*T1 来计算软件的运行时间。n 是指运行的机器周期数, T1 是指机器周期。HOLTEK 单片机是 RISC 结构,大部分指令由一个机器周期 组成,只需要知道软件运行了多少条指令,就可以算出运行时间了。HOLTEK 的编译软件 HT-IDE3000 中,就有计算运行时间的工具。但是对于 CISC 结构的 单片机,一条指令可以由若干个机器周期组成,那么就需要根据具体执行的指令 来计算了。 |
|
相关推荐
|
|
《DNESP32S3使用指南-IDF版_V1.6》第三十章 DHT11数字温湿度传感器
122 浏览 0 评论
565 浏览 0 评论
【敏矽微ME32G070开发板免费体验】之原厂2812测试例程解析
772 浏览 0 评论
948 浏览 2 评论
《DNESP32S3使用指南-IDF版_V1.6》第二十六章 INFRARED_RECEPTION实验
658 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12043 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 04:29 , Processed in 0.570295 second(s), Total 46, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号