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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
10/25/05 14:09
Read: times


 
#102912 - delay in C, yes !
Responding to: ???'s previous message
It is also possible to write a working delay in C:

#include <reg51.h>

// T0 must be running in mode 1


unsigned int read_t0_on_the_fly( void )
{
  unsigned char tl, th;
  th = TH0;
  tl = TL0;
  if( (tl & 0x80) == 0 )
    th = TH0;
  return tl | th << 8;
}


void delay_us( unsigned int t )         // 20 ... 60000us at 12MHz
{
  unsigned int d = read_t0_on_the_fly();

  while( read_t0_on_the_fly() - d < t );
}



Peter


List of 17 messages in thread
TopicAuthorDate
passing parameters from c to assembly            01/01/70 00:00      
   RTFM            01/01/70 00:00      
   What Compiler? They are all differerent            01/01/70 00:00      
   Why assembly???            01/01/70 00:00      
      some things can not be done in C            01/01/70 00:00      
         Yes you can...            01/01/70 00:00      
            Not true            01/01/70 00:00      
            eliminated            01/01/70 00:00      
            bull!            01/01/70 00:00      
         delay in C, yes !            01/01/70 00:00      
         More on 'C' delay loops...            01/01/70 00:00      
   sure, when you use a timer            01/01/70 00:00      
   Total Malund!            01/01/70 00:00      
      dear Russell re "bull"            01/01/70 00:00      
         Malund Bull...            01/01/70 00:00      
   Public variable            01/01/70 00:00      
   Examples...            01/01/70 00:00      

Back to Subject List