mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2025-12-13 13:09:49 +04:00
[FL-1156, FL-1249] Add IRDA encoder/decoder library (#451)
* Add cscope db generation * Add api-hal-irda, TIM2: HAL->LL * Add libirda: pwm decoding * Universal state machine * Add irda decoder library * Move IRDA capture to standalone tool * Add encoder/decoder samsung32, NEC, fix bugs * Port current App to new Irda lib * Fix clang format for test data * Port IRDA api-hal to f6 Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
21
lib/irda/irda_encoder_i.h
Normal file
21
lib/irda/irda_encoder_i.h
Normal file
@@ -0,0 +1,21 @@
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include "irda.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t bit1_mark;
|
||||
uint32_t bit1_space;
|
||||
uint32_t bit0_mark;
|
||||
uint32_t bit0_space;
|
||||
float duty_cycle;
|
||||
uint32_t carrier_frequency;
|
||||
} IrdaEncoderTimings;
|
||||
|
||||
|
||||
void irda_encode_byte(const IrdaEncoderTimings *timings, uint8_t data);
|
||||
void irda_encode_bit(const IrdaEncoderTimings *timings, bool bit);
|
||||
void irda_encode_space(const IrdaEncoderTimings *timings, uint32_t duration);
|
||||
void irda_encode_mark(const IrdaEncoderTimings *timings, uint32_t duration);
|
||||
|
||||
Reference in New Issue
Block a user