Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Thread Closed: Issue successfully resolved

???
07/22/04 02:44
Read: times


 
Msg Score: +1
 +1 Good Answer/Helpful
#74653 - RE: WD in lengthy functions
Responding to: ???'s previous message
After reading posts, I concluded that conditional calling wd updating routine from a timer ISR as originally suggested by Oleg Sergeev and Graham Cole is somehow better than conditional calling of it from body of a lengthy function. Any objection ? calling this routine from a timer ISR brings a new possibility :

Earlier Donald catto said :

2) They are a potential bug. In a large or complex program it can be extremely difficult to time profile all possible paths of execution to ensure the watchdog is strobed frequently enough.

3) They are a maintenance nightmare. Every time the code is modified see (2).


And I think he is right. but one thing can be done in timer isr but with extreme care To alleviate that problem to some degree. It may be controversial and I never try it but it just came to my mind and I’ll appreciate your opinions. In timer isr the code always updates the wd unless it has been explicitly told by a flag not to do that. This scheme seems a little easier than the reverse scheme because the programmer do not need to be worry about all execution paths and the possibility of how marginally cpu survived from a reset in some deep execution paths
and may not survive in some other still normal conditions.
But the programmer explicitly invalidate the flag before all loops, mathematical calculations, complex conditional statements that depend on external conditions and immediately validate the flag after these bottlenecks has been passed.

Thank you very much


List of 55 messages in thread
TopicAuthorDate
WD in lengthy functions            01/01/70 00:00      
   RE: WD in lengthy functions            01/01/70 00:00      
      RE: WD in lengthy functions            01/01/70 00:00      
         Watchdogs in general            01/01/70 00:00      
            RE: Watchdogs in general            01/01/70 00:00      
               RE: Watchdogs in general            01/01/70 00:00      
                  RE: Watchdogs in general            01/01/70 00:00      
                     RE: Watchdogs in general            01/01/70 00:00      
                  RE: Watchdogs in general            01/01/70 00:00      
                     RE: Watchdogs in general            01/01/70 00:00      
                        RE: Watchdogs in general            01/01/70 00:00      
                           RE: Watchdogs in general            01/01/70 00:00      
            RE: Watchdogs in general            01/01/70 00:00      
               RE: Watchdogs in general            01/01/70 00:00      
         RE: WD in lengthy functions            01/01/70 00:00      
      RE: WD in lengthy functions            01/01/70 00:00      
         RE: WD in lengthy functions            01/01/70 00:00      
            RE: WD in lengthy functions            01/01/70 00:00      
               RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
                     RE: WD in lengthy functions            01/01/70 00:00      
                        RE: WD in lengthy functions            01/01/70 00:00      
                           RE: WD in lengthy functions            01/01/70 00:00      
                              RE: WD in lengthy functions            01/01/70 00:00      
               RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
                     RE: WD in lengthy functions            01/01/70 00:00      
         RE: WD in lengthy functions            01/01/70 00:00      
      RE: WD in lengthy functions            01/01/70 00:00      
         RE: infinite loop error trapping            01/01/70 00:00      
            RE: infinite loop error trapping            01/01/70 00:00      
               RE: infinite loop error trapping            01/01/70 00:00      
                  RE: infinite loop error trapping            01/01/70 00:00      
                     RE: infinite loop error trapping            01/01/70 00:00      
         RE: WD in lengthy functions            01/01/70 00:00      
            RE: WD in lengthy functions            01/01/70 00:00      
               RE: adding a detail            01/01/70 00:00      
            RE: WD in lengthy functions            01/01/70 00:00      
               RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
      RE: WD in lengthy functions            01/01/70 00:00      
         RE: WD in lengthy functions            01/01/70 00:00      
            RE: WD in lengthy functions            01/01/70 00:00      
               RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
                     RE: WD in lengthy functions            01/01/70 00:00      
                        RE: WD in lengthy functions            01/01/70 00:00      
                           RE: WD in lengthy functions            01/01/70 00:00      
               RE: WD in lengthy functions            01/01/70 00:00      
                  RE: WD in lengthy functions            01/01/70 00:00      
                     RE: WD in lengthy functions            01/01/70 00:00      
                        RE: WD in lengthy functions            01/01/70 00:00      
                           RE: WD in lengthy functions            01/01/70 00:00      
   RE: WD in lengthy functions            01/01/70 00:00      

Back to Subject List