2022-02-25 18:22:58 +03:00
|
|
|
#include <furi_hal_infrared.h>
|
|
|
|
#include <infrared.h>
|
2021-08-06 00:11:35 +03:00
|
|
|
#include <stdint.h>
|
2021-07-16 19:43:54 +03:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/**
|
2022-02-25 18:22:58 +03:00
|
|
|
* Send message over INFRARED.
|
2021-07-16 19:43:54 +03:00
|
|
|
*
|
|
|
|
* \param[in] message - message to send.
|
|
|
|
* \param[in] times - number of times message should be sent.
|
|
|
|
*/
|
2022-02-25 18:22:58 +03:00
|
|
|
void infrared_send(const InfraredMessage* message, int times);
|
2021-07-16 19:43:54 +03:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Send raw data through infrared port.
|
|
|
|
*
|
|
|
|
* \param[in] timings - array of timings to send.
|
|
|
|
* \param[in] timings_cnt - timings array size.
|
|
|
|
* \param[in] start_from_mark - true if timings starts from mark,
|
|
|
|
* otherwise from space
|
|
|
|
*/
|
2022-02-25 18:22:58 +03:00
|
|
|
void infrared_send_raw(const uint32_t timings[], uint32_t timings_cnt, bool start_from_mark);
|
2021-07-16 19:43:54 +03:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Send raw data through infrared port, with additional settings.
|
|
|
|
*
|
|
|
|
* \param[in] timings - array of timings to send.
|
|
|
|
* \param[in] timings_cnt - timings array size.
|
|
|
|
* \param[in] start_from_mark - true if timings starts from mark,
|
|
|
|
* otherwise from space
|
|
|
|
* \param[in] duty_cycle - duty cycle to generate on PWM
|
|
|
|
* \param[in] frequency - frequency to generate on PWM
|
|
|
|
*/
|
2022-02-25 18:22:58 +03:00
|
|
|
void infrared_send_raw_ext(
|
2022-01-05 19:10:18 +03:00
|
|
|
const uint32_t timings[],
|
|
|
|
uint32_t timings_cnt,
|
|
|
|
bool start_from_mark,
|
|
|
|
uint32_t frequency,
|
|
|
|
float duty_cycle);
|
2021-07-16 19:43:54 +03:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|