aboutsummaryrefslogtreecommitdiff
path: root/lib/lufa/Projects/Webserver/Lib/uip/clock.c
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2017-07-07 11:55:23 -0400
committerJack Humbert <jack.humb@gmail.com>2017-07-07 11:55:23 -0400
commit8655d4f4948b2deef7844503c8d690f23ac1a062 (patch)
treeb2c6effc9d6cd5b5b43933a1e53b8bf17e9e82cf /lib/lufa/Projects/Webserver/Lib/uip/clock.c
parent1896c76a2928c96f9ab7947bec2ef8dd37623cff (diff)
parent60b30c036397cb5627fa374bb930794b225daa29 (diff)
downloadqmk_firmware-8655d4f4948b2deef7844503c8d690f23ac1a062.tar.gz
qmk_firmware-8655d4f4948b2deef7844503c8d690f23ac1a062.zip
Merge commit '60b30c036397cb5627fa374bb930794b225daa29' as 'lib/lufa'
Diffstat (limited to 'lib/lufa/Projects/Webserver/Lib/uip/clock.c')
-rw-r--r--lib/lufa/Projects/Webserver/Lib/uip/clock.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/lufa/Projects/Webserver/Lib/uip/clock.c b/lib/lufa/Projects/Webserver/Lib/uip/clock.c
new file mode 100644
index 000000000..e71f7209d
--- /dev/null
+++ b/lib/lufa/Projects/Webserver/Lib/uip/clock.c
@@ -0,0 +1,37 @@
1#include <stdint.h>
2#include <stdlib.h>
3#include <stdio.h>
4
5#include <LUFA/Common/Common.h>
6
7#include "clock.h"
8
9//Counted time
10volatile clock_time_t clock_datetime = 0;
11
12//Overflow interrupt
13ISR(TIMER1_COMPA_vect, ISR_BLOCK)
14{
15 clock_datetime += 1;
16}
17
18//Initialise the clock
19void clock_init()
20{
21 OCR1A = (((F_CPU / 1024) / 100) - 1);
22 TCCR1B = ((1 << WGM12) | (1 << CS12) | (1 << CS10));
23 TIMSK1 = (1 << OCIE1A);
24}
25
26//Return time
27clock_time_t clock_time()
28{
29 clock_time_t time;
30
31 GlobalInterruptDisable();
32 time = clock_datetime;
33 GlobalInterruptEnable();
34
35 return time;
36}
37