]> git.tdb.fi Git - model-railway-devices.git/blobdiff - arducontrol/output.c
Move output to a higher priority timer
[model-railway-devices.git] / arducontrol / output.c
index 4b662960977e9b5762e237b96b8fe7be57ac4960..b862ac3f75520c9051fddb90961c511436448e61 100644 (file)
@@ -1,5 +1,5 @@
 #include <avr/io.h>
-#include "interface.h"
+#include "commands.h"
 #include "output.h"
 #include "timer.h"
 
@@ -13,15 +13,15 @@ uint8_t out_time;
 uint8_t out_data;
 uint8_t delay_time;
 
-void output_init()
+void output_init(void)
 {
        DDRD = (DDRD&0xF3)|0x0C;
        PORTD &= ~BIT(ENABLE);
 
-       timer_start_hz(0, 80000, 1);
+       timer_start_hz(2, 80000, 1);
 }
 
-void clear_packet()
+void clear_packet(void)
 {
        packet.ready = 0;
        packet.sending = 0;
@@ -36,7 +36,7 @@ void output_set_power(uint8_t p)
                PORTD &= ~BIT(ENABLE);
 }
 
-uint8_t output_command()
+uint8_t output_command(const uint8_t *cmd_buf, uint8_t cmd_length)
 {
        if(cmd_buf[0]==POWER_ON || cmd_buf[0]==POWER_OFF)
        {
@@ -51,7 +51,7 @@ uint8_t output_command()
        return COMMAND_OK;
 }
 
-static inline void output_tick()
+static inline void output_tick(void)
 {
        if(delay_time && --delay_time)
                return;
@@ -106,4 +106,4 @@ static inline void output_tick()
        }
 }
 
-TIMER_SET_CALLBACK(0, output_tick)
+TIMER_SET_CALLBACK(2, output_tick)