irda_encoder_i.h 562 B

123456789101112131415161718192021
  1. #pragma once
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #include "irda.h"
  5. typedef struct {
  6. uint32_t bit1_mark;
  7. uint32_t bit1_space;
  8. uint32_t bit0_mark;
  9. uint32_t bit0_space;
  10. float duty_cycle;
  11. uint32_t carrier_frequency;
  12. } IrdaEncoderTimings;
  13. void irda_encode_byte(const IrdaEncoderTimings *timings, uint8_t data);
  14. void irda_encode_bit(const IrdaEncoderTimings *timings, bool bit);
  15. void irda_encode_space(const IrdaEncoderTimings *timings, uint32_t duration);
  16. void irda_encode_mark(const IrdaEncoderTimings *timings, uint32_t duration);