X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/27eb17cb934dcd3807bacdfe87f853e32f0cfdb4..77a9df36a77d2523dd2bc24fa17f9f04c6c175c5:/Projects/Webserver/Lib/uip/clock.c diff --git a/Projects/Webserver/Lib/uip/clock.c b/Projects/Webserver/Lib/uip/clock.c index 450714888..e71f7209d 100644 --- a/Projects/Webserver/Lib/uip/clock.c +++ b/Projects/Webserver/Lib/uip/clock.c @@ -1,38 +1,37 @@ -#include -#include -#include -#include -#include -#include - -#include "clock.h" - -//Counted time -volatile clock_time_t clock_datetime = 0; - -//Overflow interrupt -ISR(TIMER1_COMPA_vect) -{ - clock_datetime += 1; -} - -//Initialise the clock -void clock_init() -{ - OCR1A = ((F_CPU / 1024) / 100); - TCCR1B = ((1 << WGM12) | (1 << CS12) | (1 << CS10)); - TIMSK1 = (1 << OCIE1A); -} - -//Return time -clock_time_t clock_time() -{ - clock_time_t time; - - ATOMIC_BLOCK(ATOMIC_FORCEON) - { - time = clock_datetime; - } - - return time; -} +#include +#include +#include + +#include + +#include "clock.h" + +//Counted time +volatile clock_time_t clock_datetime = 0; + +//Overflow interrupt +ISR(TIMER1_COMPA_vect, ISR_BLOCK) +{ + clock_datetime += 1; +} + +//Initialise the clock +void clock_init() +{ + OCR1A = (((F_CPU / 1024) / 100) - 1); + TCCR1B = ((1 << WGM12) | (1 << CS12) | (1 << CS10)); + TIMSK1 = (1 << OCIE1A); +} + +//Return time +clock_time_t clock_time() +{ + clock_time_t time; + + GlobalInterruptDisable(); + time = clock_datetime; + GlobalInterruptEnable(); + + return time; +} +