2021-10-03 10:36:05 +00:00
|
|
|
/**
|
2022-01-05 16:10:18 +00:00
|
|
|
* @file furi_hal_ibutton.h
|
2021-10-03 10:36:05 +00:00
|
|
|
* iButton HAL API
|
|
|
|
*/
|
|
|
|
|
2021-08-08 18:03:25 +00:00
|
|
|
#pragma once
|
2021-10-03 10:36:05 +00:00
|
|
|
|
2021-08-08 18:03:25 +00:00
|
|
|
#include <stdbool.h>
|
2022-03-25 10:33:01 +00:00
|
|
|
#include <stdint.h>
|
2021-08-08 18:03:25 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2022-03-25 10:33:01 +00:00
|
|
|
typedef void (*FuriHalIbuttonEmulateCallback)(void* context);
|
|
|
|
|
|
|
|
/** Initialize */
|
|
|
|
void furi_hal_ibutton_init();
|
|
|
|
|
|
|
|
void furi_hal_ibutton_emulate_start(
|
|
|
|
uint32_t period,
|
|
|
|
FuriHalIbuttonEmulateCallback callback,
|
|
|
|
void* context);
|
|
|
|
|
|
|
|
void furi_hal_ibutton_emulate_set_next(uint32_t period);
|
|
|
|
|
|
|
|
void furi_hal_ibutton_emulate_stop();
|
|
|
|
|
2021-08-08 18:03:25 +00:00
|
|
|
void furi_hal_ibutton_start();
|
|
|
|
|
|
|
|
void furi_hal_ibutton_stop();
|
|
|
|
|
|
|
|
void furi_hal_ibutton_pin_low();
|
|
|
|
|
|
|
|
void furi_hal_ibutton_pin_high();
|
|
|
|
|
|
|
|
bool furi_hal_ibutton_pin_get_level();
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
2022-03-25 10:33:01 +00:00
|
|
|
#endif
|