Fixing delay() to delay at least N milliseconds.

Fixing register name in micros() for ATmega8.
This commit is contained in:
David A. Mellis 2008-12-23 00:17:14 +00:00
parent 32b1245ee9
commit 9fc613ad6f
1 changed files with 7 additions and 1 deletions

View File

@ -59,8 +59,14 @@ unsigned long micros() {
cli();
t = TCNT0;
#ifdef TIFR0
if ((TIFR0 & _BV(TOV0)) && (t == 0))
t = 256;
#else
if ((TIFR & _BV(TOV0)) && (t == 0))
t = 256;
#endif
m = timer0_overflow_count;
SREG = oldSREG;
@ -72,7 +78,7 @@ void delay(unsigned long ms)
{
unsigned long start = millis();
while (millis() - start < ms)
while (millis() - start <= ms)
;
}