1.如果在switch case中,需等候I/O腳位變化,而決定是否往下執行,
可以把while(status)改寫成if (! status) then step++,避免程式卡在while loop,浪費時間,step中的watchdog也可以不需要去控制。
2.避免有以下寫法:
switch (step)
{
case 0:
WDT_stop();
.......
step++;
break;
case 1:
.......
step++;
break;
case 2:
......
WDT_restart();
break;
}
在step0到1的過程當中,WDT已經在main()又被開啟了,因此程式容易有不可預期的情形產生。
沒有留言:
張貼留言