properly initialize DigitalSequence for NfcA

This commit is contained in:
g3gg0
2022-11-21 18:40:54 +01:00
parent 3165daf5a6
commit ae80d06e93
2 changed files with 7 additions and 4 deletions

View File

@@ -5,7 +5,7 @@
#include <stm32wbxx_ll_tim.h>
#include <math.h>
#define TAG "[DigitalSignal]"
#define TAG "DigitalSignal"
#pragma GCC optimize("O3,unroll-loops,Ofast")
@@ -299,7 +299,7 @@ bool digital_sequence_send_signal(DigitalSignal* signal) {
furi_hal_gpio_init(signal->gpio, GpioModeOutputPushPull, GpioPullNo, GpioSpeedVeryHigh);
if(!digital_signal_setup_dma(signal)) {
FURI_LOG_D(TAG, "Signal has no entries, aborting");
FURI_LOG_D(TAG, "digital_sequence_send_signal: Signal has no entries, aborting");
return false;
}
digital_signal_setup_timer();
@@ -311,7 +311,7 @@ bool digital_sequence_send_signal(DigitalSignal* signal) {
/* configure next polarities and timings */
if(!digital_signal_update_dma(signal)) {
FURI_LOG_D(TAG, "Signal has no entries, aborting");
FURI_LOG_D(TAG, "digital_sequence_send_signal: Signal has no entries, aborting");
return false;
}
}
@@ -329,7 +329,7 @@ bool digital_sequence_send(DigitalSequence* sequence, const GpioPin* gpio) {
DigitalSignal *sig = sequence->signals[signal_index];
if(!sig) {
FURI_LOG_D(TAG, "Signal at index %u, used at pos %lu is NULL, aborting", signal_index, pos);
FURI_LOG_D(TAG, "digital_sequence_send: Signal at index %u, used at pos %lu is NULL, aborting", signal_index, pos);
digital_signal_stop_timer();
digital_signal_stop_dma();
return false;

View File

@@ -103,6 +103,9 @@ NfcaSignal* nfca_signal_alloc() {
nfca_add_bit(nfca_signal->zero, false);
nfca_signal->tx_signal = digital_sequence_alloc(NFCA_SIGNAL_MAX_EDGES);
digital_sequence_set_signal(nfca_signal->tx_signal, 0, nfca_signal->zero);
digital_sequence_set_signal(nfca_signal->tx_signal, 1, nfca_signal->one);
return nfca_signal;
}