2021-06-30 00:19:20 +03:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "subghz_protocol_common.h"
|
|
|
|
|
|
|
|
typedef struct SubGhzProtocolCame SubGhzProtocolCame;
|
|
|
|
|
2021-07-02 16:25:49 +03:00
|
|
|
/** Allocate SubGhzProtocolCame
|
|
|
|
*
|
|
|
|
* @return SubGhzProtocolCame*
|
|
|
|
*/
|
2021-06-30 00:19:20 +03:00
|
|
|
SubGhzProtocolCame* subghz_protocol_came_alloc();
|
|
|
|
|
2021-07-02 16:25:49 +03:00
|
|
|
/** Free SubGhzProtocolCame
|
|
|
|
*
|
|
|
|
* @param instance
|
|
|
|
*/
|
2021-06-30 00:19:20 +03:00
|
|
|
void subghz_protocol_came_free(SubGhzProtocolCame* instance);
|
|
|
|
|
2021-07-02 16:25:49 +03:00
|
|
|
/** Sends the key on the air
|
|
|
|
*
|
|
|
|
* @param instance - SubGhzProtocolCame instance
|
|
|
|
* @param key - key send
|
|
|
|
* @param bit - count bit key
|
|
|
|
* @param repeat - repeat send key
|
|
|
|
*/
|
2021-06-30 00:19:20 +03:00
|
|
|
void subghz_protocol_came_send_key(SubGhzProtocolCame* instance, uint64_t key, uint8_t bit, uint8_t repeat);
|
|
|
|
|
2021-07-07 22:49:45 +03:00
|
|
|
/** Reset internal state
|
|
|
|
* @param instance - SubGhzProtocolCame instance
|
|
|
|
*/
|
|
|
|
void subghz_protocol_came_reset(SubGhzProtocolCame* instance);
|
|
|
|
|
2021-07-02 16:25:49 +03:00
|
|
|
/** Parse accepted duration
|
|
|
|
*
|
|
|
|
* @param instance - SubGhzProtocolCame instance
|
2021-07-07 22:49:45 +03:00
|
|
|
* @param data - LevelDuration level_duration
|
2021-07-02 16:25:49 +03:00
|
|
|
*/
|
2021-07-13 14:47:27 +03:00
|
|
|
void subghz_protocol_came_parse(SubGhzProtocolCame* instance, bool level, uint32_t duration);
|