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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
Christoph Franck
01/07/08 05:55
Read: 1018 times
Sindelfingen
Germany


 
Msg Score: +3
 +3 Good Answer/Helpful
#149105 - No, it won't.
Responding to: Jerry Black's previous message
void delay_t(unsigned int Delay)
{
  TH1=0;
  TL1=0;
  while((int(TH1<<8)+int(TL1))<Delay);
  
}


This might appear to work at first, but for certain values of Delay you will start running into nasty atomicity issues, since you are reading TH1 and TL1 for two different points in time.


List of 27 messages in thread
TopicAuthorDate
Number of CPU cycle for 8051 function call      Jae-yong Kim      01/04/08 01:03      
   Do it in assembler      Andy Neil      01/04/08 03:00      
   Delay functions      Andy Neil      01/04/08 03:07      
   A related trick        Russ Cooper      01/04/08 05:56      
      Offset      Andy Neil      01/04/08 07:03      
         Offset      Russ Cooper      01/04/08 07:23      
            Sure      Andy Neil      01/04/08 07:40      
               Over Drive?      Neil Kurzman      01/04/08 10:20      
      a refinement      Erik Malund      01/04/08 07:58      
      NOPs are so bad waste of space...      Jan Waclawek      01/04/08 08:51      
         waste of space... waste of time      Erik Malund      01/04/08 09:24      
            fixed delay      Jan Waclawek      01/04/08 09:54      
               Variable delay      Russ Cooper      01/04/08 11:04      
                  determinism of the cache      Jan Waclawek      01/04/08 11:36      
               there are no cache misses in 'linear code'      Erik Malund      01/04/08 11:16      
                  I got only ONE cache miss...      Jan Waclawek      01/04/08 11:39      
      Old Keil Thread      Jon Ward      01/06/08 18:29      
   What about a Delay like this.      Jerry Black      01/07/08 05:31      
      No, it won't.        Christoph Franck      01/07/08 05:55      
         Ok.      Jerry Black      01/07/08 07:08      
         also      Erik Malund      01/08/08 06:47      
      Also ...      Christoph Franck      01/08/08 07:01      
         Actually...      Brett Wallace      01/08/08 08:02      
            will.      Jerry Black      01/08/08 08:21      
               ANSI C      Maarten Brock      01/10/08 05:58      
                  Keil option: Disable ANSI casts      Andy Neil      01/10/08 07:08      
         typo.      Jerry Black      01/08/08 08:24      

Back to Subject List