打印

小弟不才,欲喂狗而不可得!

[复制链接]
2754|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
梅川内酷|  楼主 | 2008-7-29 11:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
兄弟们来帮忙指点一二:因本人程序写的不入流,以至于找不到喂狗的地方。
主程序里有几个同级的while循环,每个都有可能循环30秒以上,以至于觉得在哪里喂狗都不合适。
想在定时中断里喂,但又怕到时主程序跑飞了,定时中断还正常。(有这种可能吗??)
拜请兄弟们支招!

相关帖子

沙发
coldra| | 2008-7-29 11:20 | 只看该作者

中断中喂狗是可以的

可以弄几个全局变量放在主程序需要监视的地方赋值,在定时中断中累减或累加,隔一定时间判断这些变量是否正常以决定是否喂狗

使用特权

评论回复
板凳
yewuyi| | 2008-7-29 11:38 | 只看该作者

主要是没穿好裤头引起的~~

主程序里有几个同级的while循环,每个都有可能循环30秒以上,以至于觉得在哪里喂狗都不合适。




为什么会有‘几个同级的while循环,每个都有可能循环30秒以上’!!!


想办法怎么CLRDOG,还不如想办法怎么改掉这结构……

使用特权

评论回复
地板
程序匠人| | 2008-7-29 12:56 | 只看该作者

‘几个同级的while循环,每个都有可能循环30秒以上’?

牛!


一般来说,主程序循环一圈超过30ms,匠人就要心惊肉跳了。

使用特权

评论回复
5
computer00| | 2008-7-29 16:24 | 只看该作者

在while循环里喂啊

使用特权

评论回复
6
wangkj| | 2008-7-29 16:30 | 只看该作者

这种狗吃得快也撑不死,多喂没关系。

使用特权

评论回复
7
梅川内酷|  楼主 | 2008-7-29 16:46 | 只看该作者

谢谢各位。这种结构不合理吗?

打个比方:
main()
{
    while(P1_1=1&P1_2=1){P1_4=1};//可能执行循环30秒以上
    while(P1_2=1&P1_3=1){P1_5=1};//可能执行循环30秒以上
    while(P1_1=1&P1_3=1){P1_6=1}; //可能执行循环30秒以上
   
}

使用特权

评论回复
8
梅川内酷|  楼主 | 2008-7-29 16:50 | 只看该作者

00, wangkj,我也想过在每个while循环里喂

但是要是程序死在某一个while里,那不就完蛋了?(有这种可能吗??)

使用特权

评论回复
9
yewuyi| | 2008-7-29 16:55 | 只看该作者

~~,这能合理吗?!

梅川内酷 发表于 2008-7-29 16:46 侃单片机 ←返回版面    

8楼: 谢谢各位。这种结构不合理吗? 

打个比方:
main()
{
    while(P1_1=1&P1_2=1){P1_4=1};//可能执行循环30秒以上
    while(P1_2=1&P1_3=1){P1_5=1};//可能执行循环30秒以上
    while(P1_1=1&P1_3=1){P1_6=1}; //可能执行循环30秒以上
   
}

 
 

使用特权

评论回复
10
dld2| | 2008-7-29 17:00 | 只看该作者

呵呵

使用特权

评论回复
11
computer00| | 2008-7-29 17:01 | 只看该作者

极度不合理。

使用特权

评论回复
12
goooog| | 2008-7-29 21:40 | 只看该作者

赶紧改主程序结构!

非常及其以及十分不合理。
这种结构通常是demo程序才有的,工程里不能这么干。

使用特权

评论回复
13
5880527| | 2008-7-29 22:00 | 只看该作者

拴大门口就是了嘛

就跟匠人姐姐说的,30ms都要吓几跳了,程序任何时候都不要死等,楼主这结构还不如不养狗的好

使用特权

评论回复
14
太阳之母| | 2008-7-30 03:39 | 只看该作者

嘿嘿

LZ这个结构,如果喂个猫,大概可以。

while(P1_1=1&P1_2=1)貌似写错了吧?
while( (P1_1==1) && ( P1_2==1) ) 也许该这样?

使用特权

评论回复
15
dld2| | 2008-7-30 08:21 | 只看该作者

喂蜗牛

这个反应比较慢

使用特权

评论回复
16
wangkj| | 2008-7-30 09:32 | 只看该作者

但是要是程序死在某一个while里,说明硬件没问题

是你带逻辑问题,就是你编程的bug。
狗只保证硬件故障后重新启动。

使用特权

评论回复
17
梅川内酷|  楼主 | 2008-7-30 09:41 | 只看该作者

谢谢各位。我全盘推到,改结构!

以前那个,也能跑。但我测试时,让24V直流有刷马达的电刷部分靠近MCU,就会死机。测试了几次,结果mcu都挂了!

使用特权

评论回复
18
xwj| | 2008-7-30 09:50 | 只看该作者

先剁碎了在说....

使用特权

评论回复
19
cecwxf| | 2012-1-6 09:43 | 只看该作者
.........

使用特权

评论回复
20
cjseng| | 2012-1-9 21:09 | 只看该作者
楼主程序结构存在严重问题,通常主程序除了必要的初始化,是啥也不干的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

139

帖子

0

粉丝