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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/13/08 18:44
Modified:
  02/13/08 18:48

Read: times


 
#150763 - what simple ISR?
Responding to: ???'s previous message
The minimum ISR that "does something" is:
Timer1ISR:
   inc   Timer1Count
   reti

That's 5 cycles (including the "hardware call"), roughly 5.4us in your case, roughly 180kHz (leaving absolutely no room for anything reasonable to run).

On the other hand, the "vanilla" 12-clocker '51 at 11.0592MHz are the specs of the original 8051, around 27 years ago; and this is hopefully obsolete by now. The minimum reasonable option is a sixclocker at twice that crystal, i.e. 4 times faster; and there are numerous options up to the 100MHz SiLabs singleclocker, providing roughly 70-times that power.

JW

PS. The minimalist 16-bit tick counter ISR is:
Timer1ISR:
   djnz   Timer1CountLo,Timer1ISREnd
   dec    Timer1CountHi
Timer1ISREnd:
   reti

Figure out the cycle counts yourselves. Note that this still fits into the 8-byte slot between the ISR addresses.

I bet two beers or other beverages of your choice that your 40us tickcounter ISR is some bloody C nonsense... :-)


List of 12 messages in thread
TopicAuthorDate
Minimum ISR time            01/01/70 00:00      
   "bible" time?            01/01/70 00:00      
      details            01/01/70 00:00      
   re-expalin            01/01/70 00:00      
   Re: Minimum ISR time            01/01/70 00:00      
   what simple ISR?            01/01/70 00:00      
      You're right, it is bloody C            01/01/70 00:00      
         C and ISRs            01/01/70 00:00      
            Know thy tools            01/01/70 00:00      
               'using' can be counterproductive in SDCC            01/01/70 00:00      
         ISRs in C            01/01/70 00:00      
            Good point            01/01/70 00:00      

Back to Subject List