naipeng 发表于 2009-8-4 21:36:46

问问题的来了。CVAVR的自己带的delay.h库。是不是里面喂狗了。望各位前辈给指点一下

近期研读马老师的《AVR单片机嵌入式系统原理与应用实践》。的确是不可多得的好书啊。要是能听马老师的课是多么幸福的事啊、!
刚刚从马潮专栏明白了EEPROM。
现在看watch dog。出了点问题。望各位前辈给指点一下,(用的CVAVR编译器)
我在主函数里面。写的while(1){delay(); PORTD=table;}省略delay函数,是一个500ms的延时函数
意思是0.5S加一个数,用PD显示。没有喂狗,加到3左右会从0开始加。表示复位了。

当我用delay库时。写成while(1){delay_ms(500);PORTD=table;}把自己写的delay删了后。便不会复位了,
一直自己向上加。其它都没有改,只是改了改delay。
不知道我表达清楚了没有。望前辈给指点一下。

naipeng 发表于 2009-8-4 21:40:28

在线人数907啊。是不是 我问的太简单了,没有回答。我是在线等的。

naipeng 发表于 2009-8-4 21:54:59

为什么呢

gongkailin 发表于 2009-8-4 22:07:22

CV的delay_ms(500);函数里有喂狗的功能

naipeng 发表于 2009-8-5 10:11:32

是我懒了。查了查cvavr的库函数介绍。的确有原话:1ms清一次看门狗。

machao 发表于 2009-8-6 01:08:53

如果是新手学习,先不要使用看门狗。

我在设计产品过程中,也是先不用狗的。是等整个系统调试成功后,再增加看门狗功能的。

JAMESKING 发表于 2009-8-6 09:24:14

我个人看法与马老师不一样。我的看法是无论什么情况下,都不要加看门狗,硬件的或者软件的看门狗都不要加。

hushaoxin 发表于 2009-8-6 09:35:46

ls,看是做什么东西吧,比如我现在做的这个系统,单片机一复位马上就砰、砰,炸管子,硬件决定了单片机不能复位。

machao 发表于 2009-8-6 14:49:36

同意【6楼】JAMESKING的观点。现在我设计的实际东西基本上是不用任何狗的。在硬件设计、PCB板设计、软件设计要确保系统的稳定。

狗的使用只是在没有其它办法下,唯一的、虎人的补救的方法了,而且也不是万能的。

记得最后一次用狗是N年前为了一个设备要通过电磁干扰测试检测,为了保证不死机,一次通过(一次检测要花很多的),检测样机的代码中使用了狗做保险。正式产品根本不用狗,没出过问题。

高手很少使用狗,但现在使用狗的太多了。

我现在更多使用的是掉电检测功能,而不是狗。

naipeng 发表于 2009-8-7 10:44:32

现在不是做东西,是学东西。以后用不用不知道,现在先学学,用到了有个印象。无论怎么样,还是谢谢大家的帮助。
页: [1]
查看完整版本: 问问题的来了。CVAVR的自己带的delay.h库。是不是里面喂狗了。望各位前辈给指点一下