[FL-2198], [FL-2161] NFC emulation refactoring (#968)
* rfal: add state changed callback * furi_hal_nfc: add NFC-A emulation API * nfc: add emulation logger, refactor scenes * elements: fix text_box element * gui: fix text box module * nfc: remove unnecessary buffers * nfc: introduce emulation callback concept * nfc: format sources * bt settings: fix incorrect scene switch * bt settings: format sources * Debug: fix x2d import for python 3 * Gui: rename method name widget_clear to widget_reset * nfc: add nfca emulation handler * nfc: add global custom events enum * nfc: UID emulation Data -> Log * furi_hal_nfc: fix incorrect timings * u2f, badusb: widget_clear() -> widget_reset() Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
@@ -545,10 +545,13 @@ typedef struct {
|
||||
typedef void (*rfalUpperLayerCallback)(void);
|
||||
|
||||
/*! Callback to be executed before a Transceive */
|
||||
typedef void (*rfalPreTxRxCallback)(void);
|
||||
typedef void (*rfalPreTxRxCallback)(void* context);
|
||||
|
||||
/*! Callback to be executed after a Transceive */
|
||||
typedef void (*rfalPostTxRxCallback)(void);
|
||||
typedef void (*rfalPostTxRxCallback)(void* context);
|
||||
|
||||
/** Callback to be executed on each RFAL state change */
|
||||
typedef void (*RfalStateChangedCallback)(void* context);
|
||||
|
||||
/*******************************************************************************/
|
||||
/* ISO14443A */
|
||||
@@ -819,6 +822,19 @@ void rfalSetPreTxRxCallback(rfalPreTxRxCallback pFunc);
|
||||
*/
|
||||
void rfalSetPostTxRxCallback(rfalPostTxRxCallback pFunc);
|
||||
|
||||
/** Set RFAL state changed callback
|
||||
*
|
||||
* @param cb RfalStateChangedCallback instance
|
||||
* @param ctx pointer to context
|
||||
*/
|
||||
void rfal_set_state_changed_callback(RfalStateChangedCallback callback);
|
||||
|
||||
/** Set callback context
|
||||
*
|
||||
* @param ctx pointer to context
|
||||
*/
|
||||
void rfal_set_callback_context(void* context);
|
||||
|
||||
/*!
|
||||
*****************************************************************************
|
||||
* \brief RFAL Deinitialize
|
||||
@@ -1480,6 +1496,15 @@ ReturnCode rfalTransceiveBlockingTxRx(
|
||||
uint32_t flags,
|
||||
uint32_t fwt);
|
||||
|
||||
ReturnCode rfalTransceiveBitsBlockingTx(
|
||||
uint8_t* txBuf,
|
||||
uint16_t txBufLen,
|
||||
uint8_t* rxBuf,
|
||||
uint16_t rxBufLen,
|
||||
uint16_t* actLen,
|
||||
uint32_t flags,
|
||||
uint32_t fwt);
|
||||
|
||||
/*****************************************************************************
|
||||
* Listen Mode *
|
||||
*****************************************************************************/
|
||||
|
Reference in New Issue
Block a user