summaryrefslogtreecommitdiffstats
path: root/app/ticker.c
diff options
context:
space:
mode:
Diffstat (limited to 'app/ticker.c')
-rw-r--r--app/ticker.c32
1 files changed, 26 insertions, 6 deletions
diff --git a/app/ticker.c b/app/ticker.c
index d054317..cdab461 100644
--- a/app/ticker.c
+++ b/app/ticker.c
@@ -6,6 +6,7 @@ volatile uint32_t ticks;
static uint32_t scale = 7;
+
void
delay_us (uint32_t d)
{
@@ -16,11 +17,17 @@ delay_us (uint32_t d)
}
}
+static void
+s_tick_handler (void)
+{
+ adc_tick ();
+ state_tick ();
+}
void
sys_tick_handler (void)
{
- //uint8_t d;
+ static int s_count;
if (delay_ms_count)
delay_ms_count--;
@@ -28,9 +35,22 @@ sys_tick_handler (void)
ticks++;
led_tick ();
+#ifndef SLIM
lcd_tick ();
- keypad_tick ();
- code_tick();
+#endif
+
+ usb_tick();
+
+#if 0
+ s_count++;
+ if (s_count >= 1000)
+ {
+ s_count = 0;
+ s_tick_handler ();
+ }
+#else
+ s_tick_handler ();
+#endif
}
@@ -60,9 +80,9 @@ ticker_init (void)
/*Start periodic timer */
systick_set_clocksource (STK_CSR_CLKSOURCE_AHB_DIV8);
- /* 48MHz / 8 = > 6Mhz */
- systick_set_reload (6000);
- /* 6MHz / 6000 => 1kHz */
+ /* 24MHz / 8 = > 3Mhz */
+ systick_set_reload (3000);
+ /* 3MHz / 3000 => 1kHz */
systick_interrupt_enable ();
systick_counter_enable ();