mirror of
https://github.com/DarkFlippers/unleashed-firmware
synced 2024-11-24 05:23:06 +00:00
aff99a72e8
* SubGhz: fix variable types * SubGhz: CC1101 GPIO initialization optimization * SubGhz: return back gpio init * SubGhz: cleanup grammar in math and format doxygen comments Co-authored-by: あく <alleteam@gmail.com>
47 lines
No EOL
1.1 KiB
C
47 lines
No EOL
1.1 KiB
C
#pragma once
|
|
|
|
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct SubGhzBlockDecoder SubGhzBlockDecoder;
|
|
|
|
struct SubGhzBlockDecoder {
|
|
uint32_t parser_step;
|
|
uint32_t te_last;
|
|
uint64_t decode_data;
|
|
uint8_t decode_count_bit;
|
|
};
|
|
|
|
/**
|
|
* Add data bit when decoding.
|
|
* @param decoder Pointer to a SubGhzBlockDecoder instance
|
|
* @param bit data, 1bit
|
|
*/
|
|
void subghz_protocol_blocks_add_bit(SubGhzBlockDecoder* decoder, uint8_t bit);
|
|
|
|
/**
|
|
* Add data to_128 bit when decoding.
|
|
* @param decoder Pointer to a SubGhzBlockDecoder instance
|
|
* @param head_64_bit Pointer to a head_64_bit
|
|
* @param bit data, 1bit
|
|
*/
|
|
void subghz_protocol_blocks_add_to_128_bit(
|
|
SubGhzBlockDecoder* decoder,
|
|
uint8_t bit,
|
|
uint64_t* head_64_bit);
|
|
|
|
/**
|
|
* Getting the hash sum of the last randomly received parcel.
|
|
* @param decoder Pointer to a SubGhzBlockDecoder instance
|
|
* @return hash Hash sum
|
|
*/
|
|
uint8_t subghz_protocol_blocks_get_hash_data(SubGhzBlockDecoder* decoder, size_t len);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif |