typedef struct
{
- uint8_t bit_duration:5;
- uint8_t ready:1;
- uint8_t sending:1;
- volatile uint8_t done:1;
+ uint8_t bit_duration;
uint8_t length;
uint8_t data[32];
uint8_t repeat_count;
uint8_t repeat_delay;
uint8_t final_delay;
+ uint8_t trigger_position;
+ uint8_t trigger_value;
} OutputPacket;
-extern OutputPacket packet;
-
void output_init(void);
-void clear_packet(void);
+OutputPacket *output_create_packet(void);
+OutputPacket *output_create_chained_packet(void);
+void output_send_packet(void);
+uint8_t output_get_trigger(void);
void output_set_power(uint8_t);
uint8_t output_is_power_on();
uint8_t output_command(const uint8_t *, uint8_t);